vcpkg/ports/boost-locale/features.cmake
Alexander Neumann bcf3d00d21
[Boost] use cmake build (#32309)
~~arm64-windows: boost-context builds are blocked by a cmake bug (see
https://gitlab.kitware.com/cmake/cmake/-/issues/24317)~~

closes #32274
closes https://github.com/Neumann-A/my-vcpkg-triplets/issues/5

Questions:
- [x] ~~Move cmake files to `share/cmake/<name>` ?~~ Not doing it
because it is just using `vcpkg_cmake_config_fixup()`
- [x] Fix weak dependencies (uwp|emscripten|android|arm)?
- [x] Fix library names on !x64 (currently hardcoded to x64 or x86;
failure in aricpp since it forces FindBoost module mode.)
- [x] ~~Fix arm64-windows boost-context builds -> requires CMake
(3.19.2?) update due to bug how the assembler is invoked.~~ (-> CI
baseline for now)

TODO:
- [x] adjust generate ports script
- [x] #37457

---------

Co-authored-by: Cheney-Wang <850426846@qq.com>
2024-04-29 15:27:41 -04:00

45 lines
1.2 KiB
CMake

vcpkg_check_features(
OUT_FEATURE_OPTIONS
FEATURE_OPTIONS
FEATURES
"icu" BOOST_LOCALE_ENABLE_ICU
)
if(VCPKG_TARGET_IS_WINDOWS)
set(BOOST_LOCALE_ENABLE_ICONV off)
set(BOOST_LOCALE_ENABLE_POSIX off)
else()
set(BOOST_LOCALE_ENABLE_ICONV on)
if(VCPKG_TARGET_IS_ANDROID)
set(BOOST_LOCALE_ENABLE_POSIX off)
else()
set(BOOST_LOCALE_ENABLE_POSIX on)
endif()
endif()
list(APPEND FEATURE_OPTIONS
-DBOOST_LOCALE_ENABLE_ICONV=${BOOST_LOCALE_ENABLE_ICONV}
-DBOOST_LOCALE_ENABLE_POSIX=${BOOST_LOCALE_ENABLE_POSIX}
)
# BOOST_LOCALE_ENABLE_ICU
# When ON, enables the ICU backend. Defaults to ON when ICU is found, OFF otherwise.
# BOOST_LOCALE_ENABLE_ICONV
# When ON, enables the Iconv backend. Defaults to ON when iconv is found, OFF otherwise.
# BOOST_LOCALE_ENABLE_POSIX
# When ON, enables the POSIX backend. Defaults to ON on POSIX systems, OFF otherwise.
# BOOST_LOCALE_ENABLE_STD
# When ON, enables the std::locale backend. Defaults to ON.
# BOOST_LOCALE_ENABLE_WINAPI
# When ON, enables the Windows API backend. Defaults to ON under Windows, OFF otherwise.