mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-25 06:30:25 +08:00
cd57207772
Update `abseil` to 20240116.2. - [x] Changes comply with the [maintainer guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md). - [x] SHA512s are updated for each updated download. - [ ] ~~The "supports" clause reflects platforms that may be fixed by this new version.~~ - [ ] ~~Any fixed [CI baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt) entries are removed from that file.~~ - [ ] ~~Any patches that are no longer applied are deleted from the port's directory.~~ - [x] The version database is fixed by rerunning `./vcpkg x-add-version --all` and committing the result. - [x] Only one version is added to each modified port's versions file. Feature passed with following triplets: ``` x86-windows x64-windows x64-windows-static ``` Usage test passed on `x64-windows`. --------- Co-authored-by: Lily Wang <v-lilywang@microsoft.com>
59 lines
2.0 KiB
CMake
59 lines
2.0 KiB
CMake
if (NOT VCPKG_TARGET_IS_WINDOWS)
|
|
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
|
endif()
|
|
|
|
vcpkg_from_github(
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
REPO abseil/abseil-cpp
|
|
REF "${VERSION}"
|
|
SHA512 5062e731ee8c9a757e6d75fc1c558652deb4dd1daab4d6143f7ad52a139501c61365f89acbf82480be0f9a4911a58286560068d8b1a8b6774e6afad51739766e
|
|
HEAD_REF master
|
|
)
|
|
|
|
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
|
FEATURES
|
|
cxx17 ABSL_USE_CXX17
|
|
)
|
|
|
|
# With ABSL_PROPAGATE_CXX_STD=ON abseil automatically detect if it is being
|
|
# compiled with C++14 or C++17, and modifies the installed `absl/base/options.h`
|
|
# header accordingly. This works even if CMAKE_CXX_STANDARD is not set. Abseil
|
|
# uses the compiler default behavior to update `absl/base/options.h` as needed.
|
|
if (ABSL_USE_CXX17)
|
|
set(ABSL_USE_CXX17_OPTION "-DCMAKE_CXX_STANDARD=17")
|
|
endif ()
|
|
|
|
vcpkg_cmake_configure(
|
|
SOURCE_PATH "${SOURCE_PATH}"
|
|
DISABLE_PARALLEL_CONFIGURE
|
|
OPTIONS
|
|
-DABSL_PROPAGATE_CXX_STD=ON
|
|
${ABSL_USE_CXX17_OPTION}
|
|
)
|
|
|
|
vcpkg_cmake_install()
|
|
vcpkg_cmake_config_fixup(PACKAGE_NAME absl CONFIG_PATH lib/cmake/absl)
|
|
vcpkg_fixup_pkgconfig()
|
|
|
|
vcpkg_copy_pdbs()
|
|
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share"
|
|
"${CURRENT_PACKAGES_DIR}/debug/include"
|
|
"${CURRENT_PACKAGES_DIR}/include/absl/copts"
|
|
"${CURRENT_PACKAGES_DIR}/include/absl/strings/testdata"
|
|
"${CURRENT_PACKAGES_DIR}/include/absl/time/internal/cctz/testdata"
|
|
)
|
|
|
|
if (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
|
file(GLOB_RECURSE headers "${CURRENT_PACKAGES_DIR}/include/absl/*.h")
|
|
foreach(header IN LISTS ${headers})
|
|
vcpkg_replace_string("${header}"
|
|
"!defined(ABSL_CONSUME_DLL)" "0"
|
|
)
|
|
vcpkg_replace_string("${header}"
|
|
"defined(ABSL_CONSUME_DLL)" "1"
|
|
)
|
|
endforeach()
|
|
endif()
|
|
|
|
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
|