mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-19 07:17:49 +08:00
161 lines
7.9 KiB
Diff
161 lines
7.9 KiB
Diff
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index 3ee50ff..64b0405 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -250,6 +250,10 @@ OCV_OPTION(INSTALL_PYTHON_EXAMPLES "Install Python examples" OFF )
|
|
OCV_OPTION(INSTALL_ANDROID_EXAMPLES "Install Android examples" OFF IF ANDROID )
|
|
OCV_OPTION(INSTALL_TO_MANGLED_PATHS "Enables mangled install paths, that help with side by side installs." OFF IF (UNIX AND NOT ANDROID AND NOT APPLE_FRAMEWORK AND BUILD_SHARED_LIBS) )
|
|
OCV_OPTION(INSTALL_TESTS "Install accuracy and performance test binaries and test data" OFF)
|
|
+OCV_OPTION(INSTALL_HEADERS "Install header files" ON)
|
|
+OCV_OPTION(INSTALL_LICENSE "Install license file" ON)
|
|
+OCV_OPTION(INSTALL_OTHER "Install other files" ON)
|
|
+OCV_OPTION(INSTALL_FORCE_UNIX_PATHS "Force unix-style installation" OFF)
|
|
|
|
# OpenCV build options
|
|
# ===================================================
|
|
@@ -315,7 +319,9 @@ else()
|
|
endif()
|
|
|
|
if(WIN32 AND CMAKE_HOST_SYSTEM_NAME MATCHES Windows)
|
|
- if(DEFINED OpenCV_RUNTIME AND DEFINED OpenCV_ARCH)
|
|
+ if(DEFINED OpenCV_DISABLE_ARCH_PATH)
|
|
+ set(OpenCV_INSTALL_BINARIES_PREFIX "")
|
|
+ elseif(DEFINED OpenCV_RUNTIME AND DEFINED OpenCV_ARCH)
|
|
set(OpenCV_INSTALL_BINARIES_PREFIX "${OpenCV_ARCH}/${OpenCV_RUNTIME}/")
|
|
else()
|
|
message(STATUS "Can't detect runtime and/or arch")
|
|
@@ -379,7 +385,7 @@ else()
|
|
set(OPENCV_3P_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}staticlib${LIB_SUFFIX}")
|
|
set(OPENCV_SAMPLES_SRC_INSTALL_PATH samples/native)
|
|
set(OPENCV_JAR_INSTALL_PATH java)
|
|
- set(OPENCV_OTHER_INSTALL_PATH etc)
|
|
+ set(OPENCV_OTHER_INSTALL_PATH etc CACHE STRING "")
|
|
else()
|
|
set(OPENCV_LIB_INSTALL_PATH lib${LIB_SUFFIX})
|
|
set(OPENCV_3P_LIB_INSTALL_PATH share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH})
|
|
@@ -393,7 +399,7 @@ else()
|
|
if(LIB_SUFFIX AND NOT SIZEOF_VOID_P_BITS EQUAL LIB_SUFFIX)
|
|
set(OPENCV_CONFIG_INSTALL_PATH lib${LIB_SUFFIX}/cmake/opencv)
|
|
else()
|
|
- set(OPENCV_CONFIG_INSTALL_PATH share/OpenCV)
|
|
+ set(OPENCV_CONFIG_INSTALL_PATH share/OpenCV CACHE STRING "")
|
|
endif()
|
|
endif()
|
|
|
|
@@ -734,7 +740,7 @@ if(NOT OPENCV_LICENSE_FILE)
|
|
endif()
|
|
|
|
# for UNIX it does not make sense as LICENSE and readme will be part of the package automatically
|
|
-if(ANDROID OR NOT UNIX)
|
|
+if(ANDROID OR NOT UNIX AND INSTALL_LICENSE)
|
|
install(FILES ${OPENCV_LICENSE_FILE}
|
|
PERMISSIONS OWNER_READ GROUP_READ WORLD_READ
|
|
DESTINATION ${CMAKE_INSTALL_PREFIX} COMPONENT libs)
|
|
diff --git a/cmake/OpenCVGenConfig.cmake b/cmake/OpenCVGenConfig.cmake
|
|
index dbfd7ca..8bfa448 100644
|
|
--- a/cmake/OpenCVGenConfig.cmake
|
|
+++ b/cmake/OpenCVGenConfig.cmake
|
|
@@ -103,7 +103,7 @@ set(OpenCV_INCLUDE_DIRS_CONFIGCMAKE "\"\${OpenCV_INSTALL_PATH}/${OPENCV_INCLUDE_
|
|
set(OpenCV2_INCLUDE_DIRS_CONFIGCMAKE "\"\"")
|
|
set(OpenCV_3RDPARTY_LIB_DIRS_CONFIGCMAKE "\"\${OpenCV_INSTALL_PATH}/${OPENCV_3P_LIB_INSTALL_PATH}\"")
|
|
|
|
-if(UNIX) # ANDROID configuration is created here also
|
|
+if(UNIX OR INSTALL_FORCE_UNIX_PATHS) # ANDROID configuration is created here also
|
|
#http://www.vtk.org/Wiki/CMake/Tutorials/Packaging reference
|
|
# For a command "find_package(<name> [major[.minor]] [EXACT] [REQUIRED|QUIET])"
|
|
# cmake will look in the following dir on unix:
|
|
@@ -127,7 +127,7 @@ endif()
|
|
# --------------------------------------------------------------------------------------------
|
|
# Part 3/3: ${BIN_DIR}/win-install/OpenCVConfig.cmake -> For use within binary installers/packages
|
|
# --------------------------------------------------------------------------------------------
|
|
-if(WIN32)
|
|
+if(WIN32 AND NOT INSTALL_FORCE_UNIX_PATHS)
|
|
set(OpenCV_INCLUDE_DIRS_CONFIGCMAKE "\"\${OpenCV_CONFIG_PATH}/include\" \"\${OpenCV_CONFIG_PATH}/include/opencv\"")
|
|
set(OpenCV2_INCLUDE_DIRS_CONFIGCMAKE "\"\"")
|
|
|
|
diff --git a/cmake/OpenCVGenHeaders.cmake b/cmake/OpenCVGenHeaders.cmake
|
|
index 2988979..810871b 100644
|
|
--- a/cmake/OpenCVGenHeaders.cmake
|
|
+++ b/cmake/OpenCVGenHeaders.cmake
|
|
@@ -1,7 +1,9 @@
|
|
# platform-specific config file
|
|
configure_file("${OpenCV_SOURCE_DIR}/cmake/templates/cvconfig.h.in" "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/cvconfig.h")
|
|
configure_file("${OpenCV_SOURCE_DIR}/cmake/templates/cvconfig.h.in" "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/opencv2/cvconfig.h")
|
|
-install(FILES "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/cvconfig.h" DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2 COMPONENT dev)
|
|
+if(INSTALL_HEADERS)
|
|
+ install(FILES "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/cvconfig.h" DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2 COMPONENT dev)
|
|
+endif()
|
|
|
|
# ----------------------------------------------------------------------------
|
|
# opencv_modules.hpp based on actual modules list
|
|
@@ -25,4 +27,6 @@ set(OPENCV_MODULE_DEFINITIONS_CONFIGMAKE "${OPENCV_MODULE_DEFINITIONS_CONFIGMAKE
|
|
#endforeach()
|
|
|
|
configure_file("${OpenCV_SOURCE_DIR}/cmake/templates/opencv_modules.hpp.in" "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/opencv2/opencv_modules.hpp")
|
|
-install(FILES "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/opencv2/opencv_modules.hpp" DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2 COMPONENT dev)
|
|
+if(INSTALL_HEADERS)
|
|
+ install(FILES "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/opencv2/opencv_modules.hpp" DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2 COMPONENT dev)
|
|
+endif()
|
|
diff --git a/cmake/OpenCVModule.cmake b/cmake/OpenCVModule.cmake
|
|
index 3385385..530e53f 100644
|
|
--- a/cmake/OpenCVModule.cmake
|
|
+++ b/cmake/OpenCVModule.cmake
|
|
@@ -879,7 +879,9 @@ macro(_ocv_create_module)
|
|
foreach(hdr ${OPENCV_MODULE_${m}_HEADERS})
|
|
string(REGEX REPLACE "^.*opencv2/" "opencv2/" hdr2 "${hdr}")
|
|
if(NOT hdr2 MATCHES "opencv2/${m}/private.*" AND hdr2 MATCHES "^(opencv2/?.*)/[^/]+.h(..)?$" )
|
|
- install(FILES ${hdr} OPTIONAL DESTINATION "${OPENCV_INCLUDE_INSTALL_PATH}/${CMAKE_MATCH_1}" COMPONENT dev)
|
|
+ if(INSTALL_HEADERS)
|
|
+ install(FILES ${hdr} OPTIONAL DESTINATION "${OPENCV_INCLUDE_INSTALL_PATH}/${CMAKE_MATCH_1}" COMPONENT dev)
|
|
+ endif()
|
|
endif()
|
|
endforeach()
|
|
endif()
|
|
diff --git a/cmake/templates/OpenCVConfig.cmake.in b/cmake/templates/OpenCVConfig.cmake.in
|
|
index 80ffbaf..0585c9f 100644
|
|
--- a/cmake/templates/OpenCVConfig.cmake.in
|
|
+++ b/cmake/templates/OpenCVConfig.cmake.in
|
|
@@ -112,7 +112,7 @@ set(OpenCV_USE_MANGLED_PATHS @OpenCV_USE_MANGLED_PATHS_CONFIGCMAKE@)
|
|
# Extract the directory where *this* file has been installed (determined at cmake run-time)
|
|
get_filename_component(OpenCV_CONFIG_PATH "${CMAKE_CURRENT_LIST_FILE}" PATH CACHE)
|
|
|
|
-if(NOT WIN32 OR ANDROID)
|
|
+if(NOT WIN32 OR ANDROID OR "@INSTALL_FORCE_UNIX_PATHS@")
|
|
if(ANDROID)
|
|
set(OpenCV_INSTALL_PATH "${OpenCV_CONFIG_PATH}/../../..")
|
|
else()
|
|
diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
|
|
index 1f0d720..86b9d89 100644
|
|
--- a/data/CMakeLists.txt
|
|
+++ b/data/CMakeLists.txt
|
|
@@ -1,8 +1,10 @@
|
|
file(GLOB HAAR_CASCADES haarcascades/*.xml)
|
|
file(GLOB LBP_CASCADES lbpcascades/*.xml)
|
|
|
|
-install(FILES ${HAAR_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/haarcascades COMPONENT libs)
|
|
-install(FILES ${LBP_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/lbpcascades COMPONENT libs)
|
|
+if(INSTALL_OTHER)
|
|
+ install(FILES ${HAAR_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/haarcascades COMPONENT libs)
|
|
+ install(FILES ${LBP_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/lbpcascades COMPONENT libs)
|
|
+endif()
|
|
|
|
if(INSTALL_TESTS AND OPENCV_TEST_DATA_PATH)
|
|
install(DIRECTORY "${OPENCV_TEST_DATA_PATH}/" DESTINATION "${OPENCV_TEST_DATA_INSTALL_PATH}" COMPONENT "tests")
|
|
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
|
|
index b4e48e6..6ea20d6 100644
|
|
--- a/include/CMakeLists.txt
|
|
+++ b/include/CMakeLists.txt
|
|
@@ -1,7 +1,9 @@
|
|
-file(GLOB old_hdrs "opencv/*.h*")
|
|
-install(FILES ${old_hdrs}
|
|
+if(INSTALL_HEADERS)
|
|
+ file(GLOB old_hdrs "opencv/*.h*")
|
|
+ install(FILES ${old_hdrs}
|
|
DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv
|
|
COMPONENT dev)
|
|
-install(FILES "opencv2/opencv.hpp"
|
|
+ install(FILES "opencv2/opencv.hpp"
|
|
DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2
|
|
COMPONENT dev)
|
|
+endif()
|