Ticket #195 (closed defect: fixed)
cabal output changed, breaking Build.hs under some conditions
| Reported by: | MtnViewMark | Owned by: | MtnViewMark |
|---|---|---|---|
| Priority: | major | Milestone: | 2012.4.0.0 |
| Component: | Generic source tarball | Keywords: | |
| Cc: |
Description
From Chris Dornan:
The current tar-ball generator doesn’t work with the latest cabal-install (0.14.0).
In build.hs we have
-- -- Too sleepy. Future: solve this via the cabal library -- let cmd = "cabal install --dry-run --reinstall " ++ (
intercalate " " [ package
| (_, package) <- urls
] ) ++ " > platform.packages.raw"
--writeFile "platform.packages.cmd" cmd system cmd src <- readFile "platform.packages.raw"
let programs = drop 2 $ lines src writeFile "platform.packages" (unlines programs)
The problem is that ' cabal install --dry-run --reinstall' has become too loquacious for our convenience and is annotating the output with extra context. The first word of the output still contains what we need (the package) so I have replaced the second let binding above with this,
let fw ln = case words ln of { [] -> ""; p:_ -> p; }
programs = map fw $ drop 2 $ lines src
to get a sensible content for platform.packages (for a while).
The modified Build.hs can be found here: https://github.com/cdornan/haskell-platform/blob/pre-release/src/generic/Build.hs
