build: Upgrade to Boost 1.87

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
This commit is contained in:
Adam C. Emerson 2025-03-10 16:11:12 -04:00
parent 83a82c5168
commit b446290f44
No known key found for this signature in database
6 changed files with 30 additions and 14 deletions

View File

@ -748,7 +748,7 @@ if(WITH_SYSTEM_BOOST)
if(BOOST_ROOT AND CMAKE_LIBRARY_ARCHITECTURE)
set(BOOST_LIBRARYDIR "${BOOST_ROOT}/lib/${CMAKE_LIBRARY_ARCHITECTURE}")
endif()
find_package(Boost 1.85 COMPONENTS ${BOOST_COMPONENTS} REQUIRED)
find_package(Boost 1.87 COMPONENTS ${BOOST_COMPONENTS} REQUIRED)
if(NOT ENABLE_SHARED)
set_property(TARGET Boost::iostreams APPEND PROPERTY
INTERFACE_LINK_LIBRARIES ZLIB::ZLIB)
@ -762,7 +762,7 @@ else()
set(BOOST_J ${DEFAULT_BOOST_J} CACHE STRING "max jobs for Boost build") # override w/-DBOOST_J=<n>
set(Boost_USE_STATIC_LIBS ON)
include(BuildBoost)
build_boost(1.85
build_boost(1.87
COMPONENTS ${BOOST_COMPONENTS} ${BOOST_HEADER_COMPONENTS})
endif()
include_directories(BEFORE SYSTEM ${Boost_INCLUDE_DIRS})

View File

@ -155,14 +155,14 @@ function(do_build_boost root_dir version)
check_boost_version("${PROJECT_SOURCE_DIR}/src/boost" ${version})
set(source_dir
SOURCE_DIR "${PROJECT_SOURCE_DIR}/src/boost")
elseif(version VERSION_GREATER 1.85)
elseif(version VERSION_GREATER 1.87)
message(FATAL_ERROR "Unknown BOOST_REQUESTED_VERSION: ${version}")
else()
message(STATUS "boost will be downloaded...")
# NOTE: If you change this version number make sure the package is available
# at the three URLs below (may involve uploading to download.ceph.com)
set(boost_version 1.85.0)
set(boost_sha256 7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617)
set(boost_version 1.87.0)
set(boost_sha256 af57be25cb4c4f4b413ed692fe378affb4352ea50fbe294a11ef548f4d527d89)
string(REPLACE "." "_" boost_version_underscore ${boost_version} )
list(APPEND boost_url
https://download.ceph.com/qa/boost_${boost_version_underscore}.tar.bz2

View File

@ -1409,7 +1409,7 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
set(_Boost_THREAD_DEPENDENCIES chrono atomic)
set(_Boost_WAVE_DEPENDENCIES filesystem serialization thread chrono atomic)
set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
if(Boost_VERSION_STRING VERSION_GREATER_EQUAL 1.86.0 AND NOT Boost_NO_WARN_NEW_VERSIONS)
if(Boost_VERSION_STRING VERSION_GREATER_EQUAL 1.87.0 AND NOT Boost_NO_WARN_NEW_VERSIONS)
message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets")
endif()
endif()
@ -1684,7 +1684,7 @@ else()
# _Boost_COMPONENT_HEADERS. See the instructions at the top of
# _Boost_COMPONENT_DEPENDENCIES.
set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
"1.85.0" "1.85" "1.84.0" "1.84"
"1.87.0" "1.87" "1.86.0" "1.86" "1.85.0" "1.85" "1.84.0" "1.84"
"1.83.0" "1.83" "1.82.0" "1.82" "1.81.0" "1.81" "1.80.0" "1.80" "1.79.0" "1.79"
"1.78.0" "1.78" "1.77.0" "1.77" "1.76.0" "1.76" "1.75.0" "1.75" "1.74.0" "1.74"
"1.73.0" "1.73" "1.72.0" "1.72" "1.71.0" "1.71" "1.70.0" "1.70" "1.69.0" "1.69"

View File

@ -141,7 +141,7 @@ function install_pkg_on_ubuntu {
fi
}
boost_ver=1.85
boost_ver=1.87
function clean_boost_on_ubuntu {
ci_debug "Running clean_boost_on_ubuntu() in install-deps.sh"
@ -193,7 +193,7 @@ function install_boost_on_ubuntu {
cut -d'.' -f1,2)
local codename=$1
local project=libboost
local sha1=55f34507d322314fb0294629b7c0bb406de07aec
local sha1=9ea1fb8bdad548a88004db87761f173aa50dcc85
install_pkg_on_ubuntu \
$project \
$sha1 \
@ -205,7 +205,9 @@ function install_boost_on_ubuntu {
ceph-libboost-context${boost_ver}-dev \
ceph-libboost-coroutine${boost_ver}-dev \
ceph-libboost-date-time${boost_ver}-dev \
ceph-libboost-exception${boost_ver}-dev \
ceph-libboost-filesystem${boost_ver}-dev \
ceph-libboost-graph${boost_ver}-dev \
ceph-libboost-iostreams${boost_ver}-dev \
ceph-libboost-locale${boost_ver}-dev \
ceph-libboost-program-options${boost_ver}-dev \

View File

@ -192,8 +192,8 @@ ln -s . $outfile
tar cvf $outfile.version.tar $outfile/src/.git_version $outfile/ceph.spec
# NOTE: If you change this version number make sure the package is available
# at the three URLs referenced below (may involve uploading to download.ceph.com)
boost_version=1.85.0
download_boost $boost_version 7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617 \
boost_version=1.87.0
download_boost $boost_version af57be25cb4c4f4b413ed692fe378affb4352ea50fbe294a11ef548f4d527d89 \
https://download.ceph.com/qa \
https://archives.boost.io/release/$boost_version/source
download_liburing 2.5 456f5f882165630f0dc7b75e8fd53bd01a955d5d4720729b4323097e6e9f2a98 \

View File

@ -16,9 +16,9 @@ sslDir="${depsToolsetDir}/openssl"
sslSrcDir="${depsSrcDir}/openssl"
# For now, we'll keep the version number within the file path when not using git.
boostUrl="https://download.ceph.com/qa/boost_1_85_0.tar.bz2"
boostSha256Sum="7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617"
boostSrcDir="${depsSrcDir}/boost_1_85_0"
boostUrl="https://download.ceph.com/qa/boost_1_87_0.tar.bz2"
boostSha256Sum="af57be25cb4c4f4b413ed692fe378affb4352ea50fbe294a11ef548f4d527d89"
boostSrcDir="${depsSrcDir}/boost_1_87_0"
boostDir="${depsToolsetDir}/boost"
zlibDir="${depsToolsetDir}/zlib"
zlibSrcDir="${depsSrcDir}/zlib"
@ -231,6 +231,20 @@ patch -N boost/thread/pthread/thread_data.hpp <<EOL
#endif
EOL
patch -N libs/stacktrace/src/from_exception.cpp <<EOL
--- libs/stacktrace/src/from_exception.cpp 2019-10-11 15:26:15.678703586 +0300
+++ libs/stacktrace/src/from_exception.cpp.new 2019-10-11 15:26:07.321463698 +0300
@@ -4,7 +4,7 @@
// accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
-#if defined(_MSC_VER)
+#if defined(__MINGW32__) || defined(_MSC_VER)
#include <boost/stacktrace/safe_dump_to.hpp>
#include <windows.h>
EOL
./bootstrap.sh
if [[ $ENABLE_SHARED == "ON" ]]; then