Build system idea

Ian Lynagh igloo at earth.li
Thu Aug 28 13:11:52 EDT 2008


On Fri, Aug 29, 2008 at 12:57:59AM +1000, Roman Leshchinskiy wrote:
> On 28/08/2008, at 21:10, Ian Lynagh wrote:
> 
> >On Thu, Aug 28, 2008 at 10:27:22AM +0100, Simon Peyton-Jones wrote:
> >>
> >>PS: concerning your last point, about "separating the Simple build  
> >>system", that might indeed be good.  Indeed, the GHC plan described  
> >>here http://hackage.haskell.org/trac/ghc/wiki/Design/BuildSystem is  
> >>(I think) precisely using the declarative part but not the build- 
> >>system part.
> >
> >The
> > * Use Cabal for Haddocking, installing, and anything else we need  
> >to do.
> >bullet point uses the build system part.
> 
> Hmm, from the previous discussion I got the impression that (large  
> parts of) this functionality would be extracted from Simple and could  
> then be used by other build systems. Is this wrong?

I thought that the proposal was to split Cabal into the "declarative
package specification part", and the "how to build the package" part?

If so, then surely "how to run haddock on the sources" belongs in the
"how to build the package" part?

Of course, you can call the haddocking code from another build system,
provided your build system is compatible with the way the haddocking
code works. That's more-or-less what "Setup makefile" does: It builds
the package itself, but puts things in the same places as the simple
build system, so the simple build system can be used for configuring,
haddocking, installing, etc.

I guess in principle you could split the "how to build the package" part
up into multiple packages (Cabal-configure, Cabal-haddock,
Cabal-install, etc), but I don't see what benefit that would provide.
It would still be the same modules containing the same code inside.


Thanks
Ian



More information about the Glasgow-haskell-users mailing list