[Distutils] Packaging: bdist_deb patches / platform specific code

Leonardo Santagada santagada at gmail.com
Tue Jun 9 07:22:39 CEST 2009

On Jun 9, 2009, at 12:52 AM, David Lyon wrote:

>> Anyway, as long as distutils works under windows, distutils will work
>> under wine - the problem is the toolchain, not distutils.
> Yes. That's correct.
>>> Cross compiling has been common practice for the last 30 years.
>> And still hard to get right. That should certainly not be built in
>> distutils -
> Well distutils already has partial support for it.
> And the alternative being disccused here is removing the platform
> specific code.
> quoting
> http://docs.python.org/distutils/builtdist.html#cross-compiling-on-windows
> "A built distribution is how you make life as easy as possible for
> installers of your module distribution: for users of RPM-based Linux
> systems, it’s a binary RPM; for Windows users, it’s an executable
> installer; for Debian-based Linux users, it’s a Debian package; and so
> forth. Obviously, no one person will be able to create built  
> distributions
> for every platform under the sun, so the Distutils are designed to  
> enable
> module developers to concentrate on their specialty—writing code and
> creating source distributions"
>>> At a minimum, distutils should be able to create an .egg that will
>>> work on every system.
>> Before implementing things that no other system has ever done, we  
>> should
>> focus on basic things that distutils cannot do today and are expected
>> from a build/distribution tool.
> I'm just reading the distutils documentation.....
> The documentation is setting an expectation...
> Yes - you can be expected to work towards the goals that are  
> documented
> within your project.
> Change the documentation and don't promise it if it is not going to
> be delivered.....

The point is, getting past the trivial stuff, building packages for  
different systems is hard, maintaining the code to build packages to  
other systems is way way harder.

For example, Tarek may be using OS/2 warp (Its just an example people)  
and for him to maintain the rpm/deb/mpkg/win32_inst stuff is actually  
impossible, so he wants that people on those platforms to take  
responsability for a little part of distutils so when rpm-ng 6.0 comes  
either red hat people would say that building python package is not  
supported or they are going to update the rpm code which is external  
to disutils.

The point is not exactly cross compilation, but cross maintaining of  
distribution specific code. The only way this actually works now, I  
would guess, is because rpm format hasn't changed much, and win32_inst  
has a huge user base.

Leonardo Santagada
santagada at gmail.com

More information about the Distutils-SIG mailing list