[Distutils] Egg name computation

Martin Fiers martin.fiers at intec.ugent.be
Mon Oct 28 09:29:57 CET 2013


On 10/25/2013 04:25 AM, PJ Eby wrote:
> On Tue, Oct 15, 2013 at 8:07 AM, Martin Fiers
> <Martin.Fiers at intec.ugent.be> wrote:
>> So the platform argument now is
>> self.distribution.has_ext_modules() and self.plat_name
>> Shouldn't it just be
>> self.plat_name
>> ?
> No.  The platform name is only included if the distribution has
> extension modules, because extension modules are what make the egg
> platform-specific.  If there is only Python code and data, then the
> egg is considered platform independent.
Ok, I understand the reasoning.
>
>
>> Would there be a workaround?
> What do you want to work around this *for*?  If the egg doesn't
> contain extension modules, what is platform-specific about it?
Well, the way we build our extensions forces us to do this. We cythonize 
large parts of our modules. This is done in separate build scripts. It 
is included as package_data, which is 'agnostic' of the platform. For 
this reason, we want to force the naming. In any case, no harm is done 
by adding the platform name, as distutils recognizes them. I guess we'll 
have to rename them manually after the setup() function, unless there's 
a way to 'force' setup() to 'think' it has compiled extensions in them?

Thanks,
Martin




More information about the Distutils-SIG mailing list