1 # ----------------------------------------------------------------------------
\r
2 # Root CMake file for OpenCV
\r
4 # From the off-tree build directory, invoke:
\r
5 # $ cmake <PATH_TO_OPENCV_ROOT>
\r
8 # - OCT-2008: Initial version <joseluisblancoc@gmail.com>
\r
10 # ----------------------------------------------------------------------------
\r
12 set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true)
\r
14 # it _must_ go before PROJECT(OpenCV) in order to work
\r
15 if (NOT CMAKE_INSTALL_PREFIX)
\r
17 set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR} CACHE INTERNAL "" FORCE)
\r
19 set(CMAKE_INSTALL_PREFIX "/usr" CACHE INTERNAL "" FORCE)
\r
23 set(CMAKE_CONFIGURATION_TYPES "Debug;Release" CACHE STRING "Configs" FORCE)
\r
24 set(CMAKE_C_FLAGS_MINSIZEREL "" CACHE INTERNAL "" FORCE)
\r
25 set(CMAKE_C_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "" FORCE)
\r
26 set(CMAKE_CXX_FLAGS_MINSIZEREL "" CACHE INTERNAL "" FORCE)
\r
27 set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "" FORCE)
\r
28 set(CMAKE_EXE_LINKER_FLAGS_MINSIZEREL "" CACHE INTERNAL "" FORCE)
\r
29 set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "" FORCE)
\r
30 set(CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL "" CACHE INTERNAL "" FORCE)
\r
31 set(CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "" FORCE)
\r
32 set(CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL "" CACHE INTERNAL "" FORCE)
\r
33 set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "" FORCE)
\r
37 cmake_minimum_required(VERSION 2.4)
\r
40 set(CMAKE_USE_RELATIVE_PATHS ON CACHE INTERNAL "" FORCE)
\r
43 #set(CMAKE_C_COMPILER "/opt/BullseyeCoverage/bin/gcc")
\r
44 #set(CMAKE_CXX_COMPILER "/opt/BullseyeCoverage/bin/g++")
\r
45 #set(CMAKE_CXX_COMPILER_INIT "/opt/BullseyeCoverage/bin/gcc")
\r
47 # --------------------------------------------------------------
\r
48 # Indicate CMake 2.7 and above that we don't want to mix relative
\r
49 # and absolute paths in linker lib lists.
\r
50 # Run "cmake --help-policy CMP0003" for more information.
\r
51 # --------------------------------------------------------------
\r
52 if(COMMAND cmake_policy)
\r
53 cmake_policy(SET CMP0003 NEW)
\r
56 # ----------------------------------------------------------------------------
\r
57 # Current version number:
\r
58 # ----------------------------------------------------------------------------
\r
59 set(OPENCV_VERSION "2.0.0")
\r
61 string(REGEX MATCHALL "[0-9]" OPENCV_VERSION_PARTS "${OPENCV_VERSION}")
\r
63 list(GET OPENCV_VERSION_PARTS 0 OPENCV_VERSION_MAJOR)
\r
64 list(GET OPENCV_VERSION_PARTS 1 OPENCV_VERSION_MINOR)
\r
65 list(GET OPENCV_VERSION_PARTS 2 OPENCV_VERSION_PATCH)
\r
67 set(OPENCV_SOVERSION "${OPENCV_VERSION_MAJOR}.${OPENCV_VERSION_MINOR}")
\r
71 set(OPENCV_DLLVERSION "${OPENCV_VERSION_MAJOR}${OPENCV_VERSION_MINOR}${OPENCV_VERSION_PATCH}")
\r
72 set(OPENCV_DEBUG_POSTFIX d)
\r
75 #set(OPENCV_DLLVERSION "${OPENCV_VERSION_MAJOR}${OPENCV_VERSION_MINOR}${OPENCV_VERSION_PATCH}")
\r
76 set(OPENCV_DLLVERSION "")
\r
77 set(OPENCV_DEBUG_POSTFIX)
\r
81 # ----------------------------------------------------------------------------
\r
82 # Variables for cvconfig.h.cmake
\r
83 # ----------------------------------------------------------------------------
\r
84 set(PACKAGE "opencv")
\r
85 set(PACKAGE_BUGREPORT "opencvlibrary-devel@lists.sourceforge.net")
\r
86 set(PACKAGE_NAME "opencv")
\r
87 set(PACKAGE_STRING "${PACKAGE} ${OPENCV_VERSION}")
\r
88 set(PACKAGE_TARNAME "${PACKAGE}")
\r
89 set(PACKAGE_VERSION "${OPENCV_VERSION}")
\r
91 # ----------------------------------------------------------------------------
\r
92 # Autodetect if we are in a SVN repository
\r
93 # ----------------------------------------------------------------------------
\r
94 find_program(SVNVERSION_PATH svnversion)
\r
95 mark_as_advanced(force SVNVERSION_PATH)
\r
97 message(STATUS "Extracting svn version, please wait...")
\r
98 execute_process(COMMAND ${SVNVERSION_PATH} -n ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE SVNVERSION_RESULT)
\r
100 if(SVNVERSION_RESULT MATCHES "exported")
\r
101 # This is NOT a svn repository:
\r
102 set(OPENCV_SVNVERSION "")
\r
104 set(OPENCV_SVNVERSION " svn:${SVNVERSION_RESULT}")
\r
107 message(STATUS "SVNVERSION: ${OPENCV_SVNVERSION}")
\r
109 # We don't have svnversion:
\r
110 set(OPENCV_SVNVERSION "")
\r
113 # ----------------------------------------------------------------------------
\r
114 # Detect GNU version:
\r
115 # ----------------------------------------------------------------------------
\r
116 if(CMAKE_COMPILER_IS_GNUCXX)
\r
117 execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version
\r
118 OUTPUT_VARIABLE CMAKE_OPENCV_GCC_VERSION_FULL
\r
119 OUTPUT_STRIP_TRAILING_WHITESPACE)
\r
121 # Typical output in CMAKE_OPENCV_GCC_VERSION_FULL: "c+//0 (whatever) 4.2.3 (...)"
\r
122 # Look for the version number
\r
123 string(REGEX MATCH "[0-9].[0-9].[0-9]" CMAKE_GCC_REGEX_VERSION "${CMAKE_OPENCV_GCC_VERSION_FULL}")
\r
125 # Split the three parts:
\r
126 string(REGEX MATCHALL "[0-9]" CMAKE_OPENCV_GCC_VERSIONS "${CMAKE_GCC_REGEX_VERSION}")
\r
128 list(GET CMAKE_OPENCV_GCC_VERSIONS 0 CMAKE_OPENCV_GCC_VERSION_MAJOR)
\r
129 list(GET CMAKE_OPENCV_GCC_VERSIONS 1 CMAKE_OPENCV_GCC_VERSION_MINOR)
\r
131 set(CMAKE_OPENCV_GCC_VERSION ${CMAKE_OPENCV_GCC_VERSION_MAJOR}${CMAKE_OPENCV_GCC_VERSION_MINOR})
\r
132 message(STATUS "Detected version of GNU GCC: ${CMAKE_OPENCV_GCC_VERSION}")
\r
135 # ----------------------------------------------------------------------------
\r
136 # CHECK FOR SYSTEM LIBRARIES, OPTIONS, ETC..
\r
137 # ----------------------------------------------------------------------------
\r
139 # Build/install (or not) some apps:
\r
140 # ===================================================
\r
141 set(BUILD_EXAMPLES OFF CACHE BOOL "Build all examples")
\r
142 set(INSTALL_C_EXAMPLES OFF CACHE BOOL "Install C examples")
\r
143 set(INSTALL_PYTHON_EXAMPLES OFF CACHE BOOL "Install Python examples")
\r
144 set(INSTALL_OCTAVE_EXAMPLES OFF CACHE BOOL "Install Octave examples")
\r
147 # ===================================================
\r
148 set(BUILD_TESTS ON CACHE BOOL "Build tests")
\r
150 # Build 3rdparty libraries under unix
\r
151 # ===================================================
\r
153 set(OPENCV_BUILD_3RDPARTY_LIBS TRUE CACHE BOOL "Build 3rd party libraries")
\r
155 set(OPENCV_BUILD_3RDPARTY_LIBS FALSE CACHE BOOL "Build 3rd party libraries")
\r
158 include(OpenCVPCHSupport.cmake REQUIRED)
\r
161 include(OpenCVFindPkgConfig.cmake OPTIONAL)
\r
162 include(CheckFunctionExists)
\r
163 include(CheckIncludeFile)
\r
167 set(DEFAULT_ENABLE_OPENMP ON)
\r
169 set(DEFAULT_ENABLE_OPENMP OFF)
\r
171 set(ENABLE_OPENMP ${DEFAULT_ENABLE_OPENMP} CACHE BOOL "")
\r
173 if(CMAKE_COMPILER_IS_GNUCXX)
\r
174 set(ENABLE_PROFILING OFF CACHE BOOL "Enable profiling in the GCC compiler (Add flags: -g -pg)")
\r
175 set(USE_OMIT_FRAME_POINTER ON CACHE BOOL "Enable -fomit-frame-pointer for GCC")
\r
176 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES arm*)
\r
177 # We can use only -O2 because the -O3 causes gcc crash
\r
178 set(USE_O2 ON CACHE BOOL "Enable -O2 for GCC")
\r
179 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
181 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES amd64*)
\r
182 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
183 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
184 set(USE_MMX ON CACHE BOOL "Enable MMX for GCC")
\r
185 set(USE_SSE ON CACHE BOOL "Enable SSE for GCC")
\r
186 set(USE_SSE2 ON CACHE BOOL "Enable SSE2 for GCC")
\r
187 set(USE_SSE3 ON CACHE BOOL "Enable SSE3 for GCC")
\r
189 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES x86_64*)
\r
190 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
191 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
192 set(USE_MMX ON CACHE BOOL "Enable MMX for GCC")
\r
193 set(USE_SSE ON CACHE BOOL "Enable SSE for GCC")
\r
194 set(USE_SSE2 ON CACHE BOOL "Enable SSE2 for GCC")
\r
195 set(USE_SSE3 ON CACHE BOOL "Enable SSE3 for GCC")
\r
197 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES powerpc*)
\r
198 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
199 set(USE_POWERPC ON CACHE BOOL "Enable PowerPC for GCC")
\r
201 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES i686*)
\r
202 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
203 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
204 set(USE_MMX ON CACHE BOOL "Enable MMX for GCC")
\r
205 set(USE_SSE OFF CACHE BOOL "Enable SSE for GCC")
\r
206 set(USE_SSE2 OFF CACHE BOOL "Enable SSE2 for GCC")
\r
207 set(USE_SSE3 OFF CACHE BOOL "Enable SSE3 for GCC")
\r
208 # SSE/SSE2 might probably be not available for some old AMD or VIA processors
\r
210 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES x86)
\r
211 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
212 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
213 set(USE_MMX ON CACHE BOOL "Enable MMX for GCC")
\r
214 set(USE_SSE OFF CACHE BOOL "Enable SSE for GCC")
\r
215 set(USE_SSE2 OFF CACHE BOOL "Enable SSE2 for GCC")
\r
216 set(USE_SSE3 OFF CACHE BOOL "Enable SSE3 for GCC")
\r
217 # SSE/SSE2 might probably be not available for some old AMD or VIA processors
\r
221 # allow fine grained control over which libraries not to link, even if
\r
222 # they are available on the system
\r
223 # ====================================================================
\r
225 set(WITH_PNG ON CACHE BOOL "Include PNG support")
\r
226 set(WITH_JPEG ON CACHE BOOL "Include JPEG support")
\r
227 set(WITH_JASPER ON CACHE BOOL "Include JPEG2K support")
\r
228 set(WITH_TIFF ON CACHE BOOL "Include TIFF support")
\r
229 set(WITH_FFMPEG ON CACHE BOOL "Include FFMPEG support")
\r
230 set(WITH_UNICAP ON CACHE BOOL "Include Unicap support")
\r
231 set(WITH_GTK ON CACHE BOOL "Include GTK support")
\r
232 set(WITH_GSTREAMER ON CACHE BOOL "Include Gstreamer support")
\r
233 set(WITH_1394 ON CACHE BOOL "Include IEEE1394 support")
\r
234 set(WITH_V4L ON CACHE BOOL "Include Video 4 Linux support")
\r
235 set(WITH_XINE ON CACHE BOOL "Include Xine support")
\r
238 # ===================================================
\r
239 # Macros that checks if module have been installed.
\r
240 # After it adds module to build and define
\r
241 # constants passed as second arg
\r
242 # ===================================================
\r
244 macro(CHECK_MODULE module_name define)
\r
246 if(PKG_CONFIG_FOUND)
\r
247 set(ALIAS ALIASOF_${module_name})
\r
248 set(ALIAS_FOUND ${ALIAS}_FOUND)
\r
249 set(ALIAS_INCLUDE_DIRS ${ALIAS}_INCLUDE_DIRS)
\r
250 set(ALIAS_LIBRARY_DIRS ${ALIAS}_LIBRARY_DIRS)
\r
251 set(ALIAS_LIBRARIES ${ALIAS}_LIBRARIES)
\r
253 PKG_CHECK_MODULES(${ALIAS} ${module_name})
\r
255 if (${ALIAS_FOUND})
\r
257 foreach(P "${ALIAS_INCLUDE_DIRS}")
\r
259 list(APPEND HIGHGUI_INCLUDE_DIRS ${${P}})
\r
263 foreach(P "${ALIAS_LIBRARY_DIRS}")
\r
265 list(APPEND HIGHGUI_LIBRARY_DIRS ${${P}})
\r
269 list(APPEND HIGHGUI_LIBRARIES ${${ALIAS_LIBRARIES}})
\r
277 CHECK_MODULE(gtk+-2.0 HAVE_GTK)
\r
278 CHECK_MODULE(gthread-2.0 HAVE_GTHREAD)
\r
280 set(HAVE_GTK FALSE)
\r
281 set(HAVE_GTHREAD FALSE)
\r
284 CHECK_MODULE(gstreamer-base-0.10 HAVE_GSTREAMER)
\r
285 CHECK_MODULE(gstreamer-app-0.10 HAVE_GSTREAMER_APP)
\r
286 CHECK_MODULE(gstreamer-video-0.10 HAVE_GSTREAMER)
288 set(HAVE_GSTREAMER FALSE)
\r
293 CHECK_MODULE(libunicap HAVE_UNICAP_)
\r
294 CHECK_MODULE(libucil HAVE_UNICAP_UCIL)
\r
295 if(HAVE_UNICAP_ AND HAVE_UNICAP_UCIL)
\r
299 set(HAVE_UNICAP FALSE)
\r
304 CHECK_MODULE(libavcodec HAVE_FFMPEG_CODEC)
\r
305 CHECK_MODULE(libavformat HAVE_FFMPEG_FORMAT)
\r
306 CHECK_MODULE(libavutil HAVE_FFMPEG_UTIL)
\r
307 CHECK_MODULE(libswscale HAVE_FFMPEG_SWSCALE)
\r
308 CHECK_INCLUDE_FILE(libavformat/avformat.h HAVE_GENTOO_FFMPEG)
\r
309 CHECK_INCLUDE_FILE(ffmpeg/avformat.h HAVE_FFMPEG_FFMPEG)
\r
310 if(NOT HAVE_GENTOO_FFMPEG AND NOT HAVE_FFMPEG_FFMPEG)
\r
311 if(EXISTS /usr/include/ffmpeg/libavformat/avformat.h OR HAVE_FFMPEG_SWSCALE)
\r
312 set(HAVE_GENTOO_FFMPEG 1)
\r
315 if(HAVE_FFMPEG_CODEC AND HAVE_FFMPEG_FORMAT AND HAVE_FFMPEG_UTIL)
\r
316 if(HAVE_FFMPEG_SWSCALE OR NOT HAVE_GENTOO_FFMPEG)
\r
323 CHECK_MODULE(libdc1394-2 HAVE_DC1394_2)
\r
324 if(NOT HAVE_DC1394_2)
\r
325 CHECK_MODULE(libdc1394 HAVE_DC1394)
\r
328 set(HAVE_DC1394_2 FALSE)
\r
329 set(HAVE_DC1394 FALSE)
\r
333 CHECK_INCLUDE_FILE(alloca.h HAVE_ALLOCA_H)
\r
334 CHECK_FUNCTION_EXISTS(alloca HAVE_ALLOCA)
\r
335 CHECK_INCLUDE_FILE(unistd.h HAVE_UNISTD_H)
\r
336 CHECK_INCLUDE_FILE(pthread.h HAVE_LIBPTHREAD)
\r
339 CHECK_MODULE(libxine HAVE_XINE)
\r
341 set(HAVE_XINE FALSE)
\r
344 CHECK_MODULE(libv4l1 HAVE_LIBV4L)
\r
345 CHECK_INCLUDE_FILE(linux/videodev.h HAVE_CAMV4L)
\r
346 CHECK_INCLUDE_FILE(linux/videodev2.h HAVE_CAMV4L2)
\r
348 set(HAVE_LIBV4L FALSE)
\r
349 set(HAVE_CAMV4L FALSE)
\r
350 set(HAVE_CAMV4L2 FALSE)
\r
353 if(NOT OPENCV_BUILD_3RDPARTY_LIBS)
\r
357 CHECK_INCLUDE_FILE(${PNG_PNG_INCLUDE_DIR}/png.h HAVE_PNG_H)
\r
358 CHECK_INCLUDE_FILE(${PNG_PNG_INCLUDE_DIR}/libpng/png.h HAVE_LIBPNG_PNG_H)
\r
361 set(PNG_FOUND FALSE)
\r
366 set(TIFF_FOUND FALSE)
\r
369 include(FindJasper)
\r
371 set(JASPER_FOUND FALSE)
\r
376 set(JPEG_FOUND FALSE)
\r
380 if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
\r
381 set(OPENCV_LINKER_LIBS m pthread)
\r
383 set(OPENCV_LINKER_LIBS dl m pthread rt)
\r
386 add_definitions(-DHAVE_ALLOCA -DHAVE_ALLOCA_H -DHAVE_LIBPTHREAD -DHAVE_UNISTD_H)
\r
390 set(BUILD_NEW_PYTHON_SUPPORT ON CACHE BOOL "Build with Python support")
\r
391 set(BUILD_SWIG_PYTHON_SUPPORT OFF CACHE BOOL "Build with older SWIG-based Python support")
\r
392 set(BUILD_OCTAVE_SUPPORT OFF CACHE BOOL "Build with Octave support")
\r
394 if(BUILD_SWIG_PYTHON_SUPPORT OR BUILD_NEW_PYTHON_SUPPORT)
\r
395 find_package(PythonInterp)
\r
396 find_package(PythonLibs)
\r
398 # cmake 2.4 (at least on Ubuntu 8.04 (hardy)) don't define PYTHONLIBS_FOUND
\r
399 if(NOT PYTHONLIBS_FOUND AND PYTHON_INCLUDE_PATH)
\r
400 set(PYTHONLIBS_FOUND ON)
\r
401 endif(NOT PYTHONLIBS_FOUND AND PYTHON_INCLUDE_PATH)
\r
403 execute_process(COMMAND ${PYTHON_EXECUTABLE} --version
\r
404 ERROR_VARIABLE PYTHON_VERSION_FULL
\r
405 OUTPUT_STRIP_TRAILING_WHITESPACE)
\r
407 string(REGEX MATCH "[0-9].[0-9]" PYTHON_VERSION_MAJOR_MINOR "${PYTHON_VERSION_FULL}")
\r
409 set(PYTHON_PLUGIN_INSTALL_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages/opencv)
\r
410 set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages)
\r
413 get_filename_component(PYTHON_PATH "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${PYTHON_VERSION_MAJOR_MINOR}\\InstallPath]" ABSOLUTE CACHE)
\r
414 set(PYTHON_PLUGIN_INSTALL_PATH "${PYTHON_PATH}/Lib/site-packages/opencv")
\r
415 set(PYTHON_PACKAGES_PATH "${PYTHON_PATH}/Lib/site-packages")
\r
419 if(PYTHONLIBS_FOUND AND BUILD_SWIG_PYTHON_SUPPORT)
\r
424 ############################### IPP ################################
\r
426 set(OPENCV_LOADER_PATH)
\r
430 set(OPENCV_LOADER_PATH DYLD_LIBRARY_PATH)
\r
432 set(OPENCV_LOADER_PATH LD_LIBRARY_PATH)
\r
436 foreach(v "6.1" "6.0" "5.3" "5.2" "5.1")
\r
439 find_path(IPP_PATH "ippi-${v}.dll"
\r
440 PATHS ${CMAKE_PROGRAM_PATH} ${CMAKE_SYSTEM_PROGRAM_PATH}
\r
441 DOC "The path to IPP dynamic libraries")
\r
443 find_path(IPP_PATH "ippiem64t-${v}.dll"
\r
444 PATHS ${CMAKE_PROGRAM_PATH} ${CMAKE_SYSTEM_PROGRAM_PATH}
\r
445 DOC "The path to IPP dynamic libraries")
\r
449 find_path(IPP_PATH "libippi${CMAKE_SHARED_LIBRARY_SUFFIX}.${v}"
\r
450 PATHS ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} ENV ${OPENCV_LOADER_PATH}
\r
451 DOC "The path to IPP dynamic libraries")
\r
453 find_path(IPP_PATH "libippiem64t${CMAKE_SHARED_LIBRARY_SUFFIX}.${v}"
\r
454 PATHS ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} ENV ${OPENCV_LOADER_PATH}
\r
455 DOC "The path to IPP dynamic libraries")
\r
459 file(GLOB IPP_HDRS "${IPP_PATH}/../include")
\r
461 set(IPP_FOUND TRUE)
\r
467 message(STATUS "IPP detected: ${IPP_FOUND}")
\r
469 if(WIN32 AND NOT MSVC)
\r
473 set(USE_IPP ${IPP_FOUND} CACHE BOOL "Use IPP when available")
\r
475 if(IPP_FOUND AND USE_IPP)
\r
476 add_definitions(-DHAVE_IPP)
\r
477 include_directories("${IPP_PATH}/../include")
\r
478 link_directories("${IPP_PATH}/../lib")
\r
480 file(GLOB em64t_files "${IPP_PATH}/../lib/*em64t*")
\r
483 set(IPP_ARCH "em64t")
\r
486 set(A ${CMAKE_STATIC_LIBRARY_PREFIX})
\r
487 set(B ${IPP_ARCH}${CMAKE_STATIC_LIBRARY_SUFFIX})
\r
493 set(IPP_LIBS ${A}ippsmerged${B} ${A}ippsemerged${B}
\r
494 ${A}ippimerged${B} ${A}ippiemerged${B}
\r
495 ${A}ippvmmerged${B} ${A}ippvmemerged${B}
\r
496 ${A}ippccmerged${B} ${A}ippccemerged${B}
\r
497 ${A}ippcvmerged${B} ${A}ippcvemerged${B}
\r
498 ${A}ippcore${L}${B})
\r
502 ################## LATEX ##################
\r
503 set(BUILD_LATEX_DOCS OFF CACHE BOOL "Build LaTeX OpenCV Documentation")
\r
505 # ----------------------------------------------------------------------------
\r
506 # UPDATE CONFIG FILES & SCRIPTS:
\r
508 # CONFIGURE_FILE(InputFile OutputFile [COPYONLY] [ESCAPE_QUOTES] [@ONLY])
\r
509 # If @ONLY is specified, only variables of the form @VAR@ will be
\r
510 # replaces and ${VAR} will be ignored.
\r
512 # A directory will be created for each platform so the "cvconfig.h" file is
\r
513 # not overwritten if cmake generates code in the same path.
\r
514 # ----------------------------------------------------------------------------
\r
515 add_definitions(-DHAVE_CONFIG_H)
\r
517 set(OPENCV_CONFIG_FILE_INCLUDE_DIR "${CMAKE_BINARY_DIR}/" CACHE PATH "Where to create the platform-dependant cvconfig.h")
\r
519 message(STATUS "Parsing 'cvconfig.h.cmake'")
\r
520 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cvconfig.h.cmake" "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/cvconfig.h")
\r
522 # ---------------------------------------------------------------------------
\r
523 # The C+//0 include & link directories:
\r
524 # ---------------------------------------------------------------------------
\r
525 include_directories("."
\r
526 "${OPENCV_CONFIG_FILE_INCLUDE_DIR}"
\r
527 "${CMAKE_CURRENT_SOURCE_DIR}/include"
\r
528 "${CMAKE_CURRENT_SOURCE_DIR}/include/opencv"
\r
531 # ----------------------------------------------------------------------------
\r
532 # Set the maximum level of warnings:
\r
533 # ----------------------------------------------------------------------------
\r
534 # Should be set to true for development
\r
535 set(OPENCV_WARNINGS_ARE_ERRORS OFF CACHE BOOL "Treat warnings as errors")
\r
537 # Whole program optimization?
\r
538 set(OPENCV_WHOLE_PROGRAM_OPTIMIZATION OFF CACHE BOOL "Flags for whole program optimization.")
\r
540 set(EXTRA_C_FLAGS "")
\r
541 set(EXTRA_C_FLAGS_RELEASE "")
\r
542 set(EXTRA_C_FLAGS_DEBUG "")
\r
543 set(EXTRA_EXE_LINKER_FLAGS "")
\r
544 set(EXTRA_EXE_LINKER_FLAGS_RELEASE "")
\r
545 set(EXTRA_EXE_LINKER_FLAGS_DEBUG "")
\r
548 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS")
\r
549 # 64-bit portability warnings, in MSVC8
\r
551 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} /Wp64")
\r
554 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} /D _BIND_TO_CURRENT_CRT_VERSION=1 /D _BIND_TO_CURRENT_VCLIBS_VERSION=1")
\r
557 set(EXTRA_EXE_LINKER_FLAGS_RELEASE "${EXTRA_EXE_LINKER_FLAGS_RELEASE} /debug")
\r
559 # Whole program optimization
\r
560 if(OPENCV_WHOLE_PROGRAM_OPTIMIZATION AND MSVC_VERSION GREATER 1300)
\r
561 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} /GL")
\r
562 set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG")
\r
563 set(CMAKE_MODULE_LINKER_FLAGS_RELEASE "${CMAKE_MODULE_LINKER_FLAGS_RELEASE} /LTCG")
\r
567 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} /openmp")
\r
570 # Remove unreferenced functions: function level linking
\r
571 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} /Gy")
\r
572 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} /Zi")
\r
575 if(CMAKE_COMPILER_IS_GNUCXX)
\r
576 # High level of warnings.
\r
577 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Wall")
\r
579 # The -Wno-long-long is required in 64bit systems when including sytem headers.
\r
580 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES x86_64*)
\r
581 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Wno-long-long")
\r
583 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES amd64*)
\r
584 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Wno-long-long")
\r
587 # We need pthread's
\r
589 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -pthread")
\r
592 if(OPENCV_WARNINGS_ARE_ERRORS)
\r
593 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Werror")
\r
596 # Whole program optimization
\r
597 if(OPENCV_WHOLE_PROGRAM_OPTIMIZATION)
\r
598 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -fwhole-program --combine")
\r
601 # Other optimizations
\r
602 if(USE_OMIT_FRAME_POINTER)
\r
603 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -fomit-frame-pointer")
\r
606 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -O2")
\r
609 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -O3")
\r
612 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -ffast-math")
\r
615 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -mcpu=G3 -mtune=G5")
\r
618 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -mmmx")
\r
621 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -msse")
\r
624 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -msse2")
\r
626 # SSE3 should be disabled under MingW because it generates compiler errors
\r
627 if(USE_SSE3 AND NOT MINGW)
\r
628 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -msse3")
\r
632 if(ENABLE_PROFILING)
\r
633 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -pg -g")
\r
635 # Remove unreferenced functions: function level linking
\r
637 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -ffunction-sections")
\r
643 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -D_GLIBCXX_PARALLEL -fopenmp")
\r
644 set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} gomp)
\r
647 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -DNDEBUG")
\r
648 set(EXTRA_C_FLAGS_DEBUG "${EXTRA_C_FLAGS_DEBUG} -O0 -DDEBUG -D_DEBUG")
\r
652 # Add user supplied extra options (optimization, etc...)
\r
653 # ==========================================================
\r
654 set(OPENCV_EXTRA_C_FLAGS "" CACHE STRING "Extra compiler options")
\r
655 set(OPENCV_EXTRA_C_FLAGS_RELEASE "" CACHE STRING "Extra compiler options for Release build")
\r
656 set(OPENCV_EXTRA_C_FLAGS_DEBUG "" CACHE STRING "Extra compiler options for Debug build")
\r
657 set(OPENCV_EXTRA_EXE_LINKER_FLAGS "" CACHE STRING "Extra linker flags" FORCE)
\r
658 set(OPENCV_EXTRA_EXE_LINKER_FLAGS_RELEASE "" CACHE STRING "Extra linker flags for Release build" FORCE)
\r
659 set(OPENCV_EXTRA_EXE_LINKER_FLAGS_DEBUG "" CACHE STRING "Extra linker flags for Debug build" FORCE)
\r
661 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_C_FLAGS} ${OPENCV_EXTRA_C_FLAGS}")
\r
662 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_C_FLAGS} ${OPENCV_EXTRA_C_FLAGS}")
\r
663 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${EXTRA_C_FLAGS_RELEASE} ${OPENCV_EXTRA_C_FLAGS_RELEASE}")
\r
664 set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} ${EXTRA_C_FLAGS_RELEASE} ${OPENCV_EXTRA_C_FLAGS_RELEASE}")
\r
665 set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${EXTRA_C_FLAGS_DEBUG} ${OPENCV_EXTRA_C_FLAGS_DEBUG}")
\r
666 set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${EXTRA_C_FLAGS_DEBUG} ${OPENCV_EXTRA_C_FLAGS_DEBUG}")
\r
667 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${EXTRA_EXE_LINKER_FLAGS} ${OPENCV_EXTRA_EXE_LINKER_FLAGS}")
\r
668 set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} ${EXTRA_EXE_LINKER_FLAGS_RELEASE} ${OPENCV_EXTRA_EXE_LINKER_FLAGS_RELEASE}")
\r
669 set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${EXTRA_EXE_LINKER_FLAGS_DEBUG} ${OPENCV_EXTRA_EXE_LINKER_FLAGS_DEBUG}")
\r
671 # In case of Makefiles if the user does not setup CMAKE_BUILD_TYPE, assume it's Release:
\r
672 if (${CMAKE_GENERATOR} MATCHES ".*Makefiles")
\r
673 if("${CMAKE_BUILD_TYPE}" STREQUAL "")
\r
674 set(CMAKE_BUILD_TYPE Release)
\r
678 if (WIN32 AND MSVC)
\r
679 # avoid warnings from MSVC about overriding the /W* option
\r
680 # we replace /W3 with /W4 only for C++ files,
\r
681 # since all the 3rd-party libraries OpenCV uses are in C,
\r
682 # and we do not care about their warnings.
\r
683 string(REPLACE "/W3" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
\r
684 string(REPLACE "/W3" "/W4" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
\r
685 string(REPLACE "/W3" "/W4" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
\r
688 if("${CMAKE_CONFIGURE_LDFLAGS}")
\r
689 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_CONFIGURE_LDFLAGS}")
\r
690 endif("${CMAKE_CONFIGURE_LDFLAGS}")
\r
692 # ----------------------------------------------------------------------------
\r
693 # PROCESS SUBDIRECTORIES:
\r
694 # ----------------------------------------------------------------------------
\r
695 # Save libs and executables in the same place
\r
696 set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib CACHE PATH "Output directory for libraries" )
\r
697 set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin CACHE PATH "Output directory for applications" )
\r
700 set(OPENCV_DOC_INSTALL_PATH doc)
\r
702 set(OPENCV_DOC_INSTALL_PATH share/opencv/doc)
\r
705 # --------------------------------------------------------------------------------------------
\r
706 # Installation for CMake Module: OpenCVConfig.cmake
\r
707 # Part 1/3: ${BIN_DIR}/OpenCVConfig.cmake -> For use *without* "make install"
\r
708 # Part 2/3: ${BIN_DIR}/unix-install/OpenCVConfig.cmake -> For use with "make install"
\r
709 # Part 3/3: ${BIN_DIR}/win-install/OpenCVConfig.cmake -> For use within binary installers/packages
\r
710 # -------------------------------------------------------------------------------------------
\r
712 # -------------------------------------------------------------------------------------------
\r
713 # Part 1/3: ${BIN_DIR}/OpenCVConfig.cmake -> For use *without* "make install"
\r
714 # -------------------------------------------------------------------------------------------
\r
716 # Name of libraries is: libcv.so.1.1.0, etc...
\r
717 # OPENCV_DLLVERSION must be set to "110", etc..
\r
718 # Already done above.
\r
720 # Set CMAKE_INCLUDE_DIRS_CONFIGCMAKE to the list of include directories:
\r
721 set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "\"${OPENCV_CONFIG_FILE_INCLUDE_DIR}\" \"${CMAKE_CURRENT_SOURCE_DIR}/include\" \"${CMAKE_CURRENT_SOURCE_DIR}/include/opencv\"")
\r
723 set(CMAKE_LIB_DIRS_CONFIGCMAKE "${LIBRARY_OUTPUT_PATH}")
\r
725 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/OpenCVConfig.cmake" IMMEDIATE @ONLY)
\r
727 # --------------------------------------------------------------------------------------------
\r
728 # Part 2/3: ${BIN_DIR}/unix-install/OpenCVConfig.cmake -> For use *with* "make install"
\r
729 # -------------------------------------------------------------------------------------------
\r
730 # Set CMAKE_INCLUDE_DIRS_CONFIGCMAKE to the list of include directories:
\r
732 set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "${CMAKE_INSTALL_PREFIX}/include/opencv")
\r
733 set(CMAKE_LIB_DIRS_CONFIGCMAKE "${CMAKE_INSTALL_PREFIX}/lib")
\r
735 #exec_program(${CMAKE_COMMAND} ARGS "-E make_directory \"${CMAKE_BINARY_DIR}/unix-install/\"")
\r
736 exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/unix-install/\"")
\r
737 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/unix-install/OpenCVConfig.cmake" IMMEDIATE @ONLY)
\r
740 # For a command "FIND_PACKAGE(FOO)", CMake will look at the directory /usr/share|lib/FOO/FOOConfig.cmake, so:
\r
741 install(FILES ${CMAKE_BINARY_DIR}/unix-install/OpenCVConfig.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/share/opencv/)
\r
744 # --------------------------------------------------------------------------------------------
\r
745 # Part 3/3: ${BIN_DIR}/win-install/OpenCVConfig.cmake -> For use within binary installers/packages
\r
746 # -------------------------------------------------------------------------------------------
\r
748 # Set CMAKE_INCLUDE_DIRS_CONFIGCMAKE to the list of include directories:
\r
750 # This will expand to, for example, <program files>/OpenCV 1.1.0/include
\r
751 set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/include\" \"\${THIS_OPENCV_CONFIG_PATH}/include/opencv\"")
\r
753 # This will expand to, for example, <program files>/OpenCV 1.1.0/lib
\r
754 set(CMAKE_LIB_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/lib\"")
\r
756 #exec_program(${CMAKE_COMMAND} ARGS "-E make_directory \"${CMAKE_BINARY_DIR}/win-install/\"")
\r
757 exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/win-install/\"")
\r
758 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake" IMMEDIATE @ONLY)
\r
762 # --------------------------------------------------------------------------------------------
\r
763 # Part 2/2: ${BIN_DIR}/unix-install/opencv.pc -> For use *with* "make install"
\r
765 # exec_prefix=${prefix}
\r
766 # libdir=${exec_prefix}/lib
\r
767 # includedir=${prefix}/include/opencv
\r
768 # -------------------------------------------------------------------------------------------
\r
769 set(prefix ${CMAKE_INSTALL_PREFIX})
\r
770 set(exec_prefix "\${prefix}")
\r
771 set(libdir "\${exec_prefix}/lib")
\r
772 set(includedir "\${prefix}/include")
\r
773 set(VERSION ${OPENCV_VERSION})
\r
775 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/opencv.pc.cmake.in" "${CMAKE_BINARY_DIR}/unix-install/opencv.pc" @ONLY IMMEDIATE)
\r
778 install(FILES ${CMAKE_BINARY_DIR}/unix-install/opencv.pc DESTINATION lib/pkgconfig)
\r
782 # ----------------------------------------------------------------------------
\r
783 # Uninstall target, for "make uninstall"
\r
784 # ----------------------------------------------------------------------------
\r
786 "${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
\r
787 "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
\r
790 ADD_CUSTOM_TARGET(uninstall
\r
791 "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
\r
794 # ----------------------------------------------------------------------------
\r
796 # ----------------------------------------------------------------------------
\r
798 set(BUILD_PACKAGE OFF CACHE BOOL "Build a installer with the SDK")
\r
804 ${CMAKE_BINARY_DIR}/.cpack/Package.cmake
\r
808 include(${CMAKE_BINARY_DIR}/.cpack/Package.cmake)
\r
810 set(root_files README ChangeLog configure)
\r
812 file(GLOB root_src_files *.in *.sh *.cmake CMakeLists.txt)
\r
815 install(FILES ${root_files}
\r
816 DESTINATION ${OPENCV_DOC_INSTALL_PATH}
\r
819 install(FILES ${root_files}
\r
822 install(FILES ${root_src_files}
\r
825 # Add the "win-install/OpenCVConfig.cmake" file to the "main" install component
\r
827 "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake"
\r
832 if(CMAKE_INSTALL_DEBUG_LIBRARIES)
\r
833 foreach(m cxcore cv cvaux ml highgui opencv_ffmpeg)
\r
834 install(FILES ${CMAKE_BINARY_DIR}/bin/Debug/${m}${OPENCV_DLLVERSION}d.dll
\r
835 DESTINATION bin COMPONENT main)
\r
836 install(FILES ${CMAKE_BINARY_DIR}/lib/Debug/${m}${OPENCV_DLLVERSION}d.lib
\r
837 DESTINATION lib COMPONENT main)
\r
841 install(DIRECTORY data samples DESTINATION "." COMPONENT main PATTERN ".svn" EXCLUDE)
\r
842 install(DIRECTORY 3rdparty apps interfaces src tests utils DESTINATION "." COMPONENT src PATTERN ".svn" EXCLUDE)
\r
843 install(DIRECTORY doc/ DESTINATION doc COMPONENT src FILES_MATCHING PATTERN "*.tex")
\r
844 install(DIRECTORY doc/pics DESTINATION doc COMPONENT src PATTERN ".svn" EXCLUDE)
\r
845 install(DIRECTORY doc/plastex DESTINATION doc COMPONENT src PATTERN ".svn" EXCLUDE)
\r
851 #-----------------------------------
\r
853 #-----------------------------------
\r
854 add_subdirectory(src)
\r
855 add_subdirectory(apps)
\r
857 if(BUILD_LATEX_DOCS)
\r
858 include(OpenCVFindLATEX.cmake REQUIRED)
\r
860 if(PDFLATEX_COMPILER)
\r
861 message(STATUS "PDF LaTeX found!")
\r
865 add_subdirectory(doc)
\r
866 add_subdirectory(data)
\r
868 if(BUILD_EXAMPLES OR INSTALL_PYTHON_EXAMPLES OR INSTALL_OCTAVE_EXAMPLES)
\r
869 add_subdirectory(samples)
\r
874 add_subdirectory(tests)
\r
877 add_subdirectory(interfaces)
\r
878 add_subdirectory(3rdparty)
\r
881 # ----------------------------------------------------------------------------
\r
883 # ----------------------------------------------------------------------------
\r
885 message(STATUS "General configuration for opencv ${OPENCV_VERSION} =====================================")
\r
887 message(STATUS " Compiler: ${CMAKE_COMPILER}")
\r
888 message(STATUS " C++ flags (Release): ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELEASE}")
\r
889 message(STATUS " C++ flags (Debug): ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_DEBUG}")
\r
891 message(STATUS " Linker flags (Release): ${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_EXE_LINKER_FLAGS_RELEASE}")
\r
892 message(STATUS " Linker flags (Debug): ${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_EXE_LINKER_FLAGS_DEBUG}")
\r
894 message(STATUS " Linker flags (Release): ${CMAKE_SHARED_LINKER_FLAGS} ${CMAKE_SHARED_LINKER_FLAGS_RELEASE}")
\r
895 message(STATUS " Linker flags (Debug): ${CMAKE_SHARED_LINKER_FLAGS} ${CMAKE_SHARED_LINKER_FLAGS_DEBUG}")
\r
901 message(STATUS " GUI: ")
\r
902 message(STATUS " GTK+ 2.x: ${HAVE_GTK}")
\r
903 message(STATUS " GThread: ${HAVE_GTHREAD}")
\r
905 if(NOT OPENCV_BUILD_3RDPARTY_LIBS)
\r
906 message(STATUS " Image I/O: ")
\r
907 message(STATUS " JPEG: ${JPEG_FOUND}")
\r
908 message(STATUS " PNG: ${PNG_FOUND}")
\r
909 message(STATUS " TIFF: ${TIFF_FOUND}")
\r
910 message(STATUS " JASPER: ${JASPER_FOUND}")
\r
912 message(STATUS " Image I/O: ")
\r
913 message(STATUS " JPEG: build")
\r
914 message(STATUS " PNG: build")
\r
915 message(STATUS " TIFF: build")
\r
916 message(STATUS " JASPER: build")
\r
920 message(STATUS " Video I/O: ")
\r
921 message(STATUS " DC1394 1.x: ${HAVE_DC1394}")
\r
922 message(STATUS " DC1394 2.x: ${HAVE_DC1394_2}")
\r
923 message(STATUS " FFMPEG: ${HAVE_FFMPEG}")
\r
924 message(STATUS " codec: ${HAVE_FFMPEG_CODEC}")
\r
925 message(STATUS " format: ${HAVE_FFMPEG_FORMAT}")
\r
926 message(STATUS " util: ${HAVE_FFMPEG_UTIL}")
\r
927 message(STATUS " swscale: ${HAVE_FFMPEG_SWSCALE}")
\r
928 message(STATUS " gentoo-style: ${HAVE_GENTOO_FFMPEG}")
\r
929 message(STATUS " GStreamer: ${HAVE_GSTREAMER}")
\r
930 message(STATUS " UniCap: ${HAVE_UNICAP}")
\r
932 message(STATUS " V4L/V4L2: Using libv4l")
\r
934 message(STATUS " V4L/V4L2: ${HAVE_CAMV4L}/${HAVE_CAMV4L2}")
\r
936 message(STATUS " Xine: ${HAVE_XINE}")
\r
939 message(STATUS " Interfaces: ")
\r
940 if(PYTHONLIBS_FOUND AND BUILD_SWIG_PYTHON_SUPPORT)
\r
941 message(STATUS " Old Python: 1")
\r
943 message(STATUS " Old Python: 0")
\r
945 message(STATUS " Python: ${BUILD_NEW_PYTHON_SUPPORT}")
\r
946 if(IPP_FOUND AND USE_IPP)
\r
947 message(STATUS " Use IPP: ${IPP_PATH}")
\r
949 message(STATUS " Use IPP: NO")
\r
951 if(BUILD_LATEX_DOCS AND PDFLATEX_COMPILER)
\r
952 message(STATUS " Build Documentation 1")
\r
954 message(STATUS " Build Documentation 0")
\r
957 message(STATUS " Install path: ${CMAKE_INSTALL_PREFIX}")
\r
959 message(STATUS " cvconfig.h is in: ${OPENCV_CONFIG_FILE_INCLUDE_DIR}")
\r
960 message(STATUS "-----------------------------------------------------------------")
\r
963 #----------------------------------------------------------------------------
\r
964 # Generate the OpenCVConfig.cmake file for unix
\r
965 # installation in CMAKE_INSTALL_PREFIX
\r
966 #----------------------------------------------------------------------------
\r