Skip to content

Migrating to SIP5 layouts#1

Merged
v4hn merged 8 commits into
ros-o:obese-develfrom
v4hn:pr-obese-sip5
Oct 19, 2024
Merged

Migrating to SIP5 layouts#1
v4hn merged 8 commits into
ros-o:obese-develfrom
v4hn:pr-obese-sip5

Conversation

@v4hn
Copy link
Copy Markdown
Member

@v4hn v4hn commented Feb 14, 2022

There was initial work by @seanyen in this pull-request, but it was still quite incomplete.

I added some fixes that make it work with linux systems.

Minor changes are required in all downstream packages, as the cpython file extension changed to include not only .so, but a whole version string, such as .cpython-310-x86_64-linux-gnu.so.
sip_helper.cmake now provides a handy variable PYTHON_EXTENSION_MODULE_SUFFIX for this value.

Also sip file syntax removed at least one previously deprecated statement (no version number after module declaration), but that should already be addressed in noetic branches.

jspricke and others added 8 commits October 14, 2024 12:44
this is not the default, but some ROS-specific bindings break without it in header-inline throw statements (e.g. in Poco/Mutex_POSIX.h)
e.g. `.cpython-310-x86_64-linux-gnu.so` instead of just '.so'
This is somewhat hacky, but at least passes all libraries to the linker.
The previous version of this block was plain broken in the sip5 transition.
Isolation is not needed as we expect to build in the system
environment. Additionally the isolation wrappers can break
sip-specific build commands by hiding the path of `sip-distinfo`.
sip4 does not adhere to PEP-3149
https://peps.python.org/pep-3149/
by default, so we force it to do so in the name of consistency with the sip5 generator.
@v4hn v4hn merged commit acea937 into ros-o:obese-devel Oct 19, 2024
@v4hn
Copy link
Copy Markdown
Member Author

v4hn commented Oct 19, 2024

I don't think it makes sense to keep this lying around in a PR any longer.
The builders I'm aware of still use sip4, but it's a good step forward to support sip5+ in general.

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.

4 participants