On Thu, Mar 27, 2014 at 2:23 PM, Nick Coghlan <ncoghlan@gmail.com> wrote:

On 28 Mar 2014 05:42, "Daniel Holth" <dholth@gmail.com> wrote:
> I became convinced that build was an inherently arbitrary-code
> process, and not something to be universally handled by a declarative
> system,

It wasn't an accident that last years PyCon panel was subtitled "setup.py *install* must die" :)

As others have suggested, declarative build will never be more than an 80% solution, and then beyond that, it should be a question of plumbing to invoke the project's own build system (and ideally that plumbing will be per build system, not per project).

Agreed -- I have been poking at this a bit, and trying to make gattai work for me:


(It's a by and for python build system that essentially invokes the native build systems : make, setup.py, nmake, etc... But that's not really the point). the point is that I hit a wall pretty quickly with its declarative approach (JSON files). I find I can't do what I need to do with straight declaration (and I'm hacking gattai to support that)

However, for the most part, all I need to be able to do is run arbitrary code to set up the declarations. The stuff that's been talked about: finding the right libraries to link to, that sort of thing.

I actually think that aspect of the setup.py approach works pretty well, even though it does sometimes get kind of messy.



Christopher Barker, Ph.D.

Emergency Response Division
NOAA/NOS/OR&R            (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception