Early trial builds of 2012.2.0.0

Chris Dornan chris at chrisdornan.com
Tue May 15 16:52:37 BST 2012


Platform Builders,

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

Chris





More information about the Haskell-platform mailing list