diff options
author | Nathan Collins <nathan.collins@gmail.com> | 2012-06-12 02:50:09 -0700 |
---|---|---|
committer | Nathan Collins <nathan.collins@gmail.com> | 2012-06-12 02:50:09 -0700 |
commit | 000bbba3c0fe0e2abbee9646428720edf765ae01 (patch) | |
tree | 249912df93feb123c9357f1e51cf6db3a37d5f4f /Setup.hs | |
parent | 2e0965eba9fa024f0df308d663fc584eb43c2726 (diff) |
Clean up Setup.hs.
Remove post-copy hook 'myPostCopy': it's easy to write one based on
'myPostInst', so just wait until someone complains that it's missing.
Remove most comments.
Put long type sigs on one line like in the other source files.
Diffstat (limited to 'Setup.hs')
-rw-r--r-- | Setup.hs | 50 |
1 files changed, 4 insertions, 46 deletions
@@ -14,15 +14,13 @@ import qualified Build.Configure as Configure main = defaultMainWithHooks simpleUserHooks { preConf = configure , postInst = myPostInst - , postCopy = myPostCopy } configure _ _ = do Configure.run Configure.tests return (Nothing, []) -myPostInst :: Args -> InstallFlags -> PackageDescription - -> LocalBuildInfo -> IO () +myPostInst :: Args -> InstallFlags -> PackageDescription -> LocalBuildInfo -> IO () myPostInst _ (InstallFlags { installVerbosity }) pkg lbi = do installGitAnnexShell dest verbosity pkg lbi installManpages dest verbosity pkg lbi @@ -30,27 +28,7 @@ myPostInst _ (InstallFlags { installVerbosity }) pkg lbi = do dest = NoCopyDest verbosity = fromFlag installVerbosity --- ???: Not sure how you're supposed to use this. E.g., when I do --- --- cabal install --prefix=/tmp/git-annex-install --- cabal copy --deistdir=/tmp/git-annex-copy --- --- I get the copy under --- --- /tmp/git-annex-copy/tmp/git-annex-install --- --- Also, `cabal install` fails when given a relative --prefix. -myPostCopy :: Args -> CopyFlags -> PackageDescription - -> LocalBuildInfo -> IO () -myPostCopy _ (CopyFlags { copyDest, copyVerbosity }) pkg lbi = do - installGitAnnexShell dest verbosity pkg lbi - installManpages dest verbosity pkg lbi - where - dest = fromFlag copyDest - verbosity = fromFlag copyVerbosity - -installGitAnnexShell :: CopyDest -> Verbosity -> PackageDescription - -> LocalBuildInfo -> IO () +installGitAnnexShell :: CopyDest -> Verbosity -> PackageDescription -> LocalBuildInfo -> IO () installGitAnnexShell copyDest verbosity pkg lbi = rawSystemExit verbosity "ln" ["-sf", "git-annex", dstBinDir </> "git-annex-shell"] @@ -59,28 +37,8 @@ installGitAnnexShell copyDest verbosity pkg lbi = -- See http://www.haskell.org/haskellwiki/Cabal/Developer-FAQ#Installing_manpages. -- --- Based on pandoc's and lhs2tex's 'Setup.installManpages' and --- 'postInst' hooks. --- --- My understanding: 'postCopy' is run for `cabal copy`, 'postInst' is --- run for `cabal inst`, and copy is not a generalized install, so you --- have to write two nearly identical hooks. --- --- Summary of hooks: --- http://www.haskell.org/cabal/release/cabal-latest/doc/API/Cabal/Distribution-Simple-UserHooks.htm-- --- Other people are also confused: --- --- * Bug: 'postCopy' and 'postInst' are confusing: --- http://hackage.haskell.org/trac/hackage/ticket/718 --- --- * A cabal maintainer suggests using 'postCopy' instead of --- 'postInst', because `cabal install` is `cabal copy` followed by --- `cabal register`: --- http://www.haskell.org/pipermail/libraries/2008-March/009416.html --- Although that sounds desirable, it's not true, as the reply and --- experiments indicate. -installManpages :: CopyDest -> Verbosity -> PackageDescription - -> LocalBuildInfo -> IO () +-- Based on pandoc's Setup.hs. +installManpages :: CopyDest -> Verbosity -> PackageDescription -> LocalBuildInfo -> IO () installManpages copyDest verbosity pkg lbi = installOrdinaryFiles verbosity dstManDir srcManpages where |