
On Thu, Jun 21, 2012 at 11:00 PM, Antoine Pitrou <solipsis@pitrou.net>wrote:
On Thu, 21 Jun 2012 22:46:58 +0200 Dag Sverre Seljebotn <d.s.seljebotn@astro.uio.no> wrote:
The other thing is, the folks in distutils2 and myself, have zero knowledge about compilers. That's why we got very frustrated not to see people with that knowledge come and help us in this area.
Here's the flip side: If you have zero knowledge about compilers, it's going to be almost impossible to have a meaningful discussion about a compilation PEP.
If a PEP is being discussed, even a packaging PEP, it involves all of python-dev, so Tarek and Éric not being knowledgeable in compilers is not a big problem.
The necessary prerequisites in this case is not merely "knowledge of compilers". To avoid repeating mistakes of the past, the prerequisites for a meaningful discussion is years of hard-worn experience building software in various languages, on different platforms, using different build tools.
This is precisely the kind of knowledge that a PEP is aimed at distilling.
What would you imagine such a PEP would contain ? If you don't need to customize the compilation, then I would say refactoring what's in distutils is good enough. If you need customization, then I am convinced one should just use one of the existing build tools (waf, fbuild, scons, etc…). Python has more than enough of them already. By refactoring, I mean extracting it completely from command, and have an API similar to e.g. fbuild ( https://github.com/felix-lang/fbuild/blob/master/examples/c/fbuildroot.py), i.e. you basically have a class PythonBuilder.build_extension(name, sources, options). The key point is to remove any dependency on commands. If fbuild were not python3-specific, I would say just use that. It would cover most usecases. Actually,
Regards
Antoine.
_______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/cournape%40gmail.com