Skip to content

Conversation

@tmadlener
Copy link
Collaborator

BEGINRELEASENOTES

  • Make pythonizations for collection subscript header only again to work around a possible issue with linking on macOS

ENDRELEASENOTES

Inspired by #925 and #908 (comment)

It looks like this should keep things building / linking for macOS, while still maintaining the possibility to create c++ modules with it.

@paulgessinger any chance you could give this a go and see if this also works for you?
@wdconinc Should I rebase #907 or will you do it?

In case this works for macOS, I would merge this and tag v01-07-01 afterwards and add a dedicated conflict to the podio spack package for mac for 1.7.

paulgessinger and others added 2 commits January 19, 2026 20:25
instead of `Python3::Python`, which according to the documentation is
meant for embedding the python interpreter.
This should avoid linking issues on macOS, while still
- keeping things working via cppyy (most likely via JIT)
- allowing usage in c++ modules
@wdconinc
Copy link
Contributor

Should I rebase #907 or will you do it?

I can rebase it.

@jmcarcell
Copy link
Member

I think however that the source implementation is nice because then downstream projects do not have to care about this. With the header one, every project will have to link to Python plus every translation unit will have to include Python headers (worsening compile times since we talked about this today).

@tmadlener
Copy link
Collaborator Author

Yeah, also a good point. Since making python an explicit link dependency as well here:

https://github.com/spack/spack-packages/blob/8913ea5052d65511819246a6038e4081e133801d/repos/spack_repo/builtin/packages/podio/package.py#L80

seems to fix thins also on macOS, we could keep the current version.

I kind of like the fact that the header-only approach has no traces in the binaries while still working with cppyy though. Not sure about how large the impact for compilation is in the end.

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