Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add MANIFEST.in for python bindings #268

Closed
wants to merge 1 commit into from
Closed

Conversation

otron
Copy link
Contributor

@otron otron commented Jul 23, 2015

  • Requested by @esindril (see original PR to xrootd-python.
  • Adds a MANIFEST.in file for the python bindings.
  • Is not by itself sufficient to generate a python source distribution:
    • The setup.py file generated via setup.py.in and cmake looks for XrootD libraries and resources within the XrootD source directory -- assuming they can be found wherever they were found on the system on which the setup.py file was generated. This is not portable.

* Adds a MANIFEST.in file for the python bindings.
@ljanyst
Copy link
Contributor

ljanyst commented Jul 23, 2015

It is portable, because rpath is stripped from the binaries and the linker only looks for sonames in whatever search paths are configured on the system.

@ljanyst
Copy link
Contributor

ljanyst commented Jul 23, 2015

If you really need to generate a standalone python source package, then probably having another setup.standalone.py is the way to go.

@esindril esindril added this to the v.4.3.0 milestone Jul 24, 2015
@esindril esindril self-assigned this Jul 24, 2015
@esindril
Copy link
Contributor

Hi @otron ,

Lukasz's suggestion is probably the simplest and cleanest. I've created a branch in my github checkout of xrootd and added a new setup_pypi.py file to properly generate the sdist package. The current one from the XRootD package is not able to do this as the setup.py MANIFEST assumes all the necessary python files are in the same directory which is not the case.

Therefore, check it out - it should properly build the sdist pkg. If you are satisfied and all works as you expect it, I can merge it into the master. The downside bit is that it pollutes the xrootd source directory when you create the sdist pkg, but this is a one off when creating the package to put it in PyPI. The alternative would be to copy all into the build directory ... also not nice.

The branch I created is: https://github.com/esindril/xrootd/tree/enhance_python_sdist

Cheers,
Elvin

@otron
Copy link
Contributor Author

otron commented Jul 24, 2015

Looks good! I am working on the tox config file that'll automate the upload process as well as getting installation to work on OSX.

@otron
Copy link
Contributor Author

otron commented Jul 28, 2015

Hello again, @esindril.
As it is now, the version number is generated/retrieved upon installing the python package using a script that isn't portable. I'd like to change it so that the version number is generated/retrieved as a part of the package uploading process via the tox script we discussed last week.

The tox script requires the addition of a single config file in the xrootd project directory. Executing it will generate and upload the python package for you, allowing you to easily integrate this with your existing release process.

I'll submit a PR to your branch with the required changes when it's ready.

@otron
Copy link
Contributor Author

otron commented Jul 30, 2015

@esindril: I've created a pull request to your branch with the changes I found necessary to make it work.
Link to the PR

@esindril
Copy link
Contributor

Thanks a lot @otron. I'll have a look over it and include it in the next release.

@esindril
Copy link
Contributor

Fixed by commit: 98aebca

@esindril esindril closed this Sep 28, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants