Skip to content

CMake: remove boost system#3727

Merged
nbbrooks merged 1 commit into
moveit:mainfrom
nim65s:boost-system
Jun 15, 2026
Merged

CMake: remove boost system#3727
nbbrooks merged 1 commit into
moveit:mainfrom
nim65s:boost-system

Conversation

@nim65s

@nim65s nim65s commented May 19, 2026

Copy link
Copy Markdown
Contributor

Hi,

This 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

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 system from Boost component lists across multiple ConfigExtras.cmake files used by downstream consumers.
  • Remove system from the Boost component list in moveit_planners/ompl’s CMakeLists.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

codecov Bot commented Jun 15, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 46.30%. Comparing base (77c5894) to head (a57ed84).
⚠️ Report is 1 commits behind head on main.

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.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@nbbrooks nbbrooks left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for helping with the Resolute migration!

@nbbrooks nbbrooks merged commit e9471ff into moveit:main Jun 15, 2026
11 of 13 checks passed
@github-project-automation github-project-automation Bot moved this to ✅ Done in MoveIt Jun 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants