Skip to content

Conversation

@MisterGC
Copy link
Contributor

@MisterGC MisterGC commented Oct 9, 2025

This PR improves macOS wheel building by automating library dependency handling with delocate, eliminating the need for manual post-processing scripts while properly supporting transitive dependencies (e.g., OpenSSL → libcrypto). The build process now automatically invokes delocate-path during CMake builds, ensuring all bundled libraries use correct @loader_path rpaths. No API changes required - existing projects only need to pip install delocate.

@MisterGC MisterGC force-pushed the improve-macos-support branch 8 times, most recently from bd9a27e to 70f24eb Compare October 9, 2025 13:18
@MisterGC MisterGC force-pushed the improve-macos-support branch from 70f24eb to b1d399e Compare October 9, 2025 13:38
@josephbirkner josephbirkner marked this pull request as ready for review October 29, 2025 07:13
@josephbirkner josephbirkner self-requested a review October 29, 2025 07:13
Copy link
Collaborator

@josephbirkner josephbirkner left a comment

Choose a reason for hiding this comment

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

Hmm, what problem are we solving here? Could you please test this with mapget as well? The delocate-path tool is well-established and it is there to also change the RPATH in packaged dependency libs. Potentially a regression, since packaged dependencies of dependencies will not be found anymore. Maybe we can add a shared lib dependency with a dependency to the test wheel?

Copy link
Collaborator

@josephbirkner josephbirkner left a comment

Choose a reason for hiding this comment

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

Wow 👍 Good to merge!

@MisterGC MisterGC merged commit 7ad1c44 into main Oct 29, 2025
30 checks passed
@MisterGC MisterGC deleted the improve-macos-support branch October 29, 2025 21:24
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