iLCSoft / LCIO

Linear Collider I/O
BSD 3-Clause "New" or "Revised" License
17 stars 34 forks source link

Install all headers that are necessary for python bindings #146

Closed tmadlener closed 2 years ago

tmadlener commented 2 years ago

BEGINRELEASENOTES

ENDRELEASENOTES

tmadlener commented 2 years ago

For some reason this fix works and I can actually use the python bindings when I install everything via spack. However, when trying to build a ROOT version from LCG things fail. As soon as github actions are working again, this should also be visible in the new workflow.

andresailer commented 2 years ago

Do you need to add this: https://github.com/spack/spack/blob/c300b9204778a4ed21f32d9d77dc11a17c4f46a0/var/spack/repos/builtin/packages/lcio/package.py#L95-L96 ?

tmadlener commented 2 years ago

Aha. CPATH=<prefix>/include seems to do the trick. It looks like that is added by spack automatically, and we could potentially remove the explicit addition of just the <prefix>.

However, I just realized that depending on whether the internal SIO is used or not, we will probably need a few more headers still.

tmadlener commented 2 years ago

Correction: <prefix> and <prefix>/include seem to be necessary on CPATH. Spack install works without <prefix>/include alone. I don't know why though. I have tried a few of the ususal suspects (ROOT_INCLUDE_PATH, C_INCLUDE_PATH, CPLUS_INCLUDE_PATH) but haven't had any success. Did I miss something obvious?