diff options
| author | Yury Bura <yurybura@gmail.com> | 2021-10-12 04:21:08 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-10-11 18:21:08 -0700 |
| commit | f904f7354dce4cb396a4d0792e36319d78ccccfb (patch) | |
| tree | af006c1454ba942a97793048fdd9edfb6429ad3c /ports | |
| parent | e29e78d835618a136d117d8836835520bde33eb1 (diff) | |
| download | vcpkg-f904f7354dce4cb396a4d0792e36319d78ccccfb.tar.gz vcpkg-f904f7354dce4cb396a4d0792e36319d78ccccfb.zip | |
[boost] bugfix and new features after update to 1.77.0 (#20432)
* [scripts/boost] fix issue #20417
[boost-iostreams] replace explicit dependencies with default-features, allow to disable compression filters
* add versions
* [scripts/boost] update port version after #20421
* [boost-odeint] move boost-mpi dependency to the feature
* add version
* [boost-modular-build-helper] rework user-config generation
* [boost-python] move python3 from explicit dependency to default feature
* [boost-modular-build-helper] update version
* add verions
* [boost-modular-build-helper] fix empty flags
* update version
* Fix compilation on Emscripten / WebAssembly (#20551)
* [opencv4,opencv3] Control exported protobuf dependency (#20550)
* Control exported protobuf dependency
* Update versions
* Control exported protobuf dependency
* Update versions
* [OpenMVS] restore deprecated cmake scripts for configure, build & fixup targets (#20422)
* [OpenMVS] restore deprecated cmake scripts
* [OpenMVS] fix references
* switch back to vcpkg_cmake_*
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
* [libffi] Don't replace string in file that doesn't exist. (#20554)
* Don't replace string in file that doesn't exist.
* Update per bot.
* Update per bot again.
* Address comments.
* [json-dto] Update to 0.2.14 (#20570)
* json-dto updated to v.0.2.14.
* json-dto-0.2.14 added to baseline.
* Change deprecated commands.
* Update baseline for fresh json-dto-0.2.14.
* [sail] Update to 0.9.0-pre17 (#20562)
* [sail] Update to 0.9.0-pre17
* [sail] vcpkg x-add-version --all --overwrite-version
* [sail] Update pre17 hash
* [sail] vcpkg x-add-version --all --overwrite-version
* [freexl] Update to 1.0.6 (#20520)
* Reformat portfile
* Minimize makefiles patch
* Update to 1.0.6
* Fix uwp builds, remove skip from baseline
* Install pc file for windows
* Update versions
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
* [dartsim] Update to 6.11.0 (#20566)
* Update dartsim
* Use newer vcpkg functions
* Update version number
* Update ports/dartsim/portfile.cmake
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
* Update versions
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
* [scripts/boost] update Boost version in boost-modular-build.cmake to avoid manual changes
* update version
* [boost-modular-build-helper] fix USER_CONFIG_EXTRA_LINES variable name and rename generated files
* update version
* Resolve differences from rerunning generate-ports.ps1.
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
Co-authored-by: Tobias Markus <tobbi.bugs@googlemail.com>
Co-authored-by: Kai Pastor <dg0yt@darc.de>
Co-authored-by: Stefano Sinigardi <stesinigardi@hotmail.com>
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
Co-authored-by: Lars Glud <larshg@gmail.com>
Co-authored-by: eao197 <eao197@users.noreply.github.com>
Co-authored-by: Dmitry Baryshev <dmitrymq@gmail.com>
Co-authored-by: Akash <Ace314159@users.noreply.github.com>
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
Diffstat (limited to 'ports')
| -rw-r--r-- | ports/boost-config/portfile.cmake | 3 | ||||
| -rw-r--r-- | ports/boost-config/vcpkg.json | 2 | ||||
| -rw-r--r-- | ports/boost-iostreams/b2-options.cmake | 102 | ||||
| -rw-r--r-- | ports/boost-iostreams/vcpkg.json | 37 | ||||
| -rw-r--r-- | ports/boost-modular-build-helper/CMakeLists.txt | 99 | ||||
| -rw-r--r-- | ports/boost-modular-build-helper/Jamroot.jam.in (renamed from ports/boost-modular-build-helper/Jamroot.jam) | 4 | ||||
| -rw-r--r-- | ports/boost-modular-build-helper/boost-modular-build.cmake | 31 | ||||
| -rw-r--r-- | ports/boost-modular-build-helper/portfile.cmake | 6 | ||||
| -rw-r--r-- | ports/boost-modular-build-helper/user-config.jam.in (renamed from ports/boost-modular-build-helper/user-config.jam) | 37 | ||||
| -rw-r--r-- | ports/boost-modular-build-helper/vcpkg.json | 1 | ||||
| -rw-r--r-- | ports/boost-odeint/vcpkg.json | 15 | ||||
| -rw-r--r-- | ports/boost-process/portfile.cmake | 3 | ||||
| -rw-r--r-- | ports/boost-process/vcpkg.json | 2 | ||||
| -rw-r--r-- | ports/boost-python/b2-options.cmake | 42 | ||||
| -rw-r--r-- | ports/boost-python/vcpkg.json | 11 | ||||
| -rw-r--r-- | ports/boost/vcpkg.json | 9 |
16 files changed, 259 insertions, 145 deletions
diff --git a/ports/boost-config/portfile.cmake b/ports/boost-config/portfile.cmake index 2fdbf5504..c32b1dcb7 100644 --- a/ports/boost-config/portfile.cmake +++ b/ports/boost-config/portfile.cmake @@ -6,8 +6,7 @@ vcpkg_from_github( REF boost-1.77.0
SHA512 c6df16825b7bb27412667e00b6b6cdecbf56ee0707aa1df3505637c7de5c39c87335fabd7cd4361b29625d71c7664e6af865fc271ad0b3e70cc8872825f6155e
HEAD_REF master
- PATCHES
- fix-emscripten-compilation.patch
+ PATCHES fix-emscripten-compilation.patch
)
include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake)
diff --git a/ports/boost-config/vcpkg.json b/ports/boost-config/vcpkg.json index fd0c8713a..3b56236a5 100644 --- a/ports/boost-config/vcpkg.json +++ b/ports/boost-config/vcpkg.json @@ -1,7 +1,7 @@ { "name": "boost-config", "version": "1.77.0", - "port-version": 1, + "port-version": 2, "description": "Boost config module", "homepage": "https://github.com/boostorg/config", "dependencies": [ diff --git a/ports/boost-iostreams/b2-options.cmake b/ports/boost-iostreams/b2-options.cmake index 5a10a4ae1..1271c8130 100644 --- a/ports/boost-iostreams/b2-options.cmake +++ b/ports/boost-iostreams/b2-options.cmake @@ -1,30 +1,86 @@ -list(APPEND B2_OPTIONS
- -sZLIB_INCLUDE="${CURRENT_INSTALLED_DIR}/include"
- -sBZIP2_INCLUDE="${CURRENT_INSTALLED_DIR}/include"
- -sLZMA_INCLUDE="${CURRENT_INSTALLED_DIR}/include"
- -sZSTD_INCLUDE="${CURRENT_INSTALLED_DIR}/include"
-)
-
if(CMAKE_BUILD_TYPE STREQUAL "Release")
- set(lib_suffix lib)
+ set(lib_path_suffix lib)
+else()
+ set(lib_path_suffix debug/lib)
+endif()
+
+if("bzip2" IN_LIST FEATURES)
+ list(APPEND B2_OPTIONS
+ -sBZIP2_INCLUDE="${CURRENT_INSTALLED_DIR}/include"
+ )
+ # Overwride debug library name
+ if(CMAKE_BUILD_TYPE STREQUAL "Debug")
+ list(APPEND B2_OPTIONS
+ -sBZIP2_NAME=bz2d
+ )
+ endif()
+ list(APPEND B2_OPTIONS
+ -sBZIP2_LIBRARY_PATH="${CURRENT_INSTALLED_DIR}/${lib_path_suffix}"
+ )
+else()
+ list(APPEND B2_OPTIONS
+ -sNO_BZIP2=1
+ )
+endif()
+
+if("lzma" IN_LIST FEATURES)
+ list(APPEND B2_OPTIONS
+ -sLZMA_INCLUDE="${CURRENT_INSTALLED_DIR}/include"
+ )
+ # Overwride debug library name
+ if(CMAKE_BUILD_TYPE STREQUAL "Debug")
+ list(APPEND B2_OPTIONS
+ -sLZMA_NAME=lzmad
+ )
+ endif()
+ list(APPEND B2_OPTIONS
+ -sLZMA_LIBRARY_PATH="${CURRENT_INSTALLED_DIR}/${lib_path_suffix}"
+ )
else()
- set(lib_suffix debug/lib)
- if(WIN32)
- set(ZLIB_NAME zlibd)
- else()
- set(ZLIB_NAME z)
+ list(APPEND B2_OPTIONS
+ -sNO_LZMA=1
+ )
+endif()
+
+if("zlib" IN_LIST FEATURES)
+ list(APPEND B2_OPTIONS
+ -sZLIB_INCLUDE="${CURRENT_INSTALLED_DIR}/include"
+ )
+ # Overwride debug library name
+ if(CMAKE_BUILD_TYPE STREQUAL "Debug")
+ if(WIN32)
+ set(ZLIB_NAME zlibd)
+ else()
+ set(ZLIB_NAME z)
+ endif()
+ list(APPEND B2_OPTIONS
+ -sZLIB_NAME=${ZLIB_NAME}
+ )
endif()
list(APPEND B2_OPTIONS
- -sZLIB_NAME=${ZLIB_NAME}
- -sBZIP2_NAME=bz2d
- -sLZMA_NAME=lzmad
- -sZSTD_BINARY=zstdd
+ -sZLIB_LIBRARY_PATH="${CURRENT_INSTALLED_DIR}/${lib_path_suffix}"
+ )
+else()
+ list(APPEND B2_OPTIONS
+ -sNO_ZLIB=1
)
endif()
-list(APPEND B2_OPTIONS
- -sZLIB_LIBRARY_PATH="${CURRENT_INSTALLED_DIR}/${lib_suffix}"
- -sBZIP2_LIBRARY_PATH="${CURRENT_INSTALLED_DIR}/${lib_suffix}"
- -sLZMA_LIBRARY_PATH="${CURRENT_INSTALLED_DIR}/${lib_suffix}"
- -sZSTD_LIBRARY_PATH="${CURRENT_INSTALLED_DIR}/${lib_suffix}"
-)
+if("zstd" IN_LIST FEATURES)
+ list(APPEND B2_OPTIONS
+ -sZSTD_INCLUDE="${CURRENT_INSTALLED_DIR}/include"
+ )
+ # Overwride debug library name
+ if(CMAKE_BUILD_TYPE STREQUAL "Debug")
+ list(APPEND B2_OPTIONS
+ -sZSTD_NAME=zstdd
+ )
+ endif()
+ list(APPEND B2_OPTIONS
+ -sZSTD_LIBRARY_PATH="${CURRENT_INSTALLED_DIR}/${lib_path_suffix}"
+ )
+else()
+ list(APPEND B2_OPTIONS
+ -sNO_ZSTD=1
+ )
+endif()
\ No newline at end of file diff --git a/ports/boost-iostreams/vcpkg.json b/ports/boost-iostreams/vcpkg.json index 607771837..4d694c817 100644 --- a/ports/boost-iostreams/vcpkg.json +++ b/ports/boost-iostreams/vcpkg.json @@ -1,6 +1,7 @@ { "name": "boost-iostreams", "version": "1.77.0", + "port-version": 1, "description": "Boost iostreams module", "homepage": "https://github.com/boostorg/iostreams", "supports": "!uwp", @@ -32,13 +33,41 @@ "boost-type-traits", "boost-utility", "boost-vcpkg-helpers", - "bzip2", - "liblzma", { "name": "vcpkg-cmake", "host": true - }, + } + ], + "default-features": [ + "bzip2", + "lzma", "zlib", "zstd" - ] + ], + "features": { + "bzip2": { + "description": "Support bzip2 filters", + "dependencies": [ + "bzip2" + ] + }, + "lzma": { + "description": "Support LZMA/xz filters", + "dependencies": [ + "liblzma" + ] + }, + "zlib": { + "description": "Support zlib filters", + "dependencies": [ + "zlib" + ] + }, + "zstd": { + "description": "Support zstd filters", + "dependencies": [ + "zstd" + ] + } + } } diff --git a/ports/boost-modular-build-helper/CMakeLists.txt b/ports/boost-modular-build-helper/CMakeLists.txt index 8b2f5910a..f4a0f9053 100644 --- a/ports/boost-modular-build-helper/CMakeLists.txt +++ b/ports/boost-modular-build-helper/CMakeLists.txt @@ -1,17 +1,14 @@ cmake_minimum_required(VERSION 3.9)
project(boost CXX)
-set(B2_OPTIONS)
+# The following variables are used in user-config.jam file
+set(USER_CONFIG_TOOLSET)
+set(USER_CONFIG_TOOLSET_VERSION)
+set(USER_CONFIG_TOOLSET_INVOCATION_COMMAND)
+set(USER_CONFIG_TOOLSET_OPTIONS)
+set(USER_CONFIG_EXTRA_LINES)
-if(MSVC)
- if(MSVC_VERSION LESS 1900)
- math(EXPR BOOST_MSVC_VERSION "${MSVC_VERSION} / 10 - 60")
- else()
- math(EXPR BOOST_MSVC_VERSION "${MSVC_VERSION} / 10 - 50")
- endif()
-else()
- set(VCPKG_PLATFORM_TOOLSET external)
-endif()
+set(B2_OPTIONS)
#### Handle ICU
if(WIN32)
@@ -24,10 +21,8 @@ endif() # Add build type specific options
if(VCPKG_CRT_LINKAGE STREQUAL "dynamic")
list(APPEND B2_OPTIONS runtime-link=shared)
- set(LIB_RUNTIME_LINK "shared")
else()
list(APPEND B2_OPTIONS runtime-link=static)
- set(LIB_RUNTIME_LINK "static")
endif()
if(BUILD_SHARED_LIBS)
@@ -56,31 +51,28 @@ if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86" AND WIN32) list(APPEND B2_OPTIONS "asmflags=/safeseh")
endif()
-file(TO_CMAKE_PATH "${CMAKE_CURRENT_LIST_DIR}/nothing.bat" NOTHING_BAT)
-
if(MSVC)
- set(B2_TOOLSET msvc)
+ set(USER_CONFIG_TOOLSET msvc)
+ if(MSVC_VERSION LESS 1900)
+ math(EXPR USER_CONFIG_TOOLSET_VERSION "${MSVC_VERSION} / 10 - 60")
+ else()
+ math(EXPR USER_CONFIG_TOOLSET_VERSION "${MSVC_VERSION} / 10 - 50")
+ endif()
list(APPEND B2_OPTIONS target-os=windows)
elseif(APPLE)
- set(B2_TOOLSET clang)
+ set(USER_CONFIG_TOOLSET clang)
list(APPEND B2_OPTIONS target-os=darwin)
elseif(WIN32)
- set(B2_TOOLSET gcc)
+ set(USER_CONFIG_TOOLSET gcc)
list(APPEND B2_OPTIONS target-os=windows)
elseif(ANDROID)
- set(B2_TOOLSET gcc)
+ set(USER_CONFIG_TOOLSET gcc)
list(APPEND B2_OPTIONS target-os=android)
else()
- set(B2_TOOLSET gcc)
+ set(USER_CONFIG_TOOLSET gcc)
list(APPEND B2_OPTIONS target-os=linux)
endif()
-if(WIN32)
- list(APPEND B2_OPTIONS threadapi=win32)
-else()
- list(APPEND B2_OPTIONS threadapi=pthread)
-endif()
-
# Properly handle compiler and linker flags passed by VCPKG
if(CMAKE_BUILD_TYPE STREQUAL "Release")
set(CXXFLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELEASE}")
@@ -122,9 +114,12 @@ if(APPLE) endforeach()
endif()
+string(REGEX REPLACE "[ \t\r\n]+" " " CXXFLAGS "${CXXFLAGS}")
string(STRIP "${CXXFLAGS}" CXXFLAGS)
-string(STRIP "${CFLAGS}" CFLAGS)
-string(STRIP "${LDFLAGS}" LDFLAGS)
+string(REGEX REPLACE "[ \t\r\n]+" " " CFLAGS "${CFLAGS}")
+string(STRIP "${CFLAGS}" CFLAGS)
+string(REGEX REPLACE "[ \t\r\n]+" " " LDFLAGS "${LDFLAGS}")
+string(STRIP "${LDFLAGS}" LDFLAGS)
if(NOT CXXFLAGS STREQUAL "")
string(REPLACE " " " <cxxflags>" CXXFLAGS "<cxxflags>${CXXFLAGS}")
@@ -187,6 +182,39 @@ if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") list(APPEND B2_OPTIONS linkflags=WindowsApp.lib)
endif()
+set(USER_CONFIG_TOOLSET_INVOCATION_COMMAND "\"${CMAKE_CXX_COMPILER}\"")
+
+if(USER_CONFIG_TOOLSET STREQUAL "msvc")
+ file(TO_CMAKE_PATH "${CMAKE_CURRENT_LIST_DIR}/nothing.bat" NOTHING_BAT)
+ string(APPEND USER_CONFIG_TOOLSET_OPTIONS
+ " <setup>\"${NOTHING_BAT}\"\n"
+ " ${CXXFLAGS}\n"
+ " ${CFLAGS}\n"
+ " ${LDFLAGS}\n"
+ )
+else()
+ string(APPEND USER_CONFIG_TOOLSET_OPTIONS
+ " <ranlib>\"${CMAKE_RANLIB}\"\n"
+ " <archiver>\"${CMAKE_AR}\"\n"
+ " ${CXXFLAGS}\n"
+ " ${CFLAGS}\n"
+ " ${LDFLAGS}\n"
+ )
+endif()
+
+if(WIN32 AND NOT USER_CONFIG_TOOLSET STREQUAL "msvc")
+ # MINGW here causes b2 to not run cygpath
+ string(APPEND USER_CONFIG_TOOLSET_OPTIONS
+ " <flavor>mingw\n"
+ )
+endif()
+
+if(WIN32)
+ list(APPEND B2_OPTIONS threadapi=win32)
+else()
+ list(APPEND B2_OPTIONS threadapi=pthread)
+endif()
+
if(CMAKE_BUILD_TYPE STREQUAL "Release")
list(APPEND B2_OPTIONS variant=release)
else()
@@ -197,23 +225,23 @@ if(NOT WIN32) list(APPEND B2_OPTIONS "--layout=system")
endif()
+include(ProcessorCount)
+ProcessorCount(NUMBER_OF_PROCESSORS)
+if(NOT NUMBER_OF_PROCESSORS)
+ set(NUMBER_OF_PROCESSORS 1)
+endif()
+
# Include port specific CMake fragment
if(DEFINED BOOST_CMAKE_FRAGMENT)
message(STATUS "Including ${BOOST_CMAKE_FRAGMENT}")
include(${BOOST_CMAKE_FRAGMENT})
endif()
-configure_file(${CMAKE_CURRENT_LIST_DIR}/user-config.jam ${CMAKE_CURRENT_BINARY_DIR}/user-config.jam @ONLY)
-
-include(ProcessorCount)
-ProcessorCount(NUMBER_OF_PROCESSORS)
-if(NOT NUMBER_OF_PROCESSORS)
- set(NUMBER_OF_PROCESSORS 1)
-endif()
+configure_file(${CMAKE_CURRENT_LIST_DIR}/user-config.jam.in ${CMAKE_CURRENT_BINARY_DIR}/user-config.jam @ONLY)
add_custom_target(boost ALL
COMMAND "${B2_EXE}"
- toolset=${B2_TOOLSET}
+ toolset=${USER_CONFIG_TOOLSET}
--user-config=${CMAKE_CURRENT_BINARY_DIR}/user-config.jam
--stagedir=${CMAKE_CURRENT_BINARY_DIR}/stage
--build-dir=${CMAKE_CURRENT_BINARY_DIR}
@@ -235,6 +263,7 @@ add_custom_target(boost ALL --hash
-q
debug-symbols=on
+ # Enable debugging level 2.
-d +2
threading=multi
diff --git a/ports/boost-modular-build-helper/Jamroot.jam b/ports/boost-modular-build-helper/Jamroot.jam.in index 2a70c7ebd..6094cc8d1 100644 --- a/ports/boost-modular-build-helper/Jamroot.jam +++ b/ports/boost-modular-build-helper/Jamroot.jam.in @@ -1,5 +1,5 @@ -constant BOOST_VERSION : 1.77.0 ;
-constant BOOST_VERSION_ABI_TAG : 1_77 ;
+constant BOOST_VERSION : @BOOST_VERSION@ ;
+constant BOOST_VERSION_ABI_TAG : @BOOST_VERSION_ABI_TAG@ ;
constant BOOST_JAMROOT_MODULE : $(__name__) ;
import boostcpp ;
diff --git a/ports/boost-modular-build-helper/boost-modular-build.cmake b/ports/boost-modular-build-helper/boost-modular-build.cmake index e4a4fd9f3..4e7dfb456 100644 --- a/ports/boost-modular-build-helper/boost-modular-build.cmake +++ b/ports/boost-modular-build-helper/boost-modular-build.cmake @@ -1,6 +1,14 @@ get_filename_component(BOOST_BUILD_INSTALLED_DIR "${CMAKE_CURRENT_LIST_DIR}" DIRECTORY)
get_filename_component(BOOST_BUILD_INSTALLED_DIR "${BOOST_BUILD_INSTALLED_DIR}" DIRECTORY)
+set(BOOST_VERSION 1.77.0)
+string(REGEX MATCH "^([0-9]+)\\.([0-9]+)\\.([0-9]+)" BOOST_VERSION_MATCH "${BOOST_VERSION}")
+if("${CMAKE_MATCH_3}" GREATER 0)
+ set(BOOST_VERSION_ABI_TAG "${CMAKE_MATCH_1}_${CMAKE_MATCH_2}_${CMAKE_MATCH_3}")
+else()
+ set(BOOST_VERSION_ABI_TAG "${CMAKE_MATCH_1}_${CMAKE_MATCH_2}")
+endif()
+
function(boost_modular_build)
cmake_parse_arguments(_bm "" "SOURCE_PATH;BOOST_CMAKE_FRAGMENT" "" ${ARGN})
@@ -8,9 +16,10 @@ function(boost_modular_build) message(FATAL_ERROR "SOURCE_PATH is a required argument to boost_modular_build.")
endif()
- # Next CMake variables may be overridden in the file specified in ${_bm_BOOST_CMAKE_FRAGMENT}
- set(B2_REQUIREMENTS) # this variable is used in the Jamroot.jam
+ # The following variables are used in the Jamroot.jam
+ set(B2_REQUIREMENTS)
+ # Some CMake variables may be overridden in the file specified in ${_bm_BOOST_CMAKE_FRAGMENT}
if(DEFINED _bm_BOOST_CMAKE_FRAGMENT)
message(STATUS "Including ${_bm_BOOST_CMAKE_FRAGMENT}")
include(${_bm_BOOST_CMAKE_FRAGMENT})
@@ -28,13 +37,13 @@ function(boost_modular_build) if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(BOOST_LIB_PREFIX)
- if(VCPKG_PLATFORM_TOOLSET MATCHES "v14.")
- set(BOOST_LIB_RELEASE_SUFFIX -vc140-mt.lib)
- set(BOOST_LIB_DEBUG_SUFFIX -vc140-mt-gd.lib)
- elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v120")
- set(BOOST_LIB_RELEASE_SUFFIX -vc120-mt.lib)
- set(BOOST_LIB_DEBUG_SUFFIX -vc120-mt-gd.lib)
- endif()
+ if(VCPKG_PLATFORM_TOOLSET MATCHES "v14.")
+ set(BOOST_LIB_RELEASE_SUFFIX -vc140-mt.lib)
+ set(BOOST_LIB_DEBUG_SUFFIX -vc140-mt-gd.lib)
+ elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v120")
+ set(BOOST_LIB_RELEASE_SUFFIX -vc120-mt.lib)
+ set(BOOST_LIB_DEBUG_SUFFIX -vc120-mt-gd.lib)
+ endif()
else()
set(BOOST_LIB_PREFIX lib)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
@@ -70,7 +79,7 @@ function(boost_modular_build) file(WRITE "${_jamfile}" "${_contents}")
endif()
- configure_file(${BOOST_BUILD_INSTALLED_DIR}/share/boost-build/Jamroot.jam ${_bm_SOURCE_PATH}/Jamroot.jam @ONLY)
+ configure_file(${BOOST_BUILD_INSTALLED_DIR}/share/boost-build/Jamroot.jam.in ${_bm_SOURCE_PATH}/Jamroot.jam @ONLY)
set(configure_options)
if(_bm_BOOST_CMAKE_FRAGMENT)
@@ -112,7 +121,7 @@ function(boost_modular_build) string(REPLACE "-x64-" "-" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake 3.10 and earlier to locate the binaries
string(REPLACE "-a32-" "-" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake 3.10 and earlier to locate the binaries
string(REPLACE "-a64-" "-" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake 3.10 and earlier to locate the binaries
- string(REPLACE "-1_77" "" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake > 3.10 to locate the binaries
+ string(REPLACE "-${BOOST_VERSION_ABI_TAG}" "" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake > 3.10 to locate the binaries
if("${DIRECTORY_OF_LIB_FILE}/${NEW_FILENAME}" STREQUAL "${DIRECTORY_OF_LIB_FILE}/${OLD_FILENAME}")
# nothing to do
elseif(EXISTS ${DIRECTORY_OF_LIB_FILE}/${NEW_FILENAME})
diff --git a/ports/boost-modular-build-helper/portfile.cmake b/ports/boost-modular-build-helper/portfile.cmake index 8224bb957..3caa70b6c 100644 --- a/ports/boost-modular-build-helper/portfile.cmake +++ b/ports/boost-modular-build-helper/portfile.cmake @@ -3,11 +3,11 @@ set(VCPKG_POLICY_EMPTY_PACKAGE enabled) file(
COPY
${CMAKE_CURRENT_LIST_DIR}/boost-modular-build.cmake
- ${CMAKE_CURRENT_LIST_DIR}/Jamroot.jam
- ${CMAKE_CURRENT_LIST_DIR}/nothing.bat
- ${CMAKE_CURRENT_LIST_DIR}/user-config.jam
${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt
+ ${CMAKE_CURRENT_LIST_DIR}/Jamroot.jam.in
+ ${CMAKE_CURRENT_LIST_DIR}/nothing.bat
${CMAKE_CURRENT_LIST_DIR}/usage
+ ${CMAKE_CURRENT_LIST_DIR}/user-config.jam.in
DESTINATION
${CURRENT_PACKAGES_DIR}/share/boost-build
)
\ No newline at end of file diff --git a/ports/boost-modular-build-helper/user-config.jam b/ports/boost-modular-build-helper/user-config.jam.in index aabe51b01..fbd6f8d36 100644 --- a/ports/boost-modular-build-helper/user-config.jam +++ b/ports/boost-modular-build-helper/user-config.jam.in @@ -1,36 +1,11 @@ import toolset ;
-if "@VCPKG_PLATFORM_TOOLSET@" != "external"
-{
- using msvc : @BOOST_MSVC_VERSION@ : cl.exe
- :
- <setup>"@NOTHING_BAT@"
- @CXXFLAGS@
- @CFLAGS@
- @LDFLAGS@
- ;
-}
-else
-{
- using @B2_TOOLSET@ : : @CMAKE_CXX_COMPILER@
- :
- <ranlib>@CMAKE_RANLIB@
- <archiver>@CMAKE_AR@
- @CXXFLAGS@
- @CFLAGS@
- @LDFLAGS@
- # MINGW here causes b2 to not run cygpath
- <flavor>mingw
- ;
-}
+using @USER_CONFIG_TOOLSET@ : @USER_CONFIG_TOOLSET_VERSION@ : @USER_CONFIG_TOOLSET_INVOCATION_COMMAND@
+ :
+@USER_CONFIG_TOOLSET_OPTIONS@
+ ;
-if "@PORT@" = "boost-python"
-{
- using python : @VCPKG_PYTHON3_VERSION@ : : "@VCPKG_PYTHON3_INCLUDE@" : "@VCPKG_PYTHON3_LIBS_RELEASE@" ;
- using python : @VCPKG_PYTHON3_VERSION@ : : "@VCPKG_PYTHON3_INCLUDE@" : "@VCPKG_PYTHON3_LIBS_DEBUG@" : <python-debugging>on ;
- using python : @VCPKG_PYTHON2_VERSION@ : : "@VCPKG_PYTHON2_INCLUDE@" : "@VCPKG_PYTHON2_LIBS_RELEASE@" ;
- using python : @VCPKG_PYTHON2_VERSION@ : : "@VCPKG_PYTHON2_INCLUDE@" : "@VCPKG_PYTHON2_LIBS_DEBUG@" : <python-debugging>on ;
-}
+@USER_CONFIG_EXTRA_LINES@
if "@PORT@" = "boost-mpi" || "@PORT@" = "boost-graph-parallel"
{
@@ -42,7 +17,7 @@ if "@PORT@" = "boost-mpi" || "@PORT@" = "boost-graph-parallel" project user-config : ;
-if "@VCPKG_PLATFORM_TOOLSET@" != "external"
+if "@USER_CONFIG_TOOLSET@" = "msvc"
{
lib advapi32 ;
diff --git a/ports/boost-modular-build-helper/vcpkg.json b/ports/boost-modular-build-helper/vcpkg.json index 63251aa3c..e81e9a0fc 100644 --- a/ports/boost-modular-build-helper/vcpkg.json +++ b/ports/boost-modular-build-helper/vcpkg.json @@ -1,6 +1,7 @@ { "name": "boost-modular-build-helper", "version": "1.77.0", + "port-version": 1, "description": "Internal vcpkg port used to build Boost libraries", "dependencies": [ "boost-uninstall" diff --git a/ports/boost-odeint/vcpkg.json b/ports/boost-odeint/vcpkg.json index 618b34f68..ffab59934 100644 --- a/ports/boost-odeint/vcpkg.json +++ b/ports/boost-odeint/vcpkg.json @@ -1,6 +1,7 @@ { "name": "boost-odeint", "version": "1.77.0", + "port-version": 1, "description": "Boost odeint module", "homepage": "https://github.com/boostorg/odeint", "dependencies": [ @@ -14,10 +15,6 @@ "boost-fusion", "boost-iterator", "boost-math", - { - "name": "boost-mpi", - "platform": "!uwp" - }, "boost-mpl", "boost-multi-array", "boost-preprocessor", @@ -29,5 +26,13 @@ "boost-units", "boost-utility", "boost-vcpkg-helpers" - ] + ], + "features": { + "mpi": { + "description": "Support parallelization with MPI", + "dependencies": [ + "boost-mpi" + ] + } + } } diff --git a/ports/boost-process/portfile.cmake b/ports/boost-process/portfile.cmake index 262e9f07d..efb0a5f91 100644 --- a/ports/boost-process/portfile.cmake +++ b/ports/boost-process/portfile.cmake @@ -6,8 +6,7 @@ vcpkg_from_github( REF boost-1.77.0
SHA512 00eb27f702f092a20fdf1669b8c9c993b751971592d0bc5aa50b02d99d985a75361621b624aa51eb550c9e7905e15877168ae9d0feb1957fc85f99c264b152fd
HEAD_REF master
- PATCHES
- fix_include.patch
+ PATCHES fix_include.patch
)
include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake)
diff --git a/ports/boost-process/vcpkg.json b/ports/boost-process/vcpkg.json index 904e90238..84dd98d52 100644 --- a/ports/boost-process/vcpkg.json +++ b/ports/boost-process/vcpkg.json @@ -1,7 +1,7 @@ { "name": "boost-process", "version": "1.77.0", - "port-version": 1, + "port-version": 2, "description": "Boost process module", "homepage": "https://github.com/boostorg/process", "supports": "!emscripten", diff --git a/ports/boost-python/b2-options.cmake b/ports/boost-python/b2-options.cmake index 3713424ed..f9f2e0f6a 100644 --- a/ports/boost-python/b2-options.cmake +++ b/ports/boost-python/b2-options.cmake @@ -1,28 +1,38 @@ -set(BUILD_PYTHON_VERSIONS)
+set(build_python_versions)
if("python2" IN_LIST FEATURES)
# Find Python2 libraries. Can't use find_package here, but we already know where everything is
- file(GLOB VCPKG_PYTHON2_INCLUDE "${CURRENT_INSTALLED_DIR}/include/python2.*")
- set(VCPKG_PYTHON2_LIBS_RELEASE "${CURRENT_INSTALLED_DIR}/lib")
- set(VCPKG_PYTHON2_LIBS_DEBUG "${CURRENT_INSTALLED_DIR}/debug/lib")
- string(REGEX REPLACE ".*python([0-9\.]+).*" "\\1" VCPKG_PYTHON2_VERSION "${VCPKG_PYTHON2_INCLUDE}")
- list(APPEND BUILD_PYTHON_VERSIONS "${VCPKG_PYTHON2_VERSION}")
+ file(GLOB python2_include_dir "${CURRENT_INSTALLED_DIR}/include/python2.*")
+ string(REGEX REPLACE ".*python([0-9\.]+).*" "\\1" python2_version "${python2_include_dir}")
+
+ string(APPEND USER_CONFIG_EXTRA_LINES
+ "using python : ${python2_version} : : \"${python2_include_dir}\" : \"${CURRENT_INSTALLED_DIR}/lib\" ;\n"
+ "using python : ${python2_version} : : \"${python2_include_dir}\" : \"${CURRENT_INSTALLED_DIR}/debug/lib\" : <python-debugging>on ;\n")
+ list(APPEND build_python_versions "${python2_version}")
endif()
-# Find Python3 libraries. Can't use find_package here, but we already know where everything is
-file(GLOB VCPKG_PYTHON3_INCLUDE "${CURRENT_INSTALLED_DIR}/include/python3.*")
-set(VCPKG_PYTHON3_LIBS_RELEASE "${CURRENT_INSTALLED_DIR}/lib")
-set(VCPKG_PYTHON3_LIBS_DEBUG "${CURRENT_INSTALLED_DIR}/debug/lib")
-string(REGEX REPLACE ".*python([0-9\.]+).*" "\\1" VCPKG_PYTHON3_VERSION "${VCPKG_PYTHON3_INCLUDE}")
-list(APPEND BUILD_PYTHON_VERSIONS "${VCPKG_PYTHON3_VERSION}")
+if("python3" IN_LIST FEATURES)
+ # Find Python3 libraries. Can't use find_package here, but we already know where everything is
+ file(GLOB python3_include_dir "${CURRENT_INSTALLED_DIR}/include/python3.*")
+ string(REGEX REPLACE ".*python([0-9\.]+).*" "\\1" python3_version "${python3_include_dir}")
-string(REPLACE ";" "," BUILD_PYTHON_VERSIONS "${BUILD_PYTHON_VERSIONS}")
+ string(APPEND USER_CONFIG_EXTRA_LINES
+ "using python : ${python3_version} : : \"${python3_include_dir}\" : \"${CURRENT_INSTALLED_DIR}/lib\" ;\n"
+ "using python : ${python3_version} : : \"${python3_include_dir}\" : \"${CURRENT_INSTALLED_DIR}/debug/lib\" : <python-debugging>on ;\n")
+ list(APPEND build_python_versions "${python3_version}")
+endif()
+if(NOT build_python_versions)
+ message(FATAL_ERROR "Boost.Python requires at least one Python specified as a feature.")
+endif()
+
+string(REPLACE ";" "," build_python_versions "${build_python_versions}")
list(APPEND B2_OPTIONS
- python=${BUILD_PYTHON_VERSIONS}
+ python=${build_python_versions}
)
-if(VCPKG_CXX_FLAGS_DEBUG MATCHES "BOOST_DEBUG_PYTHON")
- list(APPEND B2_OPTIONS_DBG
+
+if(CMAKE_CXX_FLAGS_DEBUG MATCHES "BOOST_DEBUG_PYTHON" AND CMAKE_BUILD_TYPE STREQUAL "Debug")
+ list(APPEND B2_OPTIONS
python-debugging=on
)
endif()
diff --git a/ports/boost-python/vcpkg.json b/ports/boost-python/vcpkg.json index 0ba6de705..51d50389b 100644 --- a/ports/boost-python/vcpkg.json +++ b/ports/boost-python/vcpkg.json @@ -1,6 +1,7 @@ { "name": "boost-python", "version": "1.77.0", + "port-version": 1, "description": "Boost python module", "homepage": "https://github.com/boostorg/python", "supports": "!uwp & !(arm & windows) & !emscripten", @@ -35,18 +36,26 @@ "boost-type-traits", "boost-utility", "boost-vcpkg-helpers", - "python3", { "name": "vcpkg-cmake", "host": true } ], + "default-features": [ + "python3" + ], "features": { "python2": { "description": "Build with Python2 support", "dependencies": [ "python2" ] + }, + "python3": { + "description": "Build with Python3 support", + "dependencies": [ + "python3" + ] } } } diff --git a/ports/boost/vcpkg.json b/ports/boost/vcpkg.json index cf925fe92..679f1b752 100644 --- a/ports/boost/vcpkg.json +++ b/ports/boost/vcpkg.json @@ -1,6 +1,7 @@ { "name": "boost", "version": "1.77.0", + "port-version": 1, "description": "Peer-reviewed portable C++ source libraries", "homepage": "https://boost.org", "dependencies": [ @@ -73,10 +74,6 @@ "boost-geometry", "boost-gil", "boost-graph", - { - "name": "boost-graph-parallel", - "platform": "!uwp" - }, "boost-hana", "boost-heap", "boost-histogram", @@ -112,10 +109,6 @@ "boost-metaparse", "boost-move", "boost-mp11", - { - "name": "boost-mpi", - "platform": "!uwp" - }, "boost-mpl", "boost-msm", "boost-multi-array", |
