1import Distribution.Simple
2import Distribution.Simple.InstallDirs as I
3import Distribution.Simple.LocalBuildInfo as L
4import qualified Distribution.Simple.Setup as S
5import qualified Distribution.Simple.Program as P
6import Distribution.PackageDescription
9import System.FilePath ((</>))
12-- After Idris is built, we need to check and install the prelude and other libs
14make verbosity = P.runProgramInvocation verbosity . P.simpleProgramInvocation "make"
17 = make verbosity [ "-C", "lib", "clean" ]
19installStdLib pkg local verbosity copy
20 = do let dirs = L.absoluteInstallDirs pkg local copy
21 let idir = datadir dirs
22 let icmd = ".." </> buildDir local </> "idris" </> "idris"
23 putStrLn $ "Installing libraries in " ++ idir
25 [ "-C", "lib", "install"
30 [ "-C", "support", "install"
35checkStdLib local verbosity
36 = do let icmd = ".." </> buildDir local </> "idris" </> "idris"
37 putStrLn $ "Building libraries..."
39 [ "-C", "lib", "check"
43 [ "-C", "support", "check"
47-- Install libraries during both copy and install
48-- See http://hackage.haskell.org/trac/hackage/ticket/718
49main = defaultMainWithHooks $ simpleUserHooks
50 { postCopy = \ _ flags pkg lbi -> do
51 installStdLib pkg lbi (S.fromFlag $ S.copyVerbosity flags)
52 (S.fromFlag $ S.copyDest flags)
53 , postInst = \ _ flags pkg lbi -> do
54 installStdLib pkg lbi (S.fromFlag $ S.installVerbosity flags)
56 , postClean = \ _ flags _ _ -> do
57 cleanStdLib (S.fromFlag $ S.cleanVerbosity flags)
58 , postBuild = \ _ flags _ lbi -> do
59 checkStdLib lbi (S.fromFlag $ S.buildVerbosity flags)
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list