[Hackage] #815: Feature Request: Translate buildplan to makefile

Hackage cvs-ghc at haskell.org
Tue Apr 19 05:27:00 CEST 2011


#815: Feature Request: Translate buildplan to makefile
-----------------------------+----------------------------------------------
  Reporter:  guest           |        Owner:         
      Type:  enhancement     |       Status:  closed 
  Priority:  normal          |    Milestone:         
 Component:  Cabal library   |      Version:  1.8.0.6
  Severity:  normal          |   Resolution:  wontfix
  Keywords:  makefile, make  |   Difficulty:  unknown
Ghcversion:                  |     Platform:         
-----------------------------+----------------------------------------------

Comment(by guest):

 Where is the documentation for this feature of getting the automated
 package management?  The user guide doesn't appear to discuss it.

 It seems like actually you have to make your own tool on top of cabal or
 you have to implement the logic again and again in every project that
 wants it (inside Setup.hs).

 If GHC needs this functionality, and other non-ghc projects would benefit
 as well, what is the justification for not implementing it as part of the
 Cabal library?

 One thing I can't do with cabal that I can do with all other build systems
 I've used is to define new rules for processing files.  For example, if I
 made a new preprocessor for Haskell source I would have to write custom
 code in every Setup.hs that needs the preprocessor currently.  Being able
 to generate a build plan as a makefile would make it so that custom
 preprocessor rules could be inserted easily by end users without having to
 resort to hacking their Setup.hs.

 For me, modifying Setup.hs is a last resort.  It's a desperate measure.
 Being forced to reimplementing the build logic for every project in a
 general purpose language is exactly the problem that build system DSLs
 like Make were designed to solve.  That's why I see writing custom
 Setup.hs to do anything that isn't trivial as a step backwards.

-- 
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/815#comment:2>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects



More information about the cabal-devel mailing list