8

I have a package that includes binaries for five different OS and architecture combinations: Windows 32- and 64-bit, Linux 32- and 64-bit, and OS X (fat). The contents of setup.py can be found here.

I am aware that it is possible (and indeed preferable) to upload platform-specific wheels to PyPI instead of uploading one wheel containing binaries for all platforms or even a source distribution, the latter of which I cannot do because some of the binaries are proprietary (but redistributable).

My question is, how would I go about creating separate wheels for each platform? Specifically:

  • Can I use multiple setup scripts in a single directory, with different filenames and package_data?
  • Can I automatically create wheels with filenames that indicate the intended operating system and architecture?
  • If not, can I manually change the filenames to do this?

Note that I currently don't plan to maintain separate wheels until the naming convention for Linux wheels is established.

Carlos Liam
  • 305
  • 2
  • 10

1 Answers1

0

I managed to achieve this by modifying the setup.py file itself before running it, then renaming the output wheel file to contain the identifier that I wanted it to have. See here for code.

Carlos Liam
  • 305
  • 2
  • 10