Skip to content

MAINT: Add parasail headers to Python wheel.#62

Merged
jeffdaily merged 1 commit intojeffdaily:masterfrom
jvkersch:add-headers
Aug 24, 2022
Merged

MAINT: Add parasail headers to Python wheel.#62
jeffdaily merged 1 commit intojeffdaily:masterfrom
jvkersch:add-headers

Conversation

@jvkersch
Copy link
Copy Markdown
Contributor

fixes #51

This adds the header files from the C library to the Python wheel, so that external Python packages and libraries can link against Parasail (using e.g. Cython). On both Linux and Windows, the headers are copied over from the downloaded C library, so that they match the version of the shared object file that is bundled with the egg.

I've also added two convenience functions that allow users to get the locations of includes and libraries without having to dig inside the installed location:

>>> import parasail
>>> parasail.get_include()
'/home/jvkersch/.edm/envs/parasail-clean/lib/python3.6/site-packages/parasail/include'
>>> parasail.get_library()
'/home/jvkersch/.edm/envs/parasail-clean/lib/python3.6/site-packages/parasail/libparasail.so'

I've verified that this works on Linux (by building the wheel and installing it in a new environment), and I'm reasonably confident that this works on Windows too, but I haven't tested on that platform.

@jvkersch
Copy link
Copy Markdown
Contributor Author

jvkersch commented Jul 3, 2021

@jeffdaily Sorry for the quick ping, but I was wondering if you could take a look at this. Happy to make any changes as needed!

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.

Shipping parasail headers inside the Python egg?

2 participants