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 8c0b94e793a66495e0b1f34a5eb26bd7dc672db0 # LTS 20220623.1 SHA512 a076c198103dc5cf22ac978fe7754dd34cb2e782d7db1c2c98393c94639e461bfe31b10c0663f750f743bc1c0c245fd4b6115356f136fe14bd036d267caf2a8b 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)