Skip to content

Fix macOS RPATH handling and install rules for Iceoryx platform modules #2475

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: release_2.0
Choose a base branch
from

Conversation

artcore-c
Copy link

Notes for Reviewer

This PR improves compatibility with MacOS by correctly setting RPATH and install properties in key CMakeLists.txt files for iceoryx_binding_c and iceoryx_hoofs, particularly addressing dynamic linking of the iceoryx_platform module.

Changes include:

Added explicit INSTALL_RPATH and BUILD_RPATH for MacOS

Fixed missing install rule for iceoryx_platform

Ensured proper MACOSX_RPATH behavior

Tested with ros2_rolling and colcon build using --symlink-install on MacOS 12.7.6 x86_64 with SIP enabled.

Pre-Review Checklist for the PR Author

  1. Code follows the coding style of CONTRIBUTING.md
  2. Tests follow the best practice for testing
  • N/A - No new runtime logic added; changes affect CMake install and RPATH only
  1. Changelog updated in the unreleased section including API breaking changes
  • Added to unreleased changelog in doc/website/release-notes/iceoryx-unreleased.md
  1. Branch follows the naming format (iox-123-this-is-a-branch)
  • N/A - Patch relates to platform compatibility, not linked to an existing issue ID
  1. Commits messages are according to this guideline
  2. Update the PR title
    • Follow the same conventions as for commit messages
    • Link to the relevant issue
  3. Relevant issues are linked
  • N/A - This resolves a platform compatibility gap but has no tracked upstream issue
  1. Add sensible notes for the reviewer
  2. All checks have passed (except task-list-completed)
  3. Assign PR to reviewer

Checklist for the PR Reviewer

  • Consider a second reviewer for complex new features or larger refactorings
  • Commits are properly organized and messages are according to the guideline
  • Code according to our coding style and naming conventions
  • Unit tests have been written for new behavior
  • Public API changes are documented via doxygen
  • Copyright owner are updated in the changed files
  • All touched (C/C++) source code files from iceoryx_hoofs have been added to ./clang-tidy-diff-scans.txt
  • PR title describes the changes

Post-review Checklist for the PR Author

  1. All open points are addressed and tracked via issues

References

Relates to MacOS build compatibility for ROS2 Rolling and downstream packages using colcon with symlink-install.

  • Targets compatibility with MacOS 12.7.6 (x86_64)

  • Apple SIP remains enabled during testing

  • All patched files build cleanly with colcon build --symlink-install

  • No runtime logic or public API modified — strictly build system compatibility

  • Closes TBD

Copy link

codecov bot commented Jul 7, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 78.87%. Comparing base (6ada912) to head (5481334).
Report is 1 commits behind head on release_2.0.

Additional details and impacted files

Impacted file tree graph

@@               Coverage Diff               @@
##           release_2.0    #2475      +/-   ##
===============================================
- Coverage        78.88%   78.87%   -0.01%     
===============================================
  Files              369      369              
  Lines            15200    15200              
  Branches          2105     2105              
===============================================
- Hits             11990    11989       -1     
- Misses            2492     2495       +3     
+ Partials           718      716       -2     
Flag Coverage Δ
unittests 78.08% <ø> (-0.01%) ⬇️
unittests_timing 15.65% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

see 2 files with indirect coverage changes

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

@elBoberido
Copy link
Member

@artcore-c I'm currently quite busy but try to have a closer look to this PR. It seems the CI also needs a fix.

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.

2 participants