CMake: remove boost system#3727
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates MoveIt 2’s CMake “ConfigExtras” Boost component requirements to avoid requesting the system component, which breaks configuration with Boost >= 1.89 (where the boost_system CMake package stub was removed). This aligns with Boost.System being header-only since 1.69 and prevents find_package(Boost ...) failures in config-mode.
Changes:
- Remove
systemfrom Boost component lists across multipleConfigExtras.cmakefiles used by downstream consumers. - Remove
systemfrom the Boost component list inmoveit_planners/ompl’sCMakeLists.txt. - Minor formatting normalization of some
find_package(Boost ...)calls (single-line vs multi-line) while preserving semantics.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| moveit_ros/warehouse/ConfigExtras.cmake | Drops system from exported Boost component requirements. |
| moveit_ros/visualization/ConfigExtras.cmake | Drops system from exported Boost component requirements. |
| moveit_ros/planning/ConfigExtras.cmake | Drops system from exported Boost component requirements. |
| moveit_ros/planning_interface/ConfigExtras.cmake | Drops system from exported Boost component requirements. |
| moveit_ros/move_group/ConfigExtras.cmake | Drops system from exported Boost component requirements (and condenses formatting). |
| moveit_plugins/moveit_ros_control_interface/ConfigExtras.cmake | Drops system from exported Boost component requirements. |
| moveit_planners/ompl/CMakeLists.txt | Removes system from Boost components to avoid Boost 1.89 config-mode failure. |
| moveit_kinematics/ConfigExtras.cmake | Drops system from exported Boost component requirements. |
| moveit_core/ConfigExtras.cmake | Drops system from exported Boost component requirements. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
fix for boost >= 1.89:
```
CMake Error at /nix/store/4qaj1kkf1p3al8z190px12ma6r8jbgqj-boost-1.89.0-dev/lib/cmake/Boost-1.89.0/BoostConfig.cmake:141 (find_package):
Could not find a package configuration file provided by "boost_system"
(requested version 1.89.0) with any of the following names:
boost_systemConfig.cmake
boost_system-config.cmake
Add the installation prefix of "boost_system" to CMAKE_PREFIX_PATH or set
"boost_system_DIR" to a directory containing one of the above files. If
"boost_system" provides a separate development package or SDK, be sure it
has been installed.
Call Stack (most recent call first):
/nix/store/4qaj1kkf1p3al8z190px12ma6r8jbgqj-boost-1.89.0-dev/lib/cmake/Boost-1.89.0/BoostConfig.cmake:262 (boost_find_component)
/nix/store/v2i1hgv567g3v91im5x4g5bff52143i0-cmake-4.1.2/share/cmake-4.1/Modules/FindBoost.cmake:609 (find_package)
ConfigExtras.cmake:3 (find_package)
CMakeLists.txt:43 (include)
```
boost system has been header only since release 1.69 (December 5, 2018), and a useless stub was provided instead.
in 1.89 (August 6, 2025), that stub was removed, so CMake fail if we require it.
ref. https://www.boost.org/doc/libs/latest/libs/system/doc/html/system.html#changes_in_boost_1_89
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3727 +/- ##
==========================================
+ Coverage 46.23% 46.30% +0.07%
==========================================
Files 726 726
Lines 59501 59509 +8
Branches 7624 7623 -1
==========================================
+ Hits 27505 27549 +44
+ Misses 31829 31792 -37
- Partials 167 168 +1 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
nbbrooks
left a comment
There was a problem hiding this comment.
Thank you for helping with the Resolute migration!
Hi,
This fix for boost >= 1.89:
boost system has been header only since release 1.69 (December 5, 2018), and a useless stub was provided instead.
in 1.89 (August 6, 2025), that stub was removed, so CMake fail if we require it.
ref. https://www.boost.org/doc/libs/latest/libs/system/doc/html/system.html#changes_in_boost_1_89