56 lines
2.1 KiB
CMake
56 lines
2.1 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 215105818dfde3174fe799600bb0f3cae233d0bf #LTS 20211102, Patch 1
|
||
|
SHA512 75d234eac76be8790cf09e3e1144e4b4cf5cacb61e46961a9e4a35b37d0fa85243afdd5de5f47a006ef96af6fc91ecc0c233297c4c32258c08d46304b3361330
|
||
|
HEAD_REF master
|
||
|
PATCHES
|
||
|
# in C++17 mode, use std::any, std::optional, std::string_view, std::variant
|
||
|
# instead of the library replacement types
|
||
|
# in C++11 mode, force use of library replacement types, otherwise the automatic
|
||
|
# detection can cause ABI issues depending on which compiler options
|
||
|
# are enabled for consuming user code
|
||
|
fix-cxx-standard.patch
|
||
|
)
|
||
|
|
||
|
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||
|
FEATURES
|
||
|
cxx17 ABSL_USE_CXX17
|
||
|
)
|
||
|
|
||
|
vcpkg_cmake_configure(
|
||
|
SOURCE_PATH "${SOURCE_PATH}"
|
||
|
DISABLE_PARALLEL_CONFIGURE
|
||
|
OPTIONS ${FEATURE_OPTIONS}
|
||
|
)
|
||
|
|
||
|
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)
|
||
|
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/absl/base/config.h"
|
||
|
"#elif defined(ABSL_CONSUME_DLL)" "#elif 1"
|
||
|
)
|
||
|
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/absl/base/internal/thread_identity.h"
|
||
|
"&& !defined(ABSL_CONSUME_DLL)" "&& 0"
|
||
|
)
|
||
|
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/absl/container/internal/hashtablez_sampler.h"
|
||
|
"!defined(ABSL_CONSUME_DLL)" "0"
|
||
|
)
|
||
|
endif()
|
||
|
|
||
|
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|