[Distutils] Better way of forcing distutils to use platlib location?

Daniel Holth dholth at gmail.com
Tue Jun 25 14:26:24 CEST 2013


On Mon, Jun 24, 2013 at 11:07 AM, Yury V. Zaytsev <yury at shurup.com> wrote:
> Hi,
>
> I'm working on Python bindings for a C++ software, which are basically a
> thin wrapper around a (binary) extension. The extension itself is
> compiled, linked and installed using autotools.
>
> The main motivation for doing it this way stems from the fact that
> previous attempts to hack distutils classes resulted in a monster script
> bigger than the autotools build system for the C++ package itself.
>
> Still, I'd like to keep using distutils to install the pure Python part.
> Now that I'm not using the Extension class of distutils to build the
> extension, however, it doesn't know that the Python stuff should go to
> platlib along with the extension shared object.
>
> So my question is, what is the least horrible way to force distutils to
> install a pure Python package into platlib instead of purelib?
>
> I was thinking of monkeypatching get_python_lib(), but there must
> certainly be a better solution to the problem that I have overlooked!
>
> Thanks and please kindly CC me on replies,
>
> --
> Sincerely yours,
> Yury V. Zaytsev

It looks like you may be able to pass distclass=... to setup.py with a
distutils.dist.Distribution subclass that overrides is_pure() to
return False.


More information about the Distutils-SIG mailing list