From 8a4f5b0afbb4a22b248d9a28a19dd9a141773bbd Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 9 Feb 2026 12:16:23 -0500 Subject: [PATCH] FindBoost: Add support for Boost 1.91 Update the list of known versions. Run the command cmake -DBOOST_DIR=/path/to/boost_1_91_0 \ -P Utilities/Scripts/BoostScanDeps.cmake to extract dependencies from the 1.91.0 source tree. Dependencies differ from 1.90: * Boost.Iostreams no longer depends on Boost.Regex * Boost.Log no longer depends on Boost.Regex Fixes: #27803 --- Modules/FindBoost.cmake | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake index af11d87c358..3b37cdd7e1a 100644 --- a/Modules/FindBoost.cmake +++ b/Modules/FindBoost.cmake @@ -1424,7 +1424,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) - else() + elseif(Boost_VERSION_STRING VERSION_LESS 1.91.0) set(_Boost_COBALT_DEPENDENCIES cobalt_io cobalt_io_ssl container context) set(_Boost_CONTRACT_DEPENDENCIES thread chrono) set(_Boost_COROUTINE_DEPENDENCIES context) @@ -1440,7 +1440,22 @@ 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.91.0 AND NOT Boost_NO_WARN_NEW_VERSIONS) + else() + set(_Boost_COBALT_DEPENDENCIES cobalt_io cobalt_io_ssl container context) + set(_Boost_CONTRACT_DEPENDENCIES thread chrono) + set(_Boost_COROUTINE_DEPENDENCIES context) + set(_Boost_FIBER_DEPENDENCIES context) + set(_Boost_JSON_DEPENDENCIES container) + set(_Boost_LOG_DEPENDENCIES log_setup filesystem thread atomic) + set(_Boost_MATH_DEPENDENCIES math_c99 math_c99f math_c99l math_tr1 math_tr1f math_tr1l) + set(_Boost_MPI_DEPENDENCIES serialization) + set(_Boost_MPI_PYTHON_DEPENDENCIES python${component_python_version} mpi serialization) + set(_Boost_NUMPY_DEPENDENCIES python${component_python_version}) + set(_Boost_PROCESS_DEPENDENCIES filesystem) + 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.92.0 AND NOT Boost_NO_WARN_NEW_VERSIONS) message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets") endif() endif() @@ -1715,7 +1730,7 @@ else() # _Boost_COMPONENT_HEADERS. See the instructions at the top of # _Boost_COMPONENT_DEPENDENCIES. set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS} - "1.90.0" "1.90" "1.89.0" "1.89" + "1.91.0" "1.91" "1.90.0" "1.90" "1.89.0" "1.89" "1.88.0" "1.88" "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"