diff options
| author | Erik Kundiman <erik@megapahit.org> | 2026-09-10 20:21:23 +0800 |
|---|---|---|
| committer | Erik Kundiman <erik@megapahit.org> | 2026-09-10 20:28:04 +0800 |
| commit | da66c6f3d95682306b31e2646e73ba5505a73680 (patch) | |
| tree | edabd851035cf3eba7bf24b893956373b09b9081 /indra | |
| parent | 61a437590757c69fda96b17d09e4cb71fa6097c5 (diff) | |
Temporarily use pre-/self-built Boost on Debian
as current stable Debian 13 Boost doesn't include Boost Process, even
its 1.88. Revert this if 13 gets a newer Boost or the stable version
upgrades to 14. The version chosen to be built on arm64 here is the same
as in autobuild.xml, which is 1.90.
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/cmake/Boost.cmake | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/indra/cmake/Boost.cmake b/indra/cmake/Boost.cmake index 59ec69dbcb..e260d28453 100644 --- a/indra/cmake/Boost.cmake +++ b/indra/cmake/Boost.cmake @@ -30,7 +30,28 @@ elseif (WINDOWS) "Check that vcpkg installed boost into ${prefix_result}.") endif () endif () -if (NOT (${LINUX_DISTRO} MATCHES freedesktop)) +if ((${LINUX_DISTRO} MATCHES debian AND NOT (CMAKE_SYSTEM_PROCESSOR MATCHES x86_64)) AND (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/boost_installed OR NOT ${boost_installed} EQUAL 0)) + if (NOT EXISTS ${CMAKE_BINARY_DIR}/boost_1_90_0.tar.bz2) + file(DOWNLOAD + https://archives.boost.io/release/1.90.0/source/boost_1_90_0.tar.bz2 + ${CMAKE_BINARY_DIR}/boost_1_90_0.tar.bz2 + ) + endif () + file(ARCHIVE_EXTRACT + INPUT ${CMAKE_BINARY_DIR}/boost_1_90_0.tar.bz2 + DESTINATION ${CMAKE_BINARY_DIR} + ) + execute_process( + COMMAND ./bootstrap.sh --prefix=${LIBS_PREBUILT_DIR} --libdir=${ARCH_PREBUILT_DIRS_RELEASE} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/boost_1_90_0 + ) + execute_process( + COMMAND ./b2 install + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/boost_1_90_0 + ) + file(WRITE ${PREBUILD_TRACKING_DIR}/boost_installed "${boost_installed}") +endif () +if (NOT (${LINUX_DISTRO} MATCHES freedesktop OR (${LINUX_DISTRO} MATCHES debian AND CMAKE_SYSTEM_PROCESSOR MATCHES x86_64))) target_link_libraries( ll::boost INTERFACE boost_context${sfx} boost_fiber${sfx} |
