[Hackage] #513: Version of Cabal lib used to build Setup.hs is not tracked.

Hackage trac at galois.com
Fri Feb 27 13:02:11 EST 2009


#513: Version of Cabal lib used to build Setup.hs is not tracked.
----------------------------+-----------------------------------------------
  Reporter:  duncan         |        Owner:         
      Type:  defect         |       Status:  new    
  Priority:  low            |    Milestone:         
 Component:  Cabal library  |      Version:  1.6.0.1
  Severity:  normal         |     Keywords:         
Difficulty:  unknown        |   Ghcversion:         
  Platform:                 |  
----------------------------+-----------------------------------------------
 Neil ran into these symptoms:

 {{{
 Cabal documents itself as having a --builddir command to
 change the placement of dist stuff, which is fantastic.

 However, running with GHC 6.8.3, Cabal 1.6.0.2, I get:

 cabal build --builddir=../../../_make/Tools/ext/haddock-0.9/dist
 setup.exe: Unrecognised flags:
  --builddir=../../../_make/Tools/ext/haddock-0.9/dist

 i.e. cabal accepts the --builddir command, but the setup
 that cabal builds doesn't. Why?
 }}}

 Turns out it was because the `Setup` executable had been compiled
 previously using an older Cabal lib that did not understand the
 `--builddir` flag.

 Two things are needed to fix this, one is a proper checked specification
 of the command line interface so that cabal-install always knows what
 flags the `Setup` supports. The other is to track the version of the Cabal
 lib used to build the `Setup` and to recompile it if that changes.

 Note that this should happen automagically if we use a proper dependency
 tracking framework. In the mean time it'd require keeping an extra state
 file in `dist/setup`.

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


More information about the cabal-devel mailing list