My pysdl2-cffi project has a dependency ':sys_platform=="win32"': ['sdl2_lib'] meaning 'depends on sdl2_lib only on Windows' (see its sdl2_lib is a specially made wheel that only contains DLL's for Windows. On other platforms we don't try to install sdl2_lib, assuming you have already installed SDL2 some other way.

If I wanted to distribute the Linux so's on PyPy I could upload a second wheel with the 'manylinux1' tag, and pip would choose the right one. Distributing Linux binaries is more complicated than for Windows, see PEP 513 and

On Tue, Jun 7, 2016 at 10:32 AM Young Yang <> wrote:

I'm writing a python-binding project for project A written in C++.
Project A is on github. It supports compiling itself to produce .so in linux or .dll in windows.
My python-binding project contains depends on the .dll and .so file.

Now I want to register my package on pypi. So that users can install my package with only running `pip install XXXX`.

I have to support both windows and linux.  The only solution I can figure out is to include both .dll and .so in my package.   This will end up with both .so and .dll installed in any platforms. It sounds dirty.

Is there any better ways to achieve my goal?

PS: The compile process of Project A is a little complicated, so I can't use python Extension to build my dynamic library.

This question comes after this question 

Thanks in advance :) 

Best wishes,
Young Yang
Distutils-SIG maillist  -