From cff0971773e902770114c9f262a64898059bfa11 Mon Sep 17 00:00:00 2001 From: Mikhail Paulyshka Date: Sun, 12 Mar 2017 21:21:34 +0300 Subject: vcpkg_build_msbuild: add TARGET_PLATFORM_VERSION property --- scripts/cmake/vcpkg_build_msbuild.cmake | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/scripts/cmake/vcpkg_build_msbuild.cmake b/scripts/cmake/vcpkg_build_msbuild.cmake index f4a809e7f..7de06241c 100644 --- a/scripts/cmake/vcpkg_build_msbuild.cmake +++ b/scripts/cmake/vcpkg_build_msbuild.cmake @@ -7,6 +7,7 @@ # vcpkg_build_msbuild(PROJECT_PATH # [RELEASE_CONFIGURATION ] # (default = "Release") # [DEBUG_CONFIGURATION ] @ (default = "Debug") +# [TARGET_PLATFORM_VERSION ] # [PLATFORM ] # (default = "${TRIPLET_SYSTEM_ARCH}") # [OPTIONS arg1 [arg2 ...]] # [OPTIONS_RELEASE arg1 [arg2 ...]] @@ -21,9 +22,8 @@ # ``DEBUG_CONFIGURATION`` # The configuration (``/p:Configuration`` msbuild parameter) # used for Debug builds. -# ``DEBUG_CONFIGURATION`` -# The configuration (``/p:Configuration`` msbuild parameter) -# used for Debug builds. +# ``TARGET_PLATFORM_VERSION`` +# The WindowsTargetPlatformVersion (``/p:WindowsTargetPlatformVersion`` msbuild parameter) # ``PLATFORM`` # The platform (``/p:Platform`` msbuild parameter) # used for the build. @@ -36,7 +36,7 @@ # function(vcpkg_build_msbuild) - cmake_parse_arguments(_csc "" "PROJECT_PATH;RELEASE_CONFIGURATION;DEBUG_CONFIGURATION;PLATFORM" "OPTIONS;OPTIONS_RELEASE;OPTIONS_DEBUG" ${ARGN}) + cmake_parse_arguments(_csc "" "PROJECT_PATH;RELEASE_CONFIGURATION;DEBUG_CONFIGURATION;PLATFORM;TARGET_PLATFORM_VERSION" "OPTIONS;OPTIONS_RELEASE;OPTIONS_DEBUG" ${ARGN}) if(NOT DEFINED _csc_RELEASE_CONFIGURATION) set(_csc_RELEASE_CONFIGURATION Release) @@ -47,6 +47,9 @@ function(vcpkg_build_msbuild) if(NOT DEFINED _csc_PLATFORM) set(_csc_PLATFORM ${TRIPLET_SYSTEM_ARCH}) endif() + if(DEFINED _csc_TARGET_PLATFORM_VERSION) + set(_csc_TARGET_PLATFORM_VERSION /p:WindowsTargetPlatformVersion=${_csc_TARGET_PLATFORM_VERSION}) + endif() message(STATUS "Building ${_csc_PROJECT_PATH} for Release") file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) @@ -56,6 +59,7 @@ function(vcpkg_build_msbuild) /p:Platform=${_csc_PLATFORM} /p:VCPkgLocalAppDataDisabled=true /p:UseIntelMKL=No + ${_csc_TARGET_PLATFORM_VERSION} /m WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel LOGNAME build-${TARGET_TRIPLET}-rel @@ -69,6 +73,7 @@ function(vcpkg_build_msbuild) /p:Platform=${_csc_PLATFORM} /p:VCPkgLocalAppDataDisabled=true /p:UseIntelMKL=No + ${_csc_TARGET_PLATFORM_VERSION} /m WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg LOGNAME build-${TARGET_TRIPLET}-dbg -- cgit v1.2.3 From 3379a3e8e2e27bcba243a14b31b3c3b5943b55d0 Mon Sep 17 00:00:00 2001 From: Mikhail Paulyshka Date: Sun, 12 Mar 2017 15:22:05 +0300 Subject: [mpir] handle Windows SDK version properly (+1 squashed commits) Squashed commits: [a820112] [mpir] retarget MSVS2017 to Windows 10 SDK --- ports/mpir/CONTROL | 2 +- ports/mpir/portfile.cmake | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ports/mpir/CONTROL b/ports/mpir/CONTROL index 2b67c7c98..fc15d9b41 100644 --- a/ports/mpir/CONTROL +++ b/ports/mpir/CONTROL @@ -1,3 +1,3 @@ Source: mpir -Version: 3.0.0-1 +Version: 3.0.0-2 Description: Multiple Precision Integers and Rationals. \ No newline at end of file diff --git a/ports/mpir/portfile.cmake b/ports/mpir/portfile.cmake index 96bfa9454..41ae41b01 100644 --- a/ports/mpir/portfile.cmake +++ b/ports/mpir/portfile.cmake @@ -16,14 +16,17 @@ if(VCPKG_PLATFORM_TOOLSET MATCHES "v141*") else() set(MSVC_VERSION 14) endif() +vcpkg_get_windows_sdk(WINDOWS_SDK) if (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/build.vc${MSVC_VERSION}/dll_mpir_gc/dll_mpir_gc.vcxproj + TARGET_PLATFORM_VERSION ${WINDOWS_SDK} ) else() vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/build.vc${MSVC_VERSION}/lib_mpir_gc/lib_mpir_gc.vcxproj + TARGET_PLATFORM_VERSION ${WINDOWS_SDK} ) endif() -- cgit v1.2.3 From 8fc1447da763ffccd06efe171f1827ec018d2da2 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 13 Mar 2017 14:02:28 -0700 Subject: [vcpkg_build_msbuild] Default to overriding WinSDK version --- scripts/cmake/vcpkg_build_msbuild.cmake | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/scripts/cmake/vcpkg_build_msbuild.cmake b/scripts/cmake/vcpkg_build_msbuild.cmake index 7de06241c..d143a6a81 100644 --- a/scripts/cmake/vcpkg_build_msbuild.cmake +++ b/scripts/cmake/vcpkg_build_msbuild.cmake @@ -47,20 +47,25 @@ function(vcpkg_build_msbuild) if(NOT DEFINED _csc_PLATFORM) set(_csc_PLATFORM ${TRIPLET_SYSTEM_ARCH}) endif() - if(DEFINED _csc_TARGET_PLATFORM_VERSION) - set(_csc_TARGET_PLATFORM_VERSION /p:WindowsTargetPlatformVersion=${_csc_TARGET_PLATFORM_VERSION}) + if(NOT DEFINED _csc_TARGET_PLATFORM_VERSION) + vcpkg_get_windows_sdk(_csc_TARGET_PLATFORM_VERSION) endif() + list(APPEND _csc_OPTIONS + /p:Platform=${_csc_PLATFORM} + /p:VCPkgLocalAppDataDisabled=true + /p:UseIntelMKL=No + /p:WindowsTargetPlatformVersion=${_csc_TARGET_PLATFORM_VERSION} + /m + ) + message(STATUS "Building ${_csc_PROJECT_PATH} for Release") file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) vcpkg_execute_required_process( - COMMAND msbuild ${_csc_PROJECT_PATH} ${_csc_OPTIONS} ${_csc_OPTIONS_RELEASE} + COMMAND msbuild ${_csc_PROJECT_PATH} /p:Configuration=${_csc_RELEASE_CONFIGURATION} - /p:Platform=${_csc_PLATFORM} - /p:VCPkgLocalAppDataDisabled=true - /p:UseIntelMKL=No - ${_csc_TARGET_PLATFORM_VERSION} - /m + ${_csc_OPTIONS} + ${_csc_OPTIONS_RELEASE} WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel LOGNAME build-${TARGET_TRIPLET}-rel ) @@ -68,13 +73,10 @@ function(vcpkg_build_msbuild) message(STATUS "Building ${_csc_PROJECT_PATH} for Debug") file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) vcpkg_execute_required_process( - COMMAND msbuild ${_csc_PROJECT_PATH} ${_csc_OPTIONS} ${_csc_OPTIONS_DEBUG} + COMMAND msbuild ${_csc_PROJECT_PATH} /p:Configuration=${_csc_DEBUG_CONFIGURATION} - /p:Platform=${_csc_PLATFORM} - /p:VCPkgLocalAppDataDisabled=true - /p:UseIntelMKL=No - ${_csc_TARGET_PLATFORM_VERSION} - /m + ${_csc_OPTIONS} + ${_csc_OPTIONS_DEBUG} WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg LOGNAME build-${TARGET_TRIPLET}-dbg ) -- cgit v1.2.3 From 32d79e94863683f5ec1720cf1d9fa5b92622b7f4 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 13 Mar 2017 14:05:04 -0700 Subject: [mpir] Portfile cleanup. Always use the library copyright file (we do not build the executables). Leave copying pdbs to vcpkg_copy_pdbs(). Use the newer VCPKG_TARGET_ARCHITECTURE over TRIPLET_SYSTEM_ARCH. CMake's "MATCHES" conditional performs regex substring search, so * is not needed. --- ports/mpir/portfile.cmake | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/ports/mpir/portfile.cmake b/ports/mpir/portfile.cmake index 41ae41b01..6e01043f3 100644 --- a/ports/mpir/portfile.cmake +++ b/ports/mpir/portfile.cmake @@ -11,7 +11,7 @@ vcpkg_download_distfile(ARCHIVE_FILE ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) -if(VCPKG_PLATFORM_TOOLSET MATCHES "v141*") +if(VCPKG_PLATFORM_TOOLSET MATCHES "v141") set(MSVC_VERSION 15) else() set(MSVC_VERSION 14) @@ -30,10 +30,10 @@ else() ) endif() -IF (TRIPLET_SYSTEM_ARCH MATCHES "x86") +IF (VCPKG_TARGET_ARCHITECTURE MATCHES "x86") SET(BUILD_ARCH "Win32") ELSE() - SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH}) + SET(BUILD_ARCH ${VCPKG_TARGET_ARCHITECTURE}) ENDIF() if (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") @@ -46,12 +46,10 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") ) file(INSTALL ${SOURCE_PATH}/dll/${BUILD_ARCH}/Debug/mpir.dll - ${SOURCE_PATH}/dll/${BUILD_ARCH}/Debug/mpir.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin ) file(INSTALL ${SOURCE_PATH}/dll/${BUILD_ARCH}/Release/mpir.dll - ${SOURCE_PATH}/dll/${BUILD_ARCH}/Release/mpir.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/bin ) file(INSTALL @@ -80,7 +78,7 @@ else() ${SOURCE_PATH}/lib/${BUILD_ARCH}/Release/mpir.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib ) - file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/mpir RENAME copyright) + file(INSTALL ${SOURCE_PATH}/COPYING.lib DESTINATION ${CURRENT_PACKAGES_DIR}/share/mpir RENAME copyright) endif() message(STATUS "Installing done") -- cgit v1.2.3 From f44063289412d46187ce72061e8e474e90f1cc63 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 13 Mar 2017 14:06:48 -0700 Subject: [mpir] Rely on default override of WinSDK. --- ports/mpir/portfile.cmake | 3 --- 1 file changed, 3 deletions(-) diff --git a/ports/mpir/portfile.cmake b/ports/mpir/portfile.cmake index 6e01043f3..1595a6533 100644 --- a/ports/mpir/portfile.cmake +++ b/ports/mpir/portfile.cmake @@ -16,17 +16,14 @@ if(VCPKG_PLATFORM_TOOLSET MATCHES "v141") else() set(MSVC_VERSION 14) endif() -vcpkg_get_windows_sdk(WINDOWS_SDK) if (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/build.vc${MSVC_VERSION}/dll_mpir_gc/dll_mpir_gc.vcxproj - TARGET_PLATFORM_VERSION ${WINDOWS_SDK} ) else() vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/build.vc${MSVC_VERSION}/lib_mpir_gc/lib_mpir_gc.vcxproj - TARGET_PLATFORM_VERSION ${WINDOWS_SDK} ) endif() -- cgit v1.2.3 From 26b9278a4c73eebb2bf21beccac168d603206126 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 13 Mar 2017 14:08:40 -0700 Subject: [vcpkg_build_msbuild] Perform a full rebuild by default. --- scripts/cmake/vcpkg_build_msbuild.cmake | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/cmake/vcpkg_build_msbuild.cmake b/scripts/cmake/vcpkg_build_msbuild.cmake index d143a6a81..748b47b7b 100644 --- a/scripts/cmake/vcpkg_build_msbuild.cmake +++ b/scripts/cmake/vcpkg_build_msbuild.cmake @@ -24,6 +24,8 @@ # used for Debug builds. # ``TARGET_PLATFORM_VERSION`` # The WindowsTargetPlatformVersion (``/p:WindowsTargetPlatformVersion`` msbuild parameter) +# ``TARGET`` +# The MSBuild target to build. (``/t:``) # ``PLATFORM`` # The platform (``/p:Platform`` msbuild parameter) # used for the build. @@ -35,8 +37,9 @@ # The options passed to msbuild for Debug builds. # + function(vcpkg_build_msbuild) - cmake_parse_arguments(_csc "" "PROJECT_PATH;RELEASE_CONFIGURATION;DEBUG_CONFIGURATION;PLATFORM;TARGET_PLATFORM_VERSION" "OPTIONS;OPTIONS_RELEASE;OPTIONS_DEBUG" ${ARGN}) + cmake_parse_arguments(_csc "" "PROJECT_PATH;RELEASE_CONFIGURATION;DEBUG_CONFIGURATION;PLATFORM;TARGET_PLATFORM_VERSION;TARGET" "OPTIONS;OPTIONS_RELEASE;OPTIONS_DEBUG" ${ARGN}) if(NOT DEFINED _csc_RELEASE_CONFIGURATION) set(_csc_RELEASE_CONFIGURATION Release) @@ -50,8 +53,12 @@ function(vcpkg_build_msbuild) if(NOT DEFINED _csc_TARGET_PLATFORM_VERSION) vcpkg_get_windows_sdk(_csc_TARGET_PLATFORM_VERSION) endif() + if(NOT DEFINED _csc_TARGET) + set(_csc_TARGET Rebuild) + endif() list(APPEND _csc_OPTIONS + /t:${_csc_TARGET} /p:Platform=${_csc_PLATFORM} /p:VCPkgLocalAppDataDisabled=true /p:UseIntelMKL=No -- cgit v1.2.3