\r
if(UNIX)\r
set(WITH_FFMPEG ON CACHE BOOL "Include FFMPEG support")\r
- set(WITH_UNICAP ON CACHE BOOL "Include Unicap support")\r
- set(WITH_PVAPI ON CACHE BOOL "Include Prosilica GigE support")\r
- set(WITH_GTK ON CACHE BOOL "Include GTK support")\r
- set(WITH_GSTREAMER ON CACHE BOOL "Include Gstreamer support")\r
- set(WITH_1394 ON CACHE BOOL "Include IEEE1394 support")\r
- set(WITH_V4L ON CACHE BOOL "Include Video 4 Linux support")\r
- set(WITH_XINE ON CACHE BOOL "Include Xine support")\r
+ if(NOT APPLE)\r
+ set(WITH_UNICAP OFF CACHE BOOL "Include Unicap support (GPL)")\r
+ set(WITH_GTK ON CACHE BOOL "Include GTK support")\r
+ set(WITH_GSTREAMER ON CACHE BOOL "Include Gstreamer support")\r
+ set(WITH_V4L ON CACHE BOOL "Include Video 4 Linux support")\r
+ set(WITH_XINE OFF CACHE BOOL "Include Xine support (GPL)")\r
+ endif()\r
+ set(WITH_PVAPI ON CACHE BOOL "Include Prosilica GigE support")\r
+ set(WITH_1394 ON CACHE BOOL "Include IEEE1394 support")\r
+endif()\r
+\r
+if(APPLE)\r
+ set(WITH_CARBON OFF CACHE BOOL "Use Carbon for UI instead of Cocoa")\r
+ set(WITH_QUICKTIME OFF CACHE BOOL "Use QuickTime for Video I/O insted of QTKit")\r
endif()\r
\r
set(WITH_TBB OFF CACHE BOOL "Include TBB support")\r
############################### TBB ################################\r
\r
if (WITH_TBB)\r
- if (WIN32 OR APPLE)\r
- find_path(TBB_INCLUDE_DIRS "tbb/tbb.h"\r
- PATHS "/usr/include" "/usr/local/include"\r
- DOC "The path to TBB headers")\r
- \r
- if (TBB_INCLUDE_DIRS)\r
- if (WIN32)\r
- set(TBB_LIB "${TBB_INCLUDE_DIRS}/../lib/tbb.lib" CACHE PATH "Full name of TBB library")\r
- else()\r
- set(TBB_LIB "${TBB_INCLUDE_DIRS}/../lib/libtbb.dylib" CACHE PATH "Full name of TBB library")\r
- endif()\r
- set(HAVE_TBB 1)\r
- include_directories("${TBB_INCLUDE_DIRS}")\r
- set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} ${TBB_LIB})\r
- endif()\r
- else()\r
+ if (UNIX AND NOT APPLE)\r
PKG_CHECK_MODULES(TBB tbb)\r
message(STATUS "TBB detected: ${TBBLIB_FOUND}")\r
-\r
- if (TBB_FOUND)\r
+ \r
+ if (TBB_FOUND) \r
set(HAVE_TBB 1)\r
-\r
if(NOT "${TBB_INCLUDE_DIRS}" STREQUAL "")\r
include_directories("${TBB_INCLUDE_DIRS}")\r
endif()\r
-\r
link_directories("${TBB_LIBRARY_DIRS}")\r
set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} ${TBB_LIBRARIES})\r
+ else()\r
+ set(TBB_DEFAULT_INCLUDE_DIRS\r
+ "/opt/intel/tbb"\r
+ "/usr/local/include"\r
+ "/usr/include") \r
+ endif()\r
+ endif() \r
+ if (APPLE)\r
+ set(TBB_DEFAULT_INCLUDE_DIRS\r
+ "/usr/include"\r
+ "/usr/local/include") \r
+ endif() \r
+ if (WIN32)\r
+ set(TBB_DEFAULT_INCLUDE_DIRS\r
+ "C:/Program Files/Intel/TBB"\r
+ "C:/Program Files (x86)/Intel/TBB") \r
+ endif() \r
+ if (NOT HAVE_TBB)\r
+ find_path(TBB_INCLUDE_DIR "tbb/tbb.h"\r
+ PATHS TBB_DEFAULT_INCLUDE_DIRS\r
+ DOC "The path to TBB headers")\r
+ if (TBB_INCLUDE_DIR)\r
+ if (UNIX)\r
+ set(TBB_LIB_DIR "${TBB_INCLUDE_DIR}/../lib" CACHE PATH "Full path of TBB library directory")\r
+ link_directories("${TBB_LIB_DIR}")\r
+ endif()\r
+ if (APPLE)\r
+ set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} libtbb.dylib)\r
+ elseif (UNIX)\r
+ set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} tbb)\r
+ elseif (WIN32)\r
+ if (CMAKE_COMPILER_IS_GNUCXX)\r
+ set(TBB_LIB_DIR "${TBB_INCLUDE_DIR}/../lib" CACHE PATH "Full path of TBB library directory")\r
+ link_directories("${TBB_LIB_DIR}")\r
+ set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} tbb)\r
+ else()\r
+ if(${CMAKE_SYSTEM_PROCESSOR} MATCHES amd64*)\r
+ set(X86_64 1)\r
+ endif()\r
+ if(${CMAKE_SYSTEM_PROCESSOR} MATCHES x86_64*)\r
+ set(X86_64 1)\r
+ endif()\r
+ if(${CMAKE_SYSTEM_PROCESSOR} MATCHES i686*)\r
+ set(X86 1)\r
+ endif()\r
+ if(${CMAKE_SYSTEM_PROCESSOR} MATCHES i386*)\r
+ set(X86 1)\r
+ endif()\r
+ if(${CMAKE_SYSTEM_PROCESSOR} MATCHES x86*)\r
+ set(X86 1)\r
+ endif()\r
+ \r
+ set(_TBB_LIB_PATH "${TBB_INCLUDE_DIR}/../lib")\r
+ if (X86_64)\r
+ set(_TBB_LIB_PATH "${_TBB_LIB_PATH}/intel64")\r
+ elseif(X86)\r
+ set(_TBB_LIB_PATH "${_TBB_LIB_PATH}/ia32")\r
+ endif()\r
+ if (MSVC80)\r
+ set(_TBB_LIB_PATH "${_TBB_LIB_PATH}/vc8")\r
+ elseif(MSVC90)\r
+ set(_TBB_LIB_PATH "${_TBB_LIB_PATH}/vc9")\r
+ endif()\r
+ set(TBB_LIB_DIR "${_TBB_LIB_PATH}" CACHE PATH "Full path of TBB library directory")\r
+ link_directories("${TBB_LIB_DIR}")\r
+ endif()\r
+ endif()\r
+ \r
+ set(HAVE_TBB 1)\r
+ if(NOT "${TBB_INCLUDE_DIR}" STREQUAL "")\r
+ include_directories("${TBB_INCLUDE_DIR}")\r
+ endif()\r
endif()\r
endif()\r
endif()\r
set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -Werror")\r
endif()\r
\r
+ if(X86)\r
+ if(NOT X86_64)\r
+ if(NOT APPLE)\r
+ set(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} -march=i686")\r
+ endif()\r
+ endif()\r
+ endif()\r
+\r
# Other optimizations\r
if(USE_OMIT_FRAME_POINTER)\r
set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -fomit-frame-pointer")\r
message(STATUS "")\r
endif()\r
\r
+if(APPLE)\r
+message(STATUS "")\r
+if(HAVE_CARBON)\r
+message(STATUS " GUI Back-end: Carbon")\r
+else()\r
+message(STATUS " GUI Back-end: Cocoa")\r
+endif()\r
+message(STATUS "")\r
+endif() \r
+\r
message(STATUS " Image I/O: ")\r
if(NOT WITH_JPEG OR JPEG_FOUND)\r
message(STATUS " JPEG: ${JPEG_FOUND}")\r
message(STATUS " Xine: ${HAVE_XINE}")\r
endif()\r
\r
+if(APPLE)\r
+message(STATUS "")\r
+if(WITH_QUICKTIME)\r
+message(STATUS " Video I/O: QuickTime")\r
+else()\r
+message(STATUS " Video I/O: QTKit")\r
+endif()\r
+endif()\r
+\r
message(STATUS "")\r
message(STATUS " Interfaces: ")\r
if(PYTHONLIBS_FOUND AND BUILD_SWIG_PYTHON_SUPPORT)\r