On Fri, 2007-06-22 at 12:03 +0100, Simon Marlow wrote:

> 
> Ok, you clearly have looked at a lot more build systems than I have.  So you 
> think there's a shift from autoconf-style "figure out the configuration by 
> running tests" to having a database of configuration settings for various 
> platforms?  I'm surprised - I thought conventional wisdom was that you should 
> write your build system to be as independent as possible from the name of the 
> build platform, so that the system is less sensitive to changes in its 
> environment, and easier to port.  I can see how wiring-in the parameters can 
> make the system more concrete, transparent and predictable, and perhaps that 
> makes it easier to manage.  It's hard to predict whether this would improve 
> our 
> situation without actually doing it, though - it all comes down to the 
> details.

This misses the point. The 'suck it and see' idea fails totally for
cross-compilation. It's a special case.

The right way to do things is to separate the steps:

(a) make a configuration
(b) select a configuration

logically. This is particularly important for developers who are using
the same code base to build for multiple 'platforms' on the 
same machine.

With the above design you can have your cake and eat it too .. :)

Thats the easy part.. the HARD part is: every 'system' comes with
optional 'add-on' facilities. These add-ons may need configuration
data. Often, you want to add the 'add-on' after the system is built.
So integrating the configuration data is an issue.

Felix build system allows add-on packages to have their own
configuration model. It happens to be executed on the fly,
and typically does your usual suck it and see testing
(eg .. where are the SDL headers? Hmm ..) 

This design is wrong of course ;(

-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to