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

Daniel Holth dholth at gmail.com
Tue Jun 25 18:09:56 CEST 2013


Maybe one of these methods would be more helpful.
https://bitbucket.org/mirror/cpython/src/tip/Lib/distutils/dist.py?at=default#cl-953

On Tue, Jun 25, 2013 at 12:01 PM, Yury V. Zaytsev <yury at shurup.com> wrote:
> Hi Daniel,
>
> On Tue, 2013-06-25 at 08:26 -0400, Daniel Holth wrote:
>
>> 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.
>
> Thank you very much for this suggestion!
>
> I have implemented it, but unfortunately it doesn't seem to work. I have
> grepped cpython source for "is_pure" and was unable to find any
> matches.
>
> Could you please give me some pointer as to how it is actually used? So
> far, I wasn't really able to figure out where exactly in the code it is
> decided whether the module goes to purelib or platlib.
>
> The alternative solution that I came up with is to specify the
> directories in the corresponding make target:
>
>     $(PYTHON) setup.py build --build-base=$(top_builddir)/pynest/build install --prefix=$(DESTDIR)$(prefix) --install-lib=$(DESTDIR)$(pyexecdir) --install-scripts=$(DESTDIR)$(bindir) --install-data=$(DESTDIR)$(pkgdatadir)
>
> It seems to work, so what do you think of this solution?
>
> Even considering the obvious disadvantage that setup.py called without
> these parameters will not install correctly, this seems to be rather
> unhorrible to me.
>
> --
> Sincerely yours,
> Yury V. Zaytsev
>
>


More information about the Distutils-SIG mailing list