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"
30checkStdLib local verbosity
31 = do let icmd = ".." </> buildDir local </> "idris" </> "idris"
32 putStrLn $ "Building libraries..."
34 [ "-C", "lib", "check"
38-- Install libraries during both copy and install
39-- See http://hackage.haskell.org/trac/hackage/ticket/718
40main = defaultMainWithHooks $ simpleUserHooks
41 { postCopy = \ _ flags pkg lbi -> do
42 installStdLib pkg lbi (S.fromFlag $ S.copyVerbosity flags)
43 (S.fromFlag $ S.copyDest flags)
44 , postInst = \ _ flags pkg lbi -> do
45 installStdLib pkg lbi (S.fromFlag $ S.installVerbosity flags)
47 , postClean = \ _ flags _ _ -> do
48 cleanStdLib (S.fromFlag $ S.cleanVerbosity flags)
49 , postBuild = \ _ flags _ lbi -> do
50 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