From 4fb225608532e9fb2fd2f5f1dbe9ec092cdc7c93 Mon Sep 17 00:00:00 2001 From: Billy O'Neal Date: Wed, 3 Jun 2020 19:31:28 -0700 Subject: [vcpkg] Allow CI to pass in all relevant directories and remove use of symbolic links (#11483) --- scripts/cmake/vcpkg_build_cmake.cmake | 4 ++-- scripts/cmake/vcpkg_build_make.cmake | 26 +++++++++++++------------- scripts/cmake/vcpkg_build_msbuild.cmake | 1 + scripts/cmake/vcpkg_configure_cmake.cmake | 2 ++ scripts/cmake/vcpkg_install_msbuild.cmake | 1 + 5 files changed, 19 insertions(+), 15 deletions(-) (limited to 'scripts/cmake') diff --git a/scripts/cmake/vcpkg_build_cmake.cmake b/scripts/cmake/vcpkg_build_cmake.cmake index d049c907b..5274c29da 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") - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/bin") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/debug/bin") else() - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/bin") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/bin") endif() endif() diff --git a/scripts/cmake/vcpkg_build_make.cmake b/scripts/cmake/vcpkg_build_make.cmake index 5d1b8d636..17a755890 100644 --- a/scripts/cmake/vcpkg_build_make.cmake +++ b/scripts/cmake/vcpkg_build_make.cmake @@ -86,7 +86,7 @@ function(vcpkg_build_make) set(MAKE_OPTS ${_bc_MAKE_OPTIONS} V=1 -j ${VCPKG_CONCURRENCY} -f Makefile ${_bc_BUILD_TARGET}) set(INSTALL_OPTS -j ${VCPKG_CONCURRENCY} install DESTDIR=${CURRENT_PACKAGES_DIR}) endif() - + # Backup enviromnent variables set(C_FLAGS_BACKUP "$ENV{CFLAGS}") set(CXX_FLAGS_BACKUP "$ENV{CXXFLAGS}") @@ -98,7 +98,7 @@ function(vcpkg_build_make) _vcpkg_backup_env_variable(LD_LIBRARY_PATH) _vcpkg_backup_env_variable(LIBRARY_PATH) set(LIBPATH_BACKUP "$ENV{LIBPATH}") - + # Setup include enviromnent set(ENV{INCLUDE} "${_VCPKG_INSTALLED}/include${VCPKG_HOST_PATH_SEPARATOR}${INCLUDE_BACKUP}") set(ENV{INCLUDE_PATH} "${_VCPKG_INSTALLED}/include${VCPKG_HOST_PATH_SEPARATOR}${INCLUDE_PATH_BACKUP}") @@ -141,7 +141,7 @@ function(vcpkg_build_make) endif() set(CMAKE_BUILDTYPE "RELEASE") endif() - + set(WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}${SHORT_BUILDTYPE}") message(STATUS "Building ${TARGET_TRIPLET}${SHORT_BUILDTYPE}") @@ -149,9 +149,9 @@ function(vcpkg_build_make) if(_bc_ADD_BIN_TO_PATH) set(_BACKUP_ENV_PATH "$ENV{PATH}") if(BUILDTYPE STREQUAL "debug") - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/bin") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/debug/bin") else() - vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/bin") + vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/bin") endif() endif() @@ -159,15 +159,15 @@ function(vcpkg_build_make) set(TMP_CFLAGS "${C_FLAGS_GLOBAL} ${VCPKG_C_FLAGS_${CMAKE_BUILDTYPE}}") string(REGEX REPLACE "[ \t]+/" " -" TMP_CFLAGS "${TMP_CFLAGS}") set(ENV{CFLAGS} ${TMP_CFLAGS}) - + set(TMP_CXXFLAGS "${CXX_FLAGS_GLOBAL} ${VCPKG_CXX_FLAGS_${CMAKE_BUILDTYPE}}") string(REGEX REPLACE "[ \t]+/" " -" TMP_CXXFLAGS "${TMP_CXXFLAGS}") set(ENV{CXXFLAGS} ${TMP_CXXFLAGS}) - + set(TMP_LDFLAGS "${LD_FLAGS_GLOBAL} ${VCPKG_LINKER_FLAGS_${CMAKE_BUILDTYPE}}") string(REGEX REPLACE "[ \t]+/" " -" TMP_LDFLAGS "${TMP_LDFLAGS}") set(ENV{LDFLAGS} ${TMP_LDFLAGS}) - + string(REPLACE " " "\ " _VCPKG_INSTALLED_PKGCONF "${CURRENT_INSTALLED_DIR}") string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" _VCPKG_INSTALLED_PKGCONF "${_VCPKG_INSTALLED_PKGCONF}") string(REPLACE "\\" "/" _VCPKG_INSTALLED_PKGCONF "${_VCPKG_INSTALLED_PKGCONF}") @@ -176,7 +176,7 @@ function(vcpkg_build_make) else() set(ENV{VCPKG_PKG_PREFIX} ${_VCPKG_INSTALLED_PKGCONF}) endif() - + else() set(ENV{CFLAGS} "${C_FLAGS_GLOBAL} ${VCPKG_C_FLAGS_${CMAKE_BUILDTYPE}}") set(ENV{CXXFLAGS} "${CXX_FLAGS_GLOBAL} ${VCPKG_CXX_FLAGS_${CMAKE_BUILDTYPE}}") @@ -226,15 +226,15 @@ function(vcpkg_build_make) set(SHORT_BUILDTYPE "-rel") endif() endif() - + message(STATUS "Installing ${TARGET_TRIPLET}${SHORT_BUILDTYPE}") - + if(MAKE_BASH) set(MAKE_CMD_LINE "${MAKE_COMMAND} ${INSTALL_OPTS}") else() set(MAKE_CMD_LINE ${MAKE_COMMAND} ${INSTALL_OPTS}) endif() - + set(WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}${SHORT_BUILDTYPE}") vcpkg_execute_build_process( COMMAND ${MAKE_BASH} ${MAKE_CMD_LINE} @@ -266,6 +266,6 @@ function(vcpkg_build_make) if (CMAKE_HOST_WIN32) set(ENV{PATH} "${PATH_GLOBAL}") endif() - + endfunction() diff --git a/scripts/cmake/vcpkg_build_msbuild.cmake b/scripts/cmake/vcpkg_build_msbuild.cmake index cfd429da2..67ff3d3ae 100644 --- a/scripts/cmake/vcpkg_build_msbuild.cmake +++ b/scripts/cmake/vcpkg_build_msbuild.cmake @@ -110,6 +110,7 @@ function(vcpkg_build_msbuild) APPEND _csc_OPTIONS /p:ForceImportBeforeCppTargets=${SCRIPTS}/buildsystems/msbuild/vcpkg.targets "/p:VcpkgTriplet=${TARGET_TRIPLET}" + "/p:VcpkgCurrentInstalledDir=${CURRENT_INSTALLED_DIR}" ) endif() diff --git a/scripts/cmake/vcpkg_configure_cmake.cmake b/scripts/cmake/vcpkg_configure_cmake.cmake index ab65a5683..4debcb718 100644 --- a/scripts/cmake/vcpkg_configure_cmake.cmake +++ b/scripts/cmake/vcpkg_configure_cmake.cmake @@ -236,6 +236,8 @@ function(vcpkg_configure_cmake) "-DVCPKG_TARGET_ARCHITECTURE=${VCPKG_TARGET_ARCHITECTURE}" "-DCMAKE_INSTALL_LIBDIR:STRING=lib" "-DCMAKE_INSTALL_BINDIR:STRING=bin" + "-D_VCPKG_ROOT_DIR=${VCPKG_ROOT_DIR}" + "-D_VCPKG_INSTALLED_DIR=${_VCPKG_INSTALLED_DIR}" ) if(DEFINED ARCH) diff --git a/scripts/cmake/vcpkg_install_msbuild.cmake b/scripts/cmake/vcpkg_install_msbuild.cmake index 01bf49f02..8fc0298e0 100644 --- a/scripts/cmake/vcpkg_install_msbuild.cmake +++ b/scripts/cmake/vcpkg_install_msbuild.cmake @@ -137,6 +137,7 @@ function(vcpkg_install_msbuild) /p:UseIntelMKL=No /p:WindowsTargetPlatformVersion=${_csc_TARGET_PLATFORM_VERSION} /p:VcpkgTriplet=${TARGET_TRIPLET} + "/p:VcpkgCurrentInstalledDir=${CURRENT_INSTALLED_DIR}" /m ) -- cgit v1.2.3