[Numpy-discussion] parallel compilation of numpy

David Cournapeau david@ar.media.kyoto-u.ac...
Wed Feb 18 23:47:48 CST 2009


Brian Granger wrote:
> The reason that Ondrej and I are asking all of these questions is that
> we are currently exploring build systems for a couple of projects we
> are working on (together).  In general, my sense is that distutils
> won't be sufficient for our build needs.  Thus, we are looking at
> Scons, cmake, numscons, waf, etc.  Honestly, compared to plain
> distutils, *any* of these other solutions seem very nice, even that
> each of them has its own downsides.
>   

I agree that for purely build issues, anything is better than distutils.
Heck, I would take autotools + m4 over distutils any day. To be fair to
distutils, distutils was never conceived nor intented to do complex C
handling.

> * Install Python package in a way that is consistent with common
> Python practices (site-packages, etc.)
>   

This is doable

> * Integration with setuptools and eggs, which enables things like
> namespace packages.
>   

This is not. eggs are not specified, and totally implementation defined.
I tried some time ago to  add an egg builder to scons, but I gave up.
And I don't think you can reuse the setuptools code, as everything is
coupled.

> * Uploads to pypi.
>   

Pypi has a xmlrpc-based API, so this should be doable relatively easily.

> I wonder if it wouldn't be too difficult to simply implement these
> capabilities in raw cmake/Scons/waf and do away with distutils all
> together. 
waf already has a relatively advanced python extension builder, and can
build tarballs. The problem with scons is the tight coupling of the
code: any significant change cannot be done ATM without deep knowledge
about the whole codebase. Be it for options/tarball handling or speed
issues. I don't know enough about cmake.

cheers,

David


More information about the Numpy-discussion mailing list