--- CMakeLists.txt.orig 2010-11-04 02:37:50.640625000 +0200 +++ CMakeLists.txt.new 2010-11-04 15:30:10.122609400 +0200 @@ -1057,7 +1057,7 @@ set(CMAKE_LIB_DIRS_CONFIGCMAKE "${CMAKE_INSTALL_PREFIX}/lib") #exec_program(${CMAKE_COMMAND} ARGS "-E make_directory \"${CMAKE_BINARY_DIR}/unix-install/\"") -exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/unix-install/\"") +exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/unix-install/\"" OUTPUT_VARIABLE RET_VAL) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/unix-install/OpenCVConfig.cmake" IMMEDIATE @ONLY) if(UNIX) @@ -1069,18 +1069,42 @@ # Part 3/3: ${BIN_DIR}/win-install/OpenCVConfig.cmake -> For use within binary installers/packages # ------------------------------------------------------------------------------------------- if(WIN32) + # Set CMAKE_INCLUDE_DIRS_CONFIGCMAKE to the list of include directories: + # support for 3rdparty libraries. # This will expand to, for example, /OpenCV 1.1.0/include - set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/include\" \"\${THIS_OPENCV_CONFIG_PATH}/include/opencv\"") - set(CMAKE_BASE_INCLUDE_DIRS_CONFIGCMAKE "\"${THIS_OPENCV_CONFIG_PATH}\"") + set(CMAKE_INCLUDE_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/include\" + \"\${THIS_OPENCV_CONFIG_PATH}/include/opencv\" + \"\${THIS_OPENCV_CONFIG_PATH}/3rdparty/include\"") + + set(CMAKE_BASE_INCLUDE_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}\"") # This will expand to, for example, /OpenCV 1.1.0/lib - set(CMAKE_LIB_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/lib\"") + # support for 3rdparty libraries. + set(CMAKE_LIB_DIRS_CONFIGCMAKE "\"\${THIS_OPENCV_CONFIG_PATH}/lib\" + \"\${THIS_OPENCV_CONFIG_PATH}/3rdparty/lib\"") #exec_program(${CMAKE_COMMAND} ARGS "-E make_directory \"${CMAKE_BINARY_DIR}/win-install/\"") - exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/win-install/\"") + exec_program(mkdir ARGS "-p \"${CMAKE_BINARY_DIR}/win-install/\"" OUTPUT_VARIABLE RET_VAL) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake" IMMEDIATE @ONLY) + + # Configure the OpenCVConfig.cmake file to have the right paths pointing to the install directory + configure_file("${CMAKE_CURRENT_SOURCE_DIR}/OpenCVConfig.cmake.in" "${CMAKE_INSTALL_PREFIX}/OpenCVConfig.cmake" IMMEDIATE @ONLY) + + # if videoInput support is enabled (which is by default on WIN32) copy the static library required to the installation path + # DESTINATION could also be "${CMAKE_INSTALL_PREFIX}/lib") to simplify dev environment setup of client applications + IF(HAVE_VIDEOINPUT) + install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/lib/videoInput.lib" "${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/lib/videoInput64.lib" + DESTINATION "${CMAKE_INSTALL_PREFIX}/3rdparty/lib") + + install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/include/videoInput.h" DESTINATION "${CMAKE_INSTALL_PREFIX}/3rdparty/include") + ENDIF() + + # Add the OpenCV configuration header to the install path + # Useful for instance if a client application checks against the features OpenCV has been compiled with + install(FILES "${CMAKE_BINARY_DIR}/cvconfig.h" DESTINATION "${CMAKE_INSTALL_PREFIX}/include") + endif()