
On 10/24/06, Duncan Coutts
Hi All,
Before the 6.6 release we had a longish discussion on how to do configurations and their semantics and implementation complexity etc.
I would like to re-propose the last scheme that I cam up with. I'll try to make it a concrete proposal as well as giving some motivating examples to give the intuition of the meaning.
The only way I have really wanted to use configurations so far is to build debug, profiling, and optimized versions of a library. In order to build multiple configurations, is it going to still be the case that I have to "configure / build / install" separately for each configuration? I would like to be able to say something like "Setup.lhs configure --optimized --debug --profiled" to build all three versions at once. Also, let's say I have this: Name: foo Version: 1.0 configuration: flag(DEBUG) cpp-options: -DDEBUG Name: bar Build-depends: foo >= 1.0 configuration: flag(DEBUG) Build-depends: ???? How can I say that I want the DEBUG version of package "bar" to depend on the DEBUG version of package "foo."? Is this allowed? Name: foo Version: 1.0 configuration: flag(debug) Name: foo-debug Otherwise, how can I have a debug and an optimized configuration of a given library installed at the same time? Regards, Brian