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 # --------------------------------------------------------------
\r
44 # Indicate CMake 2.7 and above that we don't want to mix relative
\r
45 # and absolute paths in linker lib lists.
\r
46 # Run "cmake --help-policy CMP0003" for more information.
\r
47 # --------------------------------------------------------------
\r
48 if(COMMAND cmake_policy)
\r
49 cmake_policy(SET CMP0003 NEW)
\r
52 # ----------------------------------------------------------------------------
\r
53 # Current version number:
\r
54 # ----------------------------------------------------------------------------
\r
55 set(OPENCV_VERSION "2.0.0")
\r
57 string(REGEX MATCHALL "[0-9]" OPENCV_VERSION_PARTS "${OPENCV_VERSION}")
\r
59 list(GET OPENCV_VERSION_PARTS 0 OPENCV_VERSION_MAJOR)
\r
60 list(GET OPENCV_VERSION_PARTS 1 OPENCV_VERSION_MINOR)
\r
61 list(GET OPENCV_VERSION_PARTS 2 OPENCV_VERSION_PATCH)
\r
63 set(OPENCV_SOVERSION "${OPENCV_VERSION_MAJOR}.${OPENCV_VERSION_MINOR}")
\r
67 set(OPENCV_DLLVERSION "${OPENCV_VERSION_MAJOR}${OPENCV_VERSION_MINOR}${OPENCV_VERSION_PATCH}")
\r
68 set(OPENCV_DEBUG_POSTFIX d)
\r
71 #set(OPENCV_DLLVERSION "${OPENCV_VERSION_MAJOR}${OPENCV_VERSION_MINOR}${OPENCV_VERSION_PATCH}")
\r
72 set(OPENCV_DLLVERSION "")
\r
73 set(OPENCV_DEBUG_POSTFIX)
\r
77 # ----------------------------------------------------------------------------
\r
78 # Variables for cvconfig.h.cmake
\r
79 # ----------------------------------------------------------------------------
\r
80 set(PACKAGE "opencv")
\r
81 set(PACKAGE_BUGREPORT "opencvlibrary-devel@lists.sourceforge.net")
\r
82 set(PACKAGE_NAME "opencv")
\r
83 set(PACKAGE_STRING "${PACKAGE} ${OPENCV_VERSION}")
\r
84 set(PACKAGE_TARNAME "${PACKAGE}")
\r
85 set(PACKAGE_VERSION "${OPENCV_VERSION}")
\r
87 # ----------------------------------------------------------------------------
\r
88 # Autodetect if we are in a SVN repository
\r
89 # ----------------------------------------------------------------------------
\r
90 find_program(SVNVERSION_PATH svnversion)
\r
91 mark_as_advanced(force SVNVERSION_PATH)
\r
93 message(STATUS "Extracting svn version, please wait...")
\r
94 execute_process(COMMAND ${SVNVERSION_PATH} -n ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE SVNVERSION_RESULT)
\r
96 if(SVNVERSION_RESULT MATCHES "exported")
\r
97 # This is NOT a svn repository:
\r
98 set(OPENCV_SVNVERSION "")
\r
100 set(OPENCV_SVNVERSION " svn:${SVNVERSION_RESULT}")
\r
103 message(STATUS "SVNVERSION: ${OPENCV_SVNVERSION}")
\r
105 # We don't have svnversion:
\r
106 set(OPENCV_SVNVERSION "")
\r
109 # ----------------------------------------------------------------------------
\r
110 # Detect GNU version:
\r
111 # ----------------------------------------------------------------------------
\r
112 if(CMAKE_COMPILER_IS_GNUCXX)
\r
113 execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version
\r
114 OUTPUT_VARIABLE CMAKE_OPENCV_GCC_VERSION_FULL
\r
115 OUTPUT_STRIP_TRAILING_WHITESPACE)
\r
117 # Typical output in CMAKE_OPENCV_GCC_VERSION_FULL: "c+//0 (whatever) 4.2.3 (...)"
\r
118 # Look for the version number
\r
119 string(REGEX MATCH "[0-9].[0-9].[0-9]" CMAKE_GCC_REGEX_VERSION "${CMAKE_OPENCV_GCC_VERSION_FULL}")
\r
121 # Split the three parts:
\r
122 string(REGEX MATCHALL "[0-9]" CMAKE_OPENCV_GCC_VERSIONS "${CMAKE_GCC_REGEX_VERSION}")
\r
124 list(GET CMAKE_OPENCV_GCC_VERSIONS 0 CMAKE_OPENCV_GCC_VERSION_MAJOR)
\r
125 list(GET CMAKE_OPENCV_GCC_VERSIONS 1 CMAKE_OPENCV_GCC_VERSION_MINOR)
\r
127 set(CMAKE_OPENCV_GCC_VERSION ${CMAKE_OPENCV_GCC_VERSION_MAJOR}${CMAKE_OPENCV_GCC_VERSION_MINOR})
\r
128 message(STATUS "Detected version of GNU GCC: ${CMAKE_OPENCV_GCC_VERSION}")
\r
131 # ----------------------------------------------------------------------------
\r
132 # CHECK FOR SYSTEM LIBRARIES, OPTIONS, ETC..
\r
133 # ----------------------------------------------------------------------------
\r
135 # Build/install (or not) some apps:
\r
136 # ===================================================
\r
137 set(BUILD_EXAMPLES OFF CACHE BOOL "Build all examples")
\r
138 set(INSTALL_C_EXAMPLES OFF CACHE BOOL "Install C examples")
\r
139 set(INSTALL_PYTHON_EXAMPLES OFF CACHE BOOL "Install Python examples")
\r
140 set(INSTALL_OCTAVE_EXAMPLES OFF CACHE BOOL "Install Octave examples")
\r
143 # ===================================================
\r
144 set(BUILD_TESTS ON CACHE BOOL "Build tests")
\r
146 # Build 3rdparty libraries under unix
\r
147 # ===================================================
\r
149 set(OPENCV_BUILD_3RDPARTY_LIBS TRUE CACHE BOOL "Build 3rd party libraries")
\r
151 set(OPENCV_BUILD_3RDPARTY_LIBS FALSE CACHE BOOL "Build 3rd party libraries")
\r
154 include(OpenCVPCHSupport.cmake REQUIRED)
\r
157 include(OpenCVFindPkgConfig.cmake OPTIONAL)
\r
158 include(CheckFunctionExists)
\r
159 include(CheckIncludeFile)
\r
162 # Default value for OPENMP:
\r
165 # ===================================================
\r
167 set(DEFAULT_ENABLE_OPENMP ON)
\r
169 set(DEFAULT_ENABLE_OPENMP OFF)
\r
172 set(ENABLE_OPENMP ${DEFAULT_ENABLE_OPENMP} CACHE BOOL "")
\r
174 if(CMAKE_COMPILER_IS_GNUCXX)
\r
175 set(ENABLE_PROFILING OFF CACHE BOOL "Enable profiling in the GCC compiler (Add flags: -g -pg)")
\r
176 set(USE_OMIT_FRAME_POINTER ON CACHE BOOL "Enable -fomit-frame-pointer for GCC")
\r
177 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES arm*)
\r
178 # We can use only -O2 because the -O3 causes gcc crash
\r
179 set(USE_O2 ON CACHE BOOL "Enable -O2 for GCC")
\r
180 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
182 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES amd64*)
\r
183 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
184 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
185 set(USE_MMX ON CACHE BOOL "Enable MMX for GCC")
\r
186 set(USE_SSE ON CACHE BOOL "Enable SSE for GCC")
\r
187 set(USE_SSE2 ON CACHE BOOL "Enable SSE2 for GCC")
\r
188 set(USE_SSE3 ON CACHE BOOL "Enable SSE3 for GCC")
\r
190 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES x86_64*)
\r
191 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
192 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
193 set(USE_MMX ON CACHE BOOL "Enable MMX for GCC")
\r
194 set(USE_SSE ON CACHE BOOL "Enable SSE for GCC")
\r
195 set(USE_SSE2 ON CACHE BOOL "Enable SSE2 for GCC")
\r
196 set(USE_SSE3 ON CACHE BOOL "Enable SSE3 for GCC")
\r
198 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES powerpc*)
\r
199 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
200 set(USE_POWERPC ON CACHE BOOL "Enable PowerPC for GCC")
\r
202 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES i686*)
\r
203 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
204 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
205 set(USE_MMX ON CACHE BOOL "Enable MMX for GCC")
\r
206 set(USE_SSE OFF CACHE BOOL "Enable SSE for GCC")
\r
207 set(USE_SSE2 OFF CACHE BOOL "Enable SSE2 for GCC")
\r
208 set(USE_SSE3 OFF CACHE BOOL "Enable SSE3 for GCC")
\r
209 # SSE/SSE2 might probably be not available for some old AMD or VIA processors
\r
211 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES x86)
\r
212 set(USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
\r
213 set(USE_FAST_MATH ON CACHE BOOL "Enable -ffast-math for GCC")
\r
214 set(USE_MMX ON CACHE BOOL "Enable MMX for GCC")
\r
215 set(USE_SSE OFF CACHE BOOL "Enable SSE for GCC")
\r
216 set(USE_SSE2 OFF CACHE BOOL "Enable SSE2 for GCC")
\r
217 set(USE_SSE3 OFF CACHE BOOL "Enable SSE3 for GCC")
\r
218 # SSE/SSE2 might probably be not available for some old AMD or VIA processors
\r
222 # allow fine grained control over which libraries not to link, even if
\r
223 # they are available on the system
\r
224 # ====================================================================
\r
226 set(WITH_PNG ON CACHE BOOL "Include PNG support")
\r
227 set(WITH_JPEG ON CACHE BOOL "Include JPEG support")
\r
228 set(WITH_JASPER ON CACHE BOOL "Include JPEG2K support")
\r
229 set(WITH_TIFF ON CACHE BOOL "Include TIFF support")
\r
230 set(WITH_FFMPEG ON CACHE BOOL "Include FFMPEG support")
\r
231 set(WITH_UNICAP ON CACHE BOOL "Include Unicap support")
\r
232 set(WITH_GTK ON CACHE BOOL "Include GTK support")
\r
233 set(WITH_GSTREAMER ON CACHE BOOL "Include Gstreamer support")
\r
234 set(WITH_1394 ON CACHE BOOL "Include IEEE1394 support")
\r
235 set(WITH_V4L ON CACHE BOOL "Include Video 4 Linux support")
\r
236 set(WITH_XINE ON CACHE BOOL "Include Xine support")
\r
239 # ===================================================
\r
240 # Macros that checks if module have been installed.
\r
241 # After it adds module to build and define
\r
242 # constants passed as second arg
\r
243 # ===================================================
\r
245 macro(CHECK_MODULE module_name define)
\r
247 if(PKG_CONFIG_FOUND)
\r
248 set(ALIAS ALIASOF_${module_name})
\r
249 set(ALIAS_FOUND ${ALIAS}_FOUND)
\r
250 set(ALIAS_INCLUDE_DIRS ${ALIAS}_INCLUDE_DIRS)
\r
251 set(ALIAS_LIBRARY_DIRS ${ALIAS}_LIBRARY_DIRS)
\r
252 set(ALIAS_LIBRARIES ${ALIAS}_LIBRARIES)
\r
254 PKG_CHECK_MODULES(${ALIAS} ${module_name})
\r
256 if (${ALIAS_FOUND})
\r
258 foreach(P "${ALIAS_INCLUDE_DIRS}")
\r
260 list(APPEND HIGHGUI_INCLUDE_DIRS ${${P}})
\r
264 foreach(P "${ALIAS_LIBRARY_DIRS}")
\r
266 list(APPEND HIGHGUI_LIBRARY_DIRS ${${P}})
\r
270 list(APPEND HIGHGUI_LIBRARIES ${${ALIAS_LIBRARIES}})
\r
278 CHECK_MODULE(gtk+-2.0 HAVE_GTK)
\r
279 CHECK_MODULE(gthread-2.0 HAVE_GTHREAD)
\r
281 set(HAVE_GTK FALSE)
\r
282 set(HAVE_GTHREAD FALSE)
\r
285 CHECK_MODULE(gstreamer-base-0.10 HAVE_GSTREAMER)
\r
287 set(HAVE_GSTREAMER FALSE)
\r
292 CHECK_MODULE(libunicap HAVE_UNICAP_)
\r
293 CHECK_MODULE(libucil HAVE_UNICAP_UCIL)
\r
294 if(HAVE_UNICAP_ AND HAVE_UNICAP_UCIL)
\r
298 set(HAVE_UNICAP FALSE)
\r
303 CHECK_MODULE(libavcodec HAVE_FFMPEG_CODEC)
\r
304 CHECK_MODULE(libavformat HAVE_FFMPEG_FORMAT)
\r
305 CHECK_MODULE(libavutil HAVE_FFMPEG_UTIL)
\r
306 CHECK_MODULE(libswscale HAVE_FFMPEG_SWSCALE)
\r
307 CHECK_INCLUDE_FILE(libavformat/avformat.h HAVE_GENTOO_FFMPEG)
\r
308 CHECK_INCLUDE_FILE(ffmpeg/avformat.h HAVE_FFMPEG_FFMPEG)
\r
309 if(NOT HAVE_GENTOO_FFMPEG AND NOT HAVE_FFMPEG_FFMPEG)
\r
310 if(EXISTS /usr/include/ffmpeg/libavformat/avformat.h OR HAVE_FFMPEG_SWSCALE)
\r
311 set(HAVE_GENTOO_FFMPEG 1)
\r
314 if(HAVE_FFMPEG_CODEC AND HAVE_FFMPEG_FORMAT AND HAVE_FFMPEG_UTIL)
\r
315 if(HAVE_FFMPEG_SWSCALE OR NOT HAVE_GENTOO_FFMPEG)
\r
322 CHECK_MODULE(libdc1394-2 HAVE_DC1394_2)
\r
323 if(NOT HAVE_DC1394_2)
\r
324 CHECK_MODULE(libdc1394 HAVE_DC1394)
\r
327 set(HAVE_DC1394_2 FALSE)
\r
328 set(HAVE_DC1394 FALSE)
\r
332 CHECK_INCLUDE_FILE(alloca.h HAVE_ALLOCA_H)
\r
333 CHECK_FUNCTION_EXISTS(alloca HAVE_ALLOCA)
\r
334 CHECK_INCLUDE_FILE(unistd.h HAVE_UNISTD_H)
\r
335 CHECK_INCLUDE_FILE(pthread.h HAVE_LIBPTHREAD)
\r
338 CHECK_MODULE(libxine HAVE_XINE)
\r
340 set(HAVE_XINE FALSE)
\r
343 CHECK_MODULE(libv4l1 HAVE_LIBV4L)
\r
344 CHECK_INCLUDE_FILE(linux/videodev.h HAVE_CAMV4L)
\r
345 CHECK_INCLUDE_FILE(linux/videodev2.h HAVE_CAMV4L2)
\r
347 set(HAVE_LIBV4L FALSE)
\r
348 set(HAVE_CAMV4L FALSE)
\r
349 set(HAVE_CAMV4L2 FALSE)
\r
352 if(NOT OPENCV_BUILD_3RDPARTY_LIBS)
\r
356 CHECK_INCLUDE_FILE(${PNG_PNG_INCLUDE_DIR}/png.h HAVE_PNG_H)
\r
357 CHECK_INCLUDE_FILE(${PNG_PNG_INCLUDE_DIR}/libpng/png.h HAVE_LIBPNG_PNG_H)
\r
360 set(PNG_FOUND FALSE)
\r
365 set(TIFF_FOUND FALSE)
\r
368 include(FindJasper)
\r
370 set(JASPER_FOUND FALSE)
\r
375 set(JPEG_FOUND FALSE)
\r
379 if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
\r
380 set(OPENCV_LINKER_LIBS m pthread)
\r
382 set(OPENCV_LINKER_LIBS dl m pthread rt)
\r
385 add_definitions(-DHAVE_ALLOCA -DHAVE_ALLOCA_H -DHAVE_LIBPTHREAD -DHAVE_UNISTD_H)
\r
389 set(BUILD_NEW_PYTHON_SUPPORT ON CACHE BOOL "Build with Python support")
\r
390 set(BUILD_SWIG_PYTHON_SUPPORT OFF CACHE BOOL "Build with older SWIG-based Python support")
\r
391 set(BUILD_OCTAVE_SUPPORT OFF CACHE BOOL "Build with Octave support")
\r
393 if(BUILD_SWIG_PYTHON_SUPPORT OR BUILD_NEW_PYTHON_SUPPORT)
\r
394 find_package(PythonInterp)
\r
395 find_package(PythonLibs)
\r
397 # cmake 2.4 (at least on Ubuntu 8.04 (hardy)) don't define PYTHONLIBS_FOUND
\r
398 if(NOT PYTHONLIBS_FOUND AND PYTHON_INCLUDE_PATH)
\r
399 set(PYTHONLIBS_FOUND ON)
\r
400 endif(NOT PYTHONLIBS_FOUND AND PYTHON_INCLUDE_PATH)
\r
402 execute_process(COMMAND ${PYTHON_EXECUTABLE} --version
\r
403 ERROR_VARIABLE PYTHON_VERSION_FULL
\r
404 OUTPUT_STRIP_TRAILING_WHITESPACE)
\r
406 string(REGEX MATCH "[0-9].[0-9]" PYTHON_VERSION_MAJOR_MINOR "${PYTHON_VERSION_FULL}")
\r
408 set(PYTHON_PLUGIN_INSTALL_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages/opencv)
\r
409 set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages)
\r
412 get_filename_component(PYTHON_PATH "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${PYTHON_VERSION_MAJOR_MINOR}\\InstallPath]" ABSOLUTE CACHE)
\r
413 set(PYTHON_PLUGIN_INSTALL_PATH "${PYTHON_PATH}/Lib/site-packages/opencv")
\r
414 set(PYTHON_PACKAGES_PATH "${PYTHON_PATH}/Lib/site-packages")
\r
418 if(PYTHONLIBS_FOUND AND BUILD_SWIG_PYTHON_SUPPORT)
\r
423 ############################### IPP ################################
\r
425 set(OPENCV_LOADER_PATH)
\r
429 set(OPENCV_LOADER_PATH DYLD_LIBRARY_PATH)
\r
431 set(OPENCV_LOADER_PATH LD_LIBRARY_PATH)
\r
435 foreach(v "6.1" "6.0" "5.3" "5.2" "5.1")
\r
438 find_path(IPP_PATH "ippi-${v}.dll"
\r
439 PATHS ${CMAKE_PROGRAM_PATH} ${CMAKE_SYSTEM_PROGRAM_PATH}
\r
440 DOC "The path to IPP dynamic libraries")
\r
442 find_path(IPP_PATH "ippiem64t-${v}.dll"
\r
443 PATHS ${CMAKE_PROGRAM_PATH} ${CMAKE_SYSTEM_PROGRAM_PATH}
\r
444 DOC "The path to IPP dynamic libraries")
\r
448 find_path(IPP_PATH "libippi${CMAKE_SHARED_LIBRARY_SUFFIX}.${v}"
\r
449 PATHS ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} ENV ${OPENCV_LOADER_PATH}
\r
450 DOC "The path to IPP dynamic libraries")
\r
452 find_path(IPP_PATH "libippiem64t${CMAKE_SHARED_LIBRARY_SUFFIX}.${v}"
\r
453 PATHS ${CMAKE_LIBRARY_PATH} ${CMAKE_SYSTEM_LIBRARY_PATH} ENV ${OPENCV_LOADER_PATH}
\r
454 DOC "The path to IPP dynamic libraries")
\r
458 file(GLOB IPP_HDRS "${IPP_PATH}/../include")
\r
460 set(IPP_FOUND TRUE)
\r
466 message(STATUS "IPP detected: ${IPP_FOUND}")
\r
468 if(WIN32 AND NOT MSVC)
\r
472 set(USE_IPP ${IPP_FOUND} CACHE BOOL "Use IPP when available")
\r
474 if(IPP_FOUND AND USE_IPP)
\r
475 add_definitions(-DHAVE_IPP)
\r
476 include_directories("${IPP_PATH}/../include")
\r
477 link_directories("${IPP_PATH}/../lib")
\r
479 file(GLOB em64t_files "${IPP_PATH}/../lib/*em64t*")
\r
482 set(IPP_ARCH "em64t")
\r
485 set(A ${CMAKE_STATIC_LIBRARY_PREFIX})
\r
486 set(B ${IPP_ARCH}${CMAKE_STATIC_LIBRARY_SUFFIX})
\r
492 set(IPP_LIBS ${A}ippsmerged${B} ${A}ippsemerged${B}
\r
493 ${A}ippimerged${B} ${A}ippiemerged${B}
\r
494 ${A}ippvmmerged${B} ${A}ippvmemerged${B}
\r
495 ${A}ippccmerged${B} ${A}ippccemerged${B}
\r
496 ${A}ippcvmerged${B} ${A}ippcvemerged${B}
\r
497 ${A}ippcore${L}${B})
\r
501 ################## LATEX ##################
\r
502 set(BUILD_LATEX_DOCS OFF CACHE BOOL "Build LaTeX OpenCV Documentation")
\r
504 # ----------------------------------------------------------------------------
\r
505 # UPDATE CONFIG FILES & SCRIPTS:
\r
507 # CONFIGURE_FILE(InputFile OutputFile [COPYONLY] [ESCAPE_QUOTES] [@ONLY])
\r
508 # If @ONLY is specified, only variables of the form @VAR@ will be
\r
509 # replaces and ${VAR} will be ignored.
\r
511 # A directory will be created for each platform so the "cvconfig.h" file is
\r
512 # not overwritten if cmake generates code in the same path.
\r
513 # ----------------------------------------------------------------------------
\r
514 add_definitions(-DHAVE_CONFIG_H)
\r
516 set(OPENCV_CONFIG_FILE_INCLUDE_DIR "${CMAKE_BINARY_DIR}/" CACHE PATH "Where to create the platform-dependant cvconfig.h")
\r
518 message(STATUS "Parsing 'cvconfig.h.cmake'")
\r
519 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cvconfig.h.cmake" "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/cvconfig.h")
\r
521 # ---------------------------------------------------------------------------
\r
522 # The C+//0 include & link directories:
\r
523 # ---------------------------------------------------------------------------
\r
524 include_directories("."
\r
525 "${OPENCV_CONFIG_FILE_INCLUDE_DIR}"
\r
526 "${CMAKE_CURRENT_SOURCE_DIR}/include"
\r
527 "${CMAKE_CURRENT_SOURCE_DIR}/include/opencv"
\r
530 # ----------------------------------------------------------------------------
\r
531 # Set the maximum level of warnings:
\r
532 # ----------------------------------------------------------------------------
\r
533 # Should be set to true for development
\r
534 set(OPENCV_WARNINGS_ARE_ERRORS OFF CACHE BOOL "Treat warnings as errors")
\r
536 # Whole program optimization?
\r
537 set(OPENCV_WHOLE_PROGRAM_OPTIMIZATION OFF CACHE BOOL "Flags for whole program optimization.")
\r
539 set(EXTRA_C_FLAGS "")
\r
540 set(EXTRA_C_FLAGS_RELEASE "")
\r
541 set(EXTRA_C_FLAGS_DEBUG "")
\r
542 set(EXTRA_EXE_LINKER_FLAGS "")
\r
543 set(EXTRA_EXE_LINKER_FLAGS_RELEASE "")
\r
544 set(EXTRA_EXE_LINKER_FLAGS_DEBUG "")
\r
547 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE /D _SCL_SECURE_NO_WARNINGS")
\r
548 # 64-bit portability warnings, in MSVC8
\r
550 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} /Wp64")
\r
553 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} /D _BIND_TO_CURRENT_CRT_VERSION=1 /D _BIND_TO_CURRENT_VCLIBS_VERSION=1")
\r
556 set(EXTRA_EXE_LINKER_FLAGS_RELEASE "${EXTRA_EXE_LINKER_FLAGS_RELEASE} /debug")
\r
558 # Whole program optimization
\r
559 if(OPENCV_WHOLE_PROGRAM_OPTIMIZATION AND MSVC_VERSION GREATER 1300)
\r
560 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} /GL")
\r
561 set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG")
\r
562 set(CMAKE_MODULE_LINKER_FLAGS_RELEASE "${CMAKE_MODULE_LINKER_FLAGS_RELEASE} /LTCG")
\r
566 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} /openmp")
\r
569 # Remove unreferenced functions: function level linking
\r
570 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} /Gy")
\r
571 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} /Zi")
\r
574 if(CMAKE_COMPILER_IS_GNUCXX)
\r
575 # High level of warnings.
\r
576 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Wall")
\r
578 # The -Wno-long-long is required in 64bit systems when including sytem headers.
\r
579 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES x86_64*)
\r
580 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Wno-long-long")
\r
582 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES amd64*)
\r
583 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Wno-long-long")
\r
586 # We need pthread's
\r
588 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -pthread")
\r
591 if(OPENCV_WARNINGS_ARE_ERRORS)
\r
592 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Werror")
\r
595 # Whole program optimization
\r
596 if(OPENCV_WHOLE_PROGRAM_OPTIMIZATION)
\r
597 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -fwhole-program --combine")
\r
600 # Other optimizations
\r
601 if(USE_OMIT_FRAME_POINTER)
\r
602 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -fomit-frame-pointer")
\r
605 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -O2")
\r
608 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -O3")
\r
611 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -ffast-math")
\r
614 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -mcpu=G3 -mtune=G5")
\r
617 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -mmmx")
\r
619 # SSE should be disabled under MingW because it generates compiler errors
\r
621 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -msse")
\r
623 # SSE2 should be disabled under MingW because it generates compiler errors
\r
625 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -msse2")
\r
627 # SSE3 should be disabled under MingW because it generates compiler errors
\r
628 if(USE_SSE3 AND NOT MINGW)
\r
629 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -msse3")
\r
633 if(ENABLE_PROFILING)
\r
634 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -pg -g")
\r
636 # Remove unreferenced functions: function level linking
\r
638 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -ffunction-sections")
\r
644 set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -D_GLIBCXX_PARALLEL -fopenmp")
\r
645 set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} gomp)
\r
648 set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -DNDEBUG")
\r
649 set(EXTRA_C_FLAGS_DEBUG "${EXTRA_C_FLAGS_DEBUG} -O0 -DDEBUG -D_DEBUG")
\r
653 # Add user supplied extra options (optimization, etc...)
\r
654 # ==========================================================
\r
655 set(OPENCV_EXTRA_C_FLAGS "" CACHE STRING "Extra compiler options")
\r
656 set(OPENCV_EXTRA_C_FLAGS_RELEASE "" CACHE STRING "Extra compiler options for Release build")
\r
657 set(OPENCV_EXTRA_C_FLAGS_DEBUG "" CACHE STRING "Extra compiler options for Debug build")
\r
658 set(OPENCV_EXTRA_EXE_LINKER_FLAGS "" CACHE STRING "Extra linker flags" FORCE)
\r
659 set(OPENCV_EXTRA_EXE_LINKER_FLAGS_RELEASE "" CACHE STRING "Extra linker flags for Release build" FORCE)
\r
660 set(OPENCV_EXTRA_EXE_LINKER_FLAGS_DEBUG "" CACHE STRING "Extra linker flags for Debug build" FORCE)
\r
662 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_C_FLAGS} ${OPENCV_EXTRA_C_FLAGS}")
\r
663 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_C_FLAGS} ${OPENCV_EXTRA_C_FLAGS}")
\r
664 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${EXTRA_C_FLAGS_RELEASE} ${OPENCV_EXTRA_C_FLAGS_RELEASE}")
\r
665 set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} ${EXTRA_C_FLAGS_RELEASE} ${OPENCV_EXTRA_C_FLAGS_RELEASE}")
\r
666 set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${EXTRA_C_FLAGS_DEBUG} ${OPENCV_EXTRA_C_FLAGS_DEBUG}")
\r
667 set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} ${EXTRA_C_FLAGS_DEBUG} ${OPENCV_EXTRA_C_FLAGS_DEBUG}")
\r
668 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${EXTRA_EXE_LINKER_FLAGS} ${OPENCV_EXTRA_EXE_LINKER_FLAGS}")
\r
669 set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} ${EXTRA_EXE_LINKER_FLAGS_RELEASE} ${OPENCV_EXTRA_EXE_LINKER_FLAGS_RELEASE}")
\r
670 set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${EXTRA_EXE_LINKER_FLAGS_DEBUG} ${OPENCV_EXTRA_EXE_LINKER_FLAGS_DEBUG}")
\r
672 # In case of Makefiles if the user does not setup CMAKE_BUILD_TYPE, assume it's Release:
\r
673 if (${CMAKE_GENERATOR} MATCHES ".*Makefiles")
\r
674 if("${CMAKE_BUILD_TYPE}" STREQUAL "")
\r
675 set(CMAKE_BUILD_TYPE Release)
\r
679 if (WIN32 AND MSVC)
\r
680 # avoid warnings from MSVC about overriding the /W* option
\r
681 # we replace /W3 with /W4 only for C++ files,
\r
682 # since all the 3rd-party libraries OpenCV uses are in C,
\r
683 # and we do not care about their warnings.
\r
684 string(REPLACE "/W3" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
\r
685 string(REPLACE "/W3" "/W4" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
\r
686 string(REPLACE "/W3" "/W4" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
\r
689 if("${CMAKE_CONFIGURE_LDFLAGS}")
\r
690 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_CONFIGURE_LDFLAGS}")
\r
691 endif("${CMAKE_CONFIGURE_LDFLAGS}")
\r
693 # ----------------------------------------------------------------------------
\r
694 # PROCESS SUBDIRECTORIES:
\r
695 # ----------------------------------------------------------------------------
\r
696 # Save libs and executables in the same place
\r
697 set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib CACHE PATH "Output directory for libraries" )
\r
698 set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin CACHE PATH "Output directory for applications" )
\r
701 set(OPENCV_DOC_INSTALL_PATH doc)
\r
703 set(OPENCV_DOC_INSTALL_PATH share/opencv/doc)
\r
706 # --------------------------------------------------------------------------------------------
\r
707 # Installation for CMake Module: OpenCVConfig.cmake
\r
708 # Part 1/3: ${BIN_DIR}/OpenCVConfig.cmake -> For use *without* "make install"
\r
709 # Part 2/3: ${BIN_DIR}/unix-install/OpenCVConfig.cmake -> For use with "make install"
\r
710 # Part 3/3: ${BIN_DIR}/win-install/OpenCVConfig.cmake -> For use within binary installers/packages
\r
711 # -------------------------------------------------------------------------------------------
\r
713 # -------------------------------------------------------------------------------------------
\r
714 # Part 1/3: ${BIN_DIR}/OpenCVConfig.cmake -> For use *without* "make install"
\r
715 # -------------------------------------------------------------------------------------------
\r
717 # Name of libraries is: libcv.so.1.1.0, etc...
\r
718 # OPENCV_DLLVERSION must be set to "110", etc..
\r
719 # Already done above.
\r
721 # Set CMAKE_INCLUDE_DIRS_CONFIGCMAKE to the list of include directories:
\r
722 set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "\"${OPENCV_CONFIG_FILE_INCLUDE_DIR}\" \"${CMAKE_CURRENT_SOURCE_DIR}/include\" \"${CMAKE_CURRENT_SOURCE_DIR}/include/opencv\"")
\r
724 set(CMAKE_LIB_DIRS_CONFIGCMAKE "${LIBRARY_OUTPUT_PATH}")
\r
726 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/OpenCVConfig.cmake" IMMEDIATE @ONLY)
\r
728 # --------------------------------------------------------------------------------------------
\r
729 # Part 2/3: ${BIN_DIR}/unix-install/OpenCVConfig.cmake -> For use *with* "make install"
\r
730 # -------------------------------------------------------------------------------------------
\r
731 # Set CMAKE_INCLUDE_DIRS_CONFIGCMAKE to the list of include directories:
\r
733 set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "${CMAKE_INSTALL_PREFIX}/include/opencv")
\r
734 set(CMAKE_LIB_DIRS_CONFIGCMAKE "${CMAKE_INSTALL_PREFIX}/lib")
\r
736 #exec_program(${CMAKE_COMMAND} ARGS "-E make_directory \"${CMAKE_BINARY_DIR}/unix-install/\"")
\r
737 exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/unix-install/\"")
\r
738 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/unix-install/OpenCVConfig.cmake" IMMEDIATE @ONLY)
\r
741 # For a command "FIND_PACKAGE(FOO)", CMake will look at the directory /usr/share|lib/FOO/FOOConfig.cmake, so:
\r
742 install(FILES ${CMAKE_BINARY_DIR}/unix-install/OpenCVConfig.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/share/opencv/)
\r
745 # --------------------------------------------------------------------------------------------
\r
746 # Part 3/3: ${BIN_DIR}/win-install/OpenCVConfig.cmake -> For use within binary installers/packages
\r
747 # -------------------------------------------------------------------------------------------
\r
749 # Set CMAKE_INCLUDE_DIRS_CONFIGCMAKE to the list of include directories:
\r
751 # This will expand to, for example, <program files>/OpenCV 1.1.0/include
\r
752 set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/include\" \"\${THIS_OPENCV_CONFIG_PATH}/include/opencv\"")
\r
754 # This will expand to, for example, <program files>/OpenCV 1.1.0/lib
\r
755 set(CMAKE_LIB_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/lib\"")
\r
757 #exec_program(${CMAKE_COMMAND} ARGS "-E make_directory \"${CMAKE_BINARY_DIR}/win-install/\"")
\r
758 exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/win-install/\"")
\r
759 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake" IMMEDIATE @ONLY)
\r
763 # --------------------------------------------------------------------------------------------
\r
764 # Part 2/2: ${BIN_DIR}/unix-install/opencv.pc -> For use *with* "make install"
\r
766 # exec_prefix=${prefix}
\r
767 # libdir=${exec_prefix}/lib
\r
768 # includedir=${prefix}/include/opencv
\r
769 # -------------------------------------------------------------------------------------------
\r
770 set(prefix ${CMAKE_INSTALL_PREFIX})
\r
771 set(exec_prefix "\${prefix}")
\r
772 set(libdir "\${exec_prefix}/lib")
\r
773 set(includedir "\${prefix}/include")
\r
774 set(VERSION ${OPENCV_VERSION})
\r
776 configure_file("${CMAKE_CURRENT_SOURCE_DIR}/opencv.pc.cmake.in" "${CMAKE_BINARY_DIR}/unix-install/opencv.pc" @ONLY IMMEDIATE)
\r
779 install(FILES ${CMAKE_BINARY_DIR}/unix-install/opencv.pc DESTINATION lib/pkgconfig)
\r
783 # ----------------------------------------------------------------------------
\r
784 # Uninstall target, for "make uninstall"
\r
785 # ----------------------------------------------------------------------------
\r
787 "${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
\r
788 "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
\r
791 ADD_CUSTOM_TARGET(uninstall
\r
792 "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
\r
795 # ----------------------------------------------------------------------------
\r
797 # ----------------------------------------------------------------------------
\r
799 set(BUILD_PACKAGE OFF CACHE BOOL "Build a installer with the SDK")
\r
805 ${CMAKE_BINARY_DIR}/.cpack/Package.cmake
\r
809 include(${CMAKE_BINARY_DIR}/.cpack/Package.cmake)
\r
811 set(root_files README ChangeLog configure)
\r
813 file(GLOB root_src_files *.in *.sh *.cmake CMakeLists.txt)
\r
816 install(FILES ${root_files}
\r
817 DESTINATION ${OPENCV_DOC_INSTALL_PATH}
\r
820 install(FILES ${root_files}
\r
823 install(FILES ${root_src_files}
\r
826 # Add the "win-install/OpenCVConfig.cmake" file to the "main" install component
\r
828 "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake"
\r
833 if(CMAKE_INSTALL_DEBUG_LIBRARIES)
\r
834 foreach(m cxcore cv cvaux ml highgui opencv_ffmpeg)
\r
835 install(FILES ${CMAKE_BINARY_DIR}/bin/Debug/${m}${OPENCV_DLLVERSION}d.dll
\r
836 DESTINATION bin COMPONENT main)
\r
837 install(FILES ${CMAKE_BINARY_DIR}/lib/Debug/${m}${OPENCV_DLLVERSION}d.lib
\r
838 DESTINATION lib COMPONENT main)
\r
842 install(DIRECTORY data samples DESTINATION "." COMPONENT main PATTERN ".svn" EXCLUDE)
\r
843 install(DIRECTORY 3rdparty apps interfaces src tests utils DESTINATION "." COMPONENT src PATTERN ".svn" EXCLUDE)
\r
844 install(DIRECTORY doc/ DESTINATION doc COMPONENT src FILES_MATCHING PATTERN "*.tex")
\r
845 install(DIRECTORY doc/pics DESTINATION doc COMPONENT src PATTERN ".svn" EXCLUDE)
\r
846 install(DIRECTORY doc/plastex DESTINATION doc COMPONENT src PATTERN ".svn" EXCLUDE)
\r
852 #-----------------------------------
\r
854 #-----------------------------------
\r
855 add_subdirectory(src)
\r
856 add_subdirectory(apps)
\r
858 if(BUILD_LATEX_DOCS)
\r
859 include(OpenCVFindLATEX.cmake REQUIRED)
\r
861 if(PDFLATEX_COMPILER)
\r
862 message(STATUS "PDF LaTeX found!")
\r
866 add_subdirectory(doc)
\r
867 add_subdirectory(data)
\r
869 if(BUILD_EXAMPLES OR INSTALL_PYTHON_EXAMPLES OR INSTALL_OCTAVE_EXAMPLES)
\r
870 add_subdirectory(samples)
\r
875 add_subdirectory(tests)
\r
878 add_subdirectory(interfaces)
\r
879 add_subdirectory(3rdparty)
\r
882 # ----------------------------------------------------------------------------
\r
884 # ----------------------------------------------------------------------------
\r
886 message(STATUS "General configuration for opencv ${OPENCV_VERSION} =====================================")
\r
888 message(STATUS " Compiler: ${CMAKE_COMPILER}")
\r
889 message(STATUS " C++ flags (Release): ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELEASE}")
\r
890 message(STATUS " C++ flags (Debug): ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_DEBUG}")
\r
892 message(STATUS " Linker flags (Release): ${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_EXE_LINKER_FLAGS_RELEASE}")
\r
893 message(STATUS " Linker flags (Debug): ${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_EXE_LINKER_FLAGS_DEBUG}")
\r
895 message(STATUS " Linker flags (Release): ${CMAKE_SHARED_LINKER_FLAGS} ${CMAKE_SHARED_LINKER_FLAGS_RELEASE}")
\r
896 message(STATUS " Linker flags (Debug): ${CMAKE_SHARED_LINKER_FLAGS} ${CMAKE_SHARED_LINKER_FLAGS_DEBUG}")
\r
902 message(STATUS " GUI: ")
\r
903 message(STATUS " GTK+ 2.x: ${HAVE_GTK}")
\r
904 message(STATUS " GThread: ${HAVE_GTHREAD}")
\r
906 if(NOT OPENCV_BUILD_3RDPARTY_LIBS)
\r
907 message(STATUS " Image I/O: ")
\r
908 message(STATUS " JPEG: ${JPEG_FOUND}")
\r
909 message(STATUS " PNG: ${PNG_FOUND}")
\r
910 message(STATUS " TIFF: ${TIFF_FOUND}")
\r
911 message(STATUS " JASPER: ${JASPER_FOUND}")
\r
913 message(STATUS " Image I/O: ")
\r
914 message(STATUS " JPEG: build")
\r
915 message(STATUS " PNG: build")
\r
916 message(STATUS " TIFF: build")
\r
917 message(STATUS " JASPER: build")
\r
921 message(STATUS " Video I/O: ")
\r
922 message(STATUS " DC1394 1.x: ${HAVE_DC1394}")
\r
923 message(STATUS " DC1394 2.x: ${HAVE_DC1394_2}")
\r
924 message(STATUS " FFMPEG: ${HAVE_FFMPEG}")
\r
925 message(STATUS " codec: ${HAVE_FFMPEG_CODEC}")
\r
926 message(STATUS " format: ${HAVE_FFMPEG_FORMAT}")
\r
927 message(STATUS " util: ${HAVE_FFMPEG_UTIL}")
\r
928 message(STATUS " swscale: ${HAVE_FFMPEG_SWSCALE}")
\r
929 message(STATUS " gentoo-style: ${HAVE_GENTOO_FFMPEG}")
\r
930 message(STATUS " GStreamer: ${HAVE_GSTREAMER}")
\r
931 message(STATUS " UniCap: ${HAVE_UNICAP}")
\r
933 message(STATUS " V4L/V4L2: Using libv4l")
\r
935 message(STATUS " V4L/V4L2: ${HAVE_CAMV4L}/${HAVE_CAMV4L2}")
\r
937 message(STATUS " Xine: ${HAVE_XINE}")
\r
940 message(STATUS " Interfaces: ")
\r
941 if(PYTHONLIBS_FOUND AND BUILD_SWIG_PYTHON_SUPPORT)
\r
942 message(STATUS " Old Python: 1")
\r
944 message(STATUS " Old Python: 0")
\r
946 message(STATUS " Python: ${BUILD_NEW_PYTHON_SUPPORT}")
\r
947 if(IPP_FOUND AND USE_IPP)
\r
948 message(STATUS " Use IPP: ${IPP_PATH}")
\r
950 message(STATUS " Use IPP: NO")
\r
952 if(BUILD_LATEX_DOCS AND PDFLATEX_COMPILER)
\r
953 message(STATUS " Build Documentation 1")
\r
955 message(STATUS " Build Documentation 0")
\r
958 message(STATUS " Install path: ${CMAKE_INSTALL_PREFIX}")
\r
960 message(STATUS " cvconfig.h is in: ${OPENCV_CONFIG_FILE_INCLUDE_DIR}")
\r
961 message(STATUS "-----------------------------------------------------------------")
\r
964 #----------------------------------------------------------------------------
\r
965 # Generate the OpenCVConfig.cmake file for unix
\r
966 # installation in CMAKE_INSTALL_PREFIX
\r
967 #----------------------------------------------------------------------------
\r