[Hackage] #179: support GHC's main-is extension

Hackage cvs-ghc at haskell.org
Wed Jun 22 03:24:13 CEST 2011

#179: support GHC's main-is extension
  Reporter:  duncan         |        Owner:          
      Type:  enhancement    |       Status:  reopened
  Priority:  low            |    Milestone:  _|_     
 Component:  Cabal library  |      Version: 
  Severity:  normal         |   Resolution:          
  Keywords:                 |   Difficulty:  normal  
Ghcversion:  6.4.2          |     Platform:  Linux   

Comment(by cjs):

 Giving each target its own build directory works, but causes a lot of
 extra building when you have a lot of targets in a large system. E.g., in
 one recent major project I had perhaps a hundred source files and 20-30
 targets (including test targets--only a dozen or so were production
 targets). Separate build dirs for each target would have turned a 5-10
 minute full build into 2-3 hour full build.

 I was told the solution is to use libraries, but when you have test
 framework "main" targets within a number of library modules, that still
 doesn't fix the problem unless you also do do some interesting work on
 your build system to build a library and then a single module within that
 library separately that links to the rest of the library.

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

More information about the cabal-devel mailing list