aboutsummaryrefslogtreecommitdiff
path: root/scripts/cmake/vcpkg_common_definitions.cmake
diff options
context:
space:
mode:
authorAlexander Neumann <30894796+Neumann-A@users.noreply.github.com>2019-08-21 12:00:35 +0200
committerGitHub <noreply@github.com>2019-08-21 12:00:35 +0200
commit18d61a3fb140ac1f4d9d605e02fdd614e1c2ff14 (patch)
treeef87d17ad7f6648a47c3367bf2acca5197a107dd /scripts/cmake/vcpkg_common_definitions.cmake
parent70f4aabbe8bf5273e11a03f804d4361354cf0a11 (diff)
parente5bf7eae99f3be342bfdd7a3c999daba62d4436a (diff)
downloadvcpkg-18d61a3fb140ac1f4d9d605e02fdd614e1c2ff14.tar.gz
vcpkg-18d61a3fb140ac1f4d9d605e02fdd614e1c2ff14.zip
Merge branch 'master' into path_separator
Diffstat (limited to 'scripts/cmake/vcpkg_common_definitions.cmake')
-rw-r--r--scripts/cmake/vcpkg_common_definitions.cmake128
1 files changed, 66 insertions, 62 deletions
diff --git a/scripts/cmake/vcpkg_common_definitions.cmake b/scripts/cmake/vcpkg_common_definitions.cmake
index ec444c858..108ceaac6 100644
--- a/scripts/cmake/vcpkg_common_definitions.cmake
+++ b/scripts/cmake/vcpkg_common_definitions.cmake
@@ -1,62 +1,66 @@
-## # vcpkg_common_definitions
-##
-## File contains helpful variabls for portfiles which are commonly needed or used.
-##
-## ## The following variables are available:
-## ```cmake
-## VCPKG_TARGET_IS_<target> with <target> being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD. only defined if <target>
-## VCPKG_HOST_PATH_SEPARATOR Host specific path separator
-## VCPKG_HOST_PATH_SEPARATOR_ESCAPED Escaped version of VCPKG_HOST_PATH_SEPARATOR if necessary (e.g. symbol with special meaning in cmake like ";")
-## VCPKG_TARGET_STATIC_LIBRARY_PREFIX static library prefix for target (same as CMAKE_STATIC_LIBRARY_PREFIX)
-## VCPKG_TARGET_STATIC_LIBRARY_SUFFIX static library suffix for target (same as CMAKE_STATIC_LIBRARY_SUFFIX)
-## VCPKG_TARGET_SHARED_LIBRARY_PREFIX shared library prefix for target (same as CMAKE_SHARED_LIBRARY_PREFIX)
-## VCPKG_TARGET_SHARED_LIBRARY_SUFFIX shared library suffix for target (same as CMAKE_SHARED_LIBRARY_SUFFIX)
-## ```
-##
-## CMAKE_STATIC_LIBRARY_PREFIX, CMAKE_STATIC_LIBRARY_SUFFIX, CMAKE_SHARED_LIBRARY_PREFIX, CMAKE_SHARED_LIBRARY_SUFFIX are defined for the target so that
-## portfiles are able to use find_library calls to discover dependent libraries within the current triplet for ports.
-##
-
-#Helper variable to identify the Target system. VCPKG_TARGET_IS_<targetname>
-if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
- set(VCPKG_TARGET_IS_WINDOWS 1)
- if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
- set(VCPKG_TARGET_IS_UWP 1)
- endif()
-elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin")
- set(VCPKG_TARGET_IS_OSX 1)
-elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux")
- set(VCPKG_TARGET_IS_LINUX 1)
-elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Android")
- set(VCPKG_TARGET_IS_ANDROID 1)
-elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
- set(VCPKG_TARGET_IS_FREEBSD 1)
-endif()
-
-#Helper variable to identify the host path separator.
-if(CMAKE_HOST_WIN32)
- set(VCPKG_HOST_PATH_SEPARATOR ";")
- set(VCPKG_HOST_PATH_SEPARATOR_ESCAPED "\\;") #sometimes needed to differentiate between the cmake list separator
-elseif(CMAKE_HOST_UNIX)
- set(VCPKG_HOST_PATH_SEPARATOR ":")
- set(VCPKG_HOST_PATH_SEPARATOR_ESCAPED ":")
-endif()
-
-#Helper variables for libraries
-if(VCPKG_TARGET_IS_WINDOWS)
- set(VCPKG_TARGET_STATIC_LIBRARY_SUFFIX ".lib")
- set(VCPKG_TARGET_SHARED_LIBRARY_SUFFIX ".dll")
- set(VCPKG_TARGET_STATIC_LIBRARY_PREFIX "")
- set(VCPKG_TARGET_SHARED_LIBRARY_PREFIX "")
-else()
- set(VCPKG_TARGET_STATIC_LIBRARY_SUFFIX ".a")
- set(VCPKG_TARGET_SHARED_LIBRARY_SUFFIX ".so")
- set(VCPKG_TARGET_STATIC_LIBRARY_PREFIX "lib")
- set(VCPKG_TARGET_SHARED_LIBRARY_PREFIX "lib")
-endif()
-#Setting these variables allows find_library to work in script mode and thus in portfiles!
-#This allows us scale down on hardcoded target dependent paths in portfiles
-set(CMAKE_STATIC_LIBRARY_SUFFIX ${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX})
-set(CMAKE_SHARED_LIBRARY_SUFFIX ${VCPKG_TARGET_SHARED_LIBRARY_SUFFIX})
-set(CMAKE_STATIC_LIBRARY_PREFIX ${VCPKG_TARGET_STATIC_LIBRARY_PREFIX})
-set(CMAKE_SHARED_LIBRARY_PREFIX ${VCPKG_TARGET_SHARED_LIBRARY_PREFIX})
+## # vcpkg_common_definitions
+##
+## File contains helpful variabls for portfiles which are commonly needed or used.
+##
+## ## The following variables are available:
+## ```cmake
+## VCPKG_TARGET_IS_<target> with <target> being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD. only defined if <target>
+## VCPKG_HOST_PATH_SEPARATOR Host specific path separator
+## VCPKG_HOST_PATH_SEPARATOR_ESCAPED Escaped version of VCPKG_HOST_PATH_SEPARATOR if necessary (e.g. symbol with special meaning in cmake like ";")
+## VCPKG_TARGET_STATIC_LIBRARY_PREFIX static library prefix for target (same as CMAKE_STATIC_LIBRARY_PREFIX)
+## VCPKG_TARGET_STATIC_LIBRARY_SUFFIX static library suffix for target (same as CMAKE_STATIC_LIBRARY_SUFFIX)
+## VCPKG_TARGET_SHARED_LIBRARY_PREFIX shared library prefix for target (same as CMAKE_SHARED_LIBRARY_PREFIX)
+## VCPKG_TARGET_SHARED_LIBRARY_SUFFIX shared library suffix for target (same as CMAKE_SHARED_LIBRARY_SUFFIX)
+## ```
+##
+## CMAKE_STATIC_LIBRARY_PREFIX, CMAKE_STATIC_LIBRARY_SUFFIX, CMAKE_SHARED_LIBRARY_PREFIX, CMAKE_SHARED_LIBRARY_SUFFIX are defined for the target so that
+## portfiles are able to use find_library calls to discover dependent libraries within the current triplet for ports.
+##
+
+#Helper variable to identify the Target system. VCPKG_TARGET_IS_<targetname>
+if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
+ set(VCPKG_TARGET_IS_WINDOWS 1)
+ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
+ set(VCPKG_TARGET_IS_UWP 1)
+ endif()
+elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin")
+ set(VCPKG_TARGET_IS_OSX 1)
+elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux")
+ set(VCPKG_TARGET_IS_LINUX 1)
+elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Android")
+ set(VCPKG_TARGET_IS_ANDROID 1)
+elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
+ set(VCPKG_TARGET_IS_FREEBSD 1)
+endif()
+
+#Helper variable to identify the host path separator.
+if(CMAKE_HOST_WIN32)
+ set(VCPKG_HOST_PATH_SEPARATOR ";")
+ set(VCPKG_HOST_PATH_SEPARATOR_ESCAPED "\\;") #sometimes needed to differentiate between the cmake list separator
+elseif(CMAKE_HOST_UNIX)
+ set(VCPKG_HOST_PATH_SEPARATOR ":")
+ set(VCPKG_HOST_PATH_SEPARATOR_ESCAPED ":")
+endif()
+
+#Helper variables for libraries
+if(VCPKG_TARGET_IS_WINDOWS)
+ set(VCPKG_TARGET_STATIC_LIBRARY_SUFFIX ".lib")
+ set(VCPKG_TARGET_SHARED_LIBRARY_SUFFIX ".dll")
+ set(VCPKG_TARGET_STATIC_LIBRARY_PREFIX "")
+ set(VCPKG_TARGET_SHARED_LIBRARY_PREFIX "")
+else()
+ set(VCPKG_TARGET_STATIC_LIBRARY_SUFFIX ".a")
+ set(VCPKG_TARGET_SHARED_LIBRARY_SUFFIX ".so")
+ set(VCPKG_TARGET_STATIC_LIBRARY_PREFIX "lib")
+ set(VCPKG_TARGET_SHARED_LIBRARY_PREFIX "lib")
+endif()
+#Setting these variables allows find_library to work in script mode and thus in portfiles!
+#This allows us scale down on hardcoded target dependent paths in portfiles
+set(CMAKE_STATIC_LIBRARY_SUFFIX ${VCPKG_TARGET_STATIC_LIBRARY_SUFFIX})
+set(CMAKE_SHARED_LIBRARY_SUFFIX ${VCPKG_TARGET_SHARED_LIBRARY_SUFFIX})
+set(CMAKE_STATIC_LIBRARY_PREFIX ${VCPKG_TARGET_STATIC_LIBRARY_PREFIX})
+set(CMAKE_SHARED_LIBRARY_PREFIX ${VCPKG_TARGET_SHARED_LIBRARY_PREFIX})
+set(CMAKE_FIND_LIBRARY_SUFFIXES "${CMAKE_STATIC_LIBRARY_SUFFIX};${CMAKE_SHARED_LIBRARY_SUFFIX}" CACHE INTERNAL "") # Required by find_library
+set(CMAKE_FIND_LIBRARY_PREFIXES "${CMAKE_STATIC_LIBRARY_PREFIX};${CMAKE_SHARED_LIBRARY_PREFIX}" CACHE INTERNAL "") # Required by find_library
+
+