Remove Setup.hs, use Setup.lhs only

Duncan Coutts duncan.coutts at worc.ox.ac.uk
Mon Nov 27 19:28:56 EST 2006


On Mon, 2006-11-27 at 15:06 -0800, Isaac Jones wrote:

> >> Ross, how do you see the fields panning out?  Want to implement it? :)
> >
> > Something like
> >
> > 	Build-Type: (Simple|Configure|Make|Custom)
> >
> > I'd be happy to implement it, if/when we get agreement.
> 
> Cool.  What do others think of all this?

It's not clear to me that we need to have an extra field. I had
originally envisaged that cabal-setup would just find the right compiler
to build Setup.(l)hs and if there was none that it'd use defaultMain
(possibly without needing to compile any setup binary).

So do we really need a 'build-type:' field? Arn't there just two values
for it, 'Simple' and 'Custom' (since all others are just different
implementations of 'Custom')? Can't the Simple/Custom distinction be
simply if the Setup.(l)hs is present or not?

As people have said, backwards compat is easy, just include a
Setup.(l)hs that calls defaultMain. If you ommit it, then new
cabal-setup can build it anyway.

Duncan



More information about the cabal-devel mailing list