From 6eaf7f0f977e62b07515cb17676dcf5d383d357d Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Thu, 8 Aug 2019 14:18:47 +0200 Subject: [PATCH 1/9] add definition for host specific path separators --- scripts/cmake/vcpkg_common_definitions.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/scripts/cmake/vcpkg_common_definitions.cmake b/scripts/cmake/vcpkg_common_definitions.cmake index 8dc05de3c..f9221f946 100644 --- a/scripts/cmake/vcpkg_common_definitions.cmake +++ b/scripts/cmake/vcpkg_common_definitions.cmake @@ -1,3 +1,4 @@ +#Helper variable to identify the Target system. VCPKG_TARGET_IS_ 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") @@ -12,3 +13,12 @@ elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Android") elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") set(VCPKG_TARGET_IS_FREEBSD 1) endif() + +#Helper variable to identify the host path seperator. +if(WIN32) + set(VCPKG_HOST_PATH_SEPARATOR ";") + set(VCPKG_HOST_PATH_SEPARATOR_ESCAPED "\\;") #sometimes needed to differentiate between the cmake list separator +elseif(UNIX) + set(VCPKG_HOST_PATH_SEPARATOR ":") + set(VCPKG_HOST_PATH_SEPARATOR_ESCAPED ":") +endif() \ No newline at end of file From b72fa4561f31c4ea6cdc733094cebf72bedff854 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Thu, 8 Aug 2019 14:22:53 +0200 Subject: [PATCH 2/9] use it in vcpkg_add_to_path. --- scripts/cmake/vcpkg_add_to_path.cmake | 12 ++---------- scripts/cmake/vcpkg_common_definitions.cmake | 4 ++-- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/scripts/cmake/vcpkg_add_to_path.cmake b/scripts/cmake/vcpkg_add_to_path.cmake index 7ab08c88e..05763b2ef 100644 --- a/scripts/cmake/vcpkg_add_to_path.cmake +++ b/scripts/cmake/vcpkg_add_to_path.cmake @@ -29,19 +29,11 @@ function(vcpkg_add_to_path) if(NOT "${ARGC}" STREQUAL "2") message(FATAL_ERROR "Expected second argument.") endif() - if(CMAKE_HOST_WIN32) - set(ENV{PATH} "${ARGV1};$ENV{PATH}") - else() - set(ENV{PATH} "${ARGV1}:$ENV{PATH}") - endif() + set(ENV{PATH} "${ARGV1}${VCPKG_HOST_PATH_SEPARATOR}$ENV{PATH}") else() if(NOT "${ARGC}" STREQUAL "1") message(FATAL_ERROR "Unexpected second argument: ${ARGV1}") endif() - if(CMAKE_HOST_WIN32) - set(ENV{PATH} "$ENV{PATH};${ARGV0}") - else() - set(ENV{PATH} "$ENV{PATH}:${ARGV0}") - endif() + set(ENV{PATH} "$ENV{PATH}${VCPKG_HOST_PATH_SEPARATOR}${ARGV0}") endif() endfunction() \ No newline at end of file diff --git a/scripts/cmake/vcpkg_common_definitions.cmake b/scripts/cmake/vcpkg_common_definitions.cmake index f9221f946..f43780959 100644 --- a/scripts/cmake/vcpkg_common_definitions.cmake +++ b/scripts/cmake/vcpkg_common_definitions.cmake @@ -15,10 +15,10 @@ elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") endif() #Helper variable to identify the host path seperator. -if(WIN32) +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(UNIX) +elseif(CMAKE_HOST_UNIX) set(VCPKG_HOST_PATH_SEPARATOR ":") set(VCPKG_HOST_PATH_SEPARATOR_ESCAPED ":") endif() \ No newline at end of file From 5899cd1d25c134f8a30476f4939ab57952c59815 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Thu, 8 Aug 2019 14:40:47 +0200 Subject: [PATCH 3/9] improve documentation --- scripts/cmake/vcpkg_common_definitions.cmake | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/scripts/cmake/vcpkg_common_definitions.cmake b/scripts/cmake/vcpkg_common_definitions.cmake index f43780959..d9b397fa1 100644 --- a/scripts/cmake/vcpkg_common_definitions.cmake +++ b/scripts/cmake/vcpkg_common_definitions.cmake @@ -1,3 +1,15 @@ +## # vcpkg_common_definitions +## +## File contains helpful variabls for portfiles which are commonly needed or used. +## +## ## The following variables are available: +## ```cmake +## VCPKG_TARGET_IS_ with being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD. only defined if +## 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 ";") +## ``` +## + #Helper variable to identify the Target system. VCPKG_TARGET_IS_ if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") set(VCPKG_TARGET_IS_WINDOWS 1) @@ -14,7 +26,7 @@ elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") set(VCPKG_TARGET_IS_FREEBSD 1) endif() -#Helper variable to identify the host path seperator. +#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 From 01e342d016691e0a20e684de346cbc94d2c7fe2c Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Mon, 12 Aug 2019 09:49:24 +0200 Subject: [PATCH 4/9] use VCPKG_HOST_PATH_SEPARATOR in scripts --- scripts/cmake/vcpkg_build_cmake.cmake | 9 ++------- scripts/cmake/vcpkg_build_qmake.cmake | 6 ++---- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/scripts/cmake/vcpkg_build_cmake.cmake b/scripts/cmake/vcpkg_build_cmake.cmake index b110d2cc9..cfdbec28f 100644 --- a/scripts/cmake/vcpkg_build_cmake.cmake +++ b/scripts/cmake/vcpkg_build_cmake.cmake @@ -74,15 +74,10 @@ function(vcpkg_build_cmake) if(_bc_ADD_BIN_TO_PATH) set(_BACKUP_ENV_PATH "$ENV{PATH}") - if(CMAKE_HOST_WIN32) - set(_PATHSEP ";") - else() - set(_PATHSEP ":") - endif() if(BUILDTYPE STREQUAL "debug") - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/bin${_PATHSEP}$ENV{PATH}") + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/bin${VCPKG_HOST_PATH_SEPARATOR}$ENV{PATH}") else() - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/bin${_PATHSEP}$ENV{PATH}") + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/bin${VCPKG_HOST_PATH_SEPARATOR}$ENV{PATH}") endif() endif() diff --git a/scripts/cmake/vcpkg_build_qmake.cmake b/scripts/cmake/vcpkg_build_qmake.cmake index cf79fe8fc..a10fac315 100644 --- a/scripts/cmake/vcpkg_build_qmake.cmake +++ b/scripts/cmake/vcpkg_build_qmake.cmake @@ -11,11 +11,9 @@ function(vcpkg_build_qmake) cmake_parse_arguments(_csc "SKIP_MAKEFILES" "BUILD_LOGNAME" "TARGETS;RELEASE_TARGETS;DEBUG_TARGETS" ${ARGN}) if(CMAKE_HOST_WIN32) - set(_PATHSEP ";") vcpkg_find_acquire_program(JOM) set(INVOKE "${JOM}") else() - set(_PATHSEP ":") find_program(MAKE make) set(INVOKE "${MAKE}") endif() @@ -58,7 +56,7 @@ function(vcpkg_build_qmake) #First generate the makefiles so we can modify them if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/debug/lib${_PATHSEP}${CURRENT_INSTALLED_DIR}/debug/bin${_PATHSEP}${CURRENT_INSTALLED_DIR}/tools/qt5${_PATHSEP}${ENV_PATH_BACKUP}") + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/debug/lib${VCPKG_HOST_PATH_SEPARATOR}${CURRENT_INSTALLED_DIR}/debug/bin${VCPKG_HOST_PATH_SEPARATOR}${CURRENT_INSTALLED_DIR}/tools/qt5${VCPKG_HOST_PATH_SEPARATOR}${ENV_PATH_BACKUP}") if(NOT _csc_SKIP_MAKEFILES) run_jom(qmake_all makefiles dbg) @@ -83,7 +81,7 @@ function(vcpkg_build_qmake) endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/lib${_PATHSEP}${CURRENT_INSTALLED_DIR}/bin${_PATHSEP}${CURRENT_INSTALLED_DIR}/tools/qt5${_PATHSEP}${ENV_PATH_BACKUP}") + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/lib${VCPKG_HOST_PATH_SEPARATOR}${CURRENT_INSTALLED_DIR}/bin${VCPKG_HOST_PATH_SEPARATOR}${CURRENT_INSTALLED_DIR}/tools/qt5${VCPKG_HOST_PATH_SEPARATOR}${ENV_PATH_BACKUP}") if(NOT _csc_SKIP_MAKEFILES) run_jom(qmake_all makefiles rel) From 173642528e2cf7a3f18b41d903b5ff5a758d34ae Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Mon, 12 Aug 2019 10:04:50 +0200 Subject: [PATCH 5/9] use vcpkg add to path in build scripts --- scripts/cmake/vcpkg_build_cmake.cmake | 4 ++-- scripts/cmake/vcpkg_build_qmake.cmake | 23 +++++++++++++++++------ 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/scripts/cmake/vcpkg_build_cmake.cmake b/scripts/cmake/vcpkg_build_cmake.cmake index cfdbec28f..d049c907b 100644 --- a/scripts/cmake/vcpkg_build_cmake.cmake +++ b/scripts/cmake/vcpkg_build_cmake.cmake @@ -75,9 +75,9 @@ function(vcpkg_build_cmake) if(_bc_ADD_BIN_TO_PATH) set(_BACKUP_ENV_PATH "$ENV{PATH}") if(BUILDTYPE STREQUAL "debug") - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/bin${VCPKG_HOST_PATH_SEPARATOR}$ENV{PATH}") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/bin") else() - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/bin${VCPKG_HOST_PATH_SEPARATOR}$ENV{PATH}") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/bin") endif() endif() diff --git a/scripts/cmake/vcpkg_build_qmake.cmake b/scripts/cmake/vcpkg_build_qmake.cmake index a10fac315..5b4f017e0 100644 --- a/scripts/cmake/vcpkg_build_qmake.cmake +++ b/scripts/cmake/vcpkg_build_qmake.cmake @@ -56,9 +56,15 @@ function(vcpkg_build_qmake) #First generate the makefiles so we can modify them if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/debug/lib${VCPKG_HOST_PATH_SEPARATOR}${CURRENT_INSTALLED_DIR}/debug/bin${VCPKG_HOST_PATH_SEPARATOR}${CURRENT_INSTALLED_DIR}/tools/qt5${VCPKG_HOST_PATH_SEPARATOR}${ENV_PATH_BACKUP}") + set(_BUILD_PREFIX "/debug") + set(_int_build_type dbg) + + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/tools/qt5") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}${_BUILD_PREFIX}/bin") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}${_BUILD_PREFIX}/lib") + if(NOT _csc_SKIP_MAKEFILES) - run_jom(qmake_all makefiles dbg) + run_jom(qmake_all makefiles ${_int_build_type}) #Store debug makefiles path file(GLOB_RECURSE DEBUG_MAKEFILES ${DEBUG_DIR}/*Makefile*) @@ -77,13 +83,18 @@ function(vcpkg_build_qmake) endforeach() endif() - run_jom("${_csc_DEBUG_TARGETS}" ${_csc_BUILD_LOGNAME} dbg) + run_jom("${_csc_DEBUG_TARGETS}" ${_csc_BUILD_LOGNAME} ${_int_build_type}) endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/lib${VCPKG_HOST_PATH_SEPARATOR}${CURRENT_INSTALLED_DIR}/bin${VCPKG_HOST_PATH_SEPARATOR}${CURRENT_INSTALLED_DIR}/tools/qt5${VCPKG_HOST_PATH_SEPARATOR}${ENV_PATH_BACKUP}") + set(_int_build_type rel) + + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/tools/qt5") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}${_BUILD_PREFIX}/bin") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}${_BUILD_PREFIX}/lib") + if(NOT _csc_SKIP_MAKEFILES) - run_jom(qmake_all makefiles rel) + run_jom(qmake_all makefiles ${_int_build_type}) #Store release makefile path file(GLOB_RECURSE RELEASE_MAKEFILES ${RELEASE_DIR}/*Makefile*) @@ -100,7 +111,7 @@ function(vcpkg_build_qmake) endforeach() endif() - run_jom("${_csc_RELEASE_TARGETS}" ${_csc_BUILD_LOGNAME} rel) + run_jom("${_csc_RELEASE_TARGETS}" ${_csc_BUILD_LOGNAME} ${_int_build_type}) endif() # Restore the original value of ENV{PATH} From 279e25aecfe30f55296881ea9b0236c1d6ee030a Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Fri, 20 Sep 2019 12:20:21 +0200 Subject: [PATCH 6/9] revert changes to vcpkg_build_qmake file --- scripts/cmake/vcpkg_build_qmake.cmake | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) diff --git a/scripts/cmake/vcpkg_build_qmake.cmake b/scripts/cmake/vcpkg_build_qmake.cmake index 5b4f017e0..cf79fe8fc 100644 --- a/scripts/cmake/vcpkg_build_qmake.cmake +++ b/scripts/cmake/vcpkg_build_qmake.cmake @@ -11,9 +11,11 @@ function(vcpkg_build_qmake) cmake_parse_arguments(_csc "SKIP_MAKEFILES" "BUILD_LOGNAME" "TARGETS;RELEASE_TARGETS;DEBUG_TARGETS" ${ARGN}) if(CMAKE_HOST_WIN32) + set(_PATHSEP ";") vcpkg_find_acquire_program(JOM) set(INVOKE "${JOM}") else() + set(_PATHSEP ":") find_program(MAKE make) set(INVOKE "${MAKE}") endif() @@ -56,15 +58,9 @@ function(vcpkg_build_qmake) #First generate the makefiles so we can modify them if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - set(_BUILD_PREFIX "/debug") - set(_int_build_type dbg) - - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/tools/qt5") - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}${_BUILD_PREFIX}/bin") - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}${_BUILD_PREFIX}/lib") - + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/debug/lib${_PATHSEP}${CURRENT_INSTALLED_DIR}/debug/bin${_PATHSEP}${CURRENT_INSTALLED_DIR}/tools/qt5${_PATHSEP}${ENV_PATH_BACKUP}") if(NOT _csc_SKIP_MAKEFILES) - run_jom(qmake_all makefiles ${_int_build_type}) + run_jom(qmake_all makefiles dbg) #Store debug makefiles path file(GLOB_RECURSE DEBUG_MAKEFILES ${DEBUG_DIR}/*Makefile*) @@ -83,18 +79,13 @@ function(vcpkg_build_qmake) endforeach() endif() - run_jom("${_csc_DEBUG_TARGETS}" ${_csc_BUILD_LOGNAME} ${_int_build_type}) + run_jom("${_csc_DEBUG_TARGETS}" ${_csc_BUILD_LOGNAME} dbg) endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - set(_int_build_type rel) - - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/tools/qt5") - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}${_BUILD_PREFIX}/bin") - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}${_BUILD_PREFIX}/lib") - + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/lib${_PATHSEP}${CURRENT_INSTALLED_DIR}/bin${_PATHSEP}${CURRENT_INSTALLED_DIR}/tools/qt5${_PATHSEP}${ENV_PATH_BACKUP}") if(NOT _csc_SKIP_MAKEFILES) - run_jom(qmake_all makefiles ${_int_build_type}) + run_jom(qmake_all makefiles rel) #Store release makefile path file(GLOB_RECURSE RELEASE_MAKEFILES ${RELEASE_DIR}/*Makefile*) @@ -111,7 +102,7 @@ function(vcpkg_build_qmake) endforeach() endif() - run_jom("${_csc_RELEASE_TARGETS}" ${_csc_BUILD_LOGNAME} ${_int_build_type}) + run_jom("${_csc_RELEASE_TARGETS}" ${_csc_BUILD_LOGNAME} rel) endif() # Restore the original value of ENV{PATH} From 0c7bf66527124dd27773bf169d0c41f7936bdb96 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Fri, 20 Sep 2019 12:52:14 +0200 Subject: [PATCH 7/9] removed escaped version. added correct usage description --- scripts/cmake/vcpkg_common_definitions.cmake | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/scripts/cmake/vcpkg_common_definitions.cmake b/scripts/cmake/vcpkg_common_definitions.cmake index 75a1e8a9c..579925420 100644 --- a/scripts/cmake/vcpkg_common_definitions.cmake +++ b/scripts/cmake/vcpkg_common_definitions.cmake @@ -5,8 +5,7 @@ ## ## The following variables are available: ## ```cmake ## VCPKG_TARGET_IS_ with being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD. only defined if -## VCPKG_HOST_PATH_SEPARATOR Host specific path separator -## VCPKG_HOST_PATH_SEPARATOR_ESCAPED Escaped version of VCPKG_HOST_PATH_SEPARATOR if necessary (set to VCPKG_HOST_PATH_SEPARATOR if not necessary) +## VCPKG_HOST_PATH_SEPARATOR Host specific path separator (USAGE: "${VCPKG_HOST_PATH_SEPARATOR}"; only use and pass variables with VCPKG_HOST_PATH_SEPARATOR within "") ## VCPKG_HOST_EXECUTABLE_SUFFIX executable suffix of the host ## VCPKG_TARGET_EXECUTABLE_SUFFIX executable suffix of the target ## VCPKG_TARGET_STATIC_LIBRARY_PREFIX static library prefix for target (same as CMAKE_STATIC_LIBRARY_PREFIX) @@ -42,11 +41,9 @@ endif() #Helper variable to identify the host path separator. if(CMAKE_HOST_WIN32) - set(VCPKG_HOST_PATH_SEPARATOR "\;") #Is escaped here because else VCPKG_HOST_PATH_SEPARATOR will be a list of two empty elements - set(VCPKG_HOST_PATH_SEPARATOR_ESCAPED "\\\;") #Needed if you want to pass around variables with VCPKG_HOST_PATH_SEPARATOR + set(VCPKG_HOST_PATH_SEPARATOR ";") elseif(CMAKE_HOST_UNIX) set(VCPKG_HOST_PATH_SEPARATOR ":") - set(VCPKG_HOST_PATH_SEPARATOR_ESCAPED ${VCPKG_HOST_PATH_SEPARATOR}) endif() #Helper variables to identify executables on host/target From 119e9b572983019566a27dfe34216f577e09e4d4 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Fri, 20 Sep 2019 12:52:33 +0200 Subject: [PATCH 8/9] update vcpkg_configure_cmake --- scripts/cmake/vcpkg_configure_cmake.cmake | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/scripts/cmake/vcpkg_configure_cmake.cmake b/scripts/cmake/vcpkg_configure_cmake.cmake index 1c3a26a74..c31955fb2 100644 --- a/scripts/cmake/vcpkg_configure_cmake.cmake +++ b/scripts/cmake/vcpkg_configure_cmake.cmake @@ -72,14 +72,11 @@ function(vcpkg_configure_cmake) endif() if(CMAKE_HOST_WIN32) - set(_PATHSEP ";") if(DEFINED ENV{PROCESSOR_ARCHITEW6432}) set(_csc_HOST_ARCHITECTURE $ENV{PROCESSOR_ARCHITEW6432}) else() set(_csc_HOST_ARCHITECTURE $ENV{PROCESSOR_ARCHITECTURE}) endif() - else() - set(_PATHSEP ":") endif() set(NINJA_CAN_BE_USED ON) # Ninja as generator @@ -154,7 +151,7 @@ function(vcpkg_configure_cmake) if(GENERATOR STREQUAL "Ninja") vcpkg_find_acquire_program(NINJA) get_filename_component(NINJA_PATH ${NINJA} DIRECTORY) - set(ENV{PATH} "$ENV{PATH}${_PATHSEP}${NINJA_PATH}") + vcpkg_add_to_path("${NINJA_PATH}") list(APPEND _csc_OPTIONS "-DCMAKE_MAKE_PROGRAM=${NINJA}") endif() @@ -265,7 +262,7 @@ function(vcpkg_configure_cmake) vcpkg_find_acquire_program(NINJA) get_filename_component(NINJA_PATH ${NINJA} DIRECTORY) - set(ENV{PATH} "$ENV{PATH}${_PATHSEP}${NINJA_PATH}") + vcpkg_add_to_path("${NINJA_PATH}") #parallelize the configure step set(_contents From e2be4512a00ba30ab5081bbbf1e535c014f0df37 Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Fri, 20 Sep 2019 12:57:29 +0200 Subject: [PATCH 9/9] fixed leaking variable in vcpkg_build_qmake --- scripts/cmake/vcpkg_build_qmake.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/cmake/vcpkg_build_qmake.cmake b/scripts/cmake/vcpkg_build_qmake.cmake index 03c468463..ef6fb30f3 100644 --- a/scripts/cmake/vcpkg_build_qmake.cmake +++ b/scripts/cmake/vcpkg_build_qmake.cmake @@ -65,6 +65,7 @@ function(vcpkg_build_qmake) run_jom(qmake_all makefiles ${_short_name_${_buildname}}) endif() run_jom("${_csc_${_buildname}_TARGETS}" ${_csc_BUILD_LOGNAME} ${_short_name_${_buildname}}) + unset(_BUILD_PREFIX) endforeach() # Restore the original value of ENV{PATH}