projects
/
ghc-prim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update source-repository in the .cabal file to point to the git repo
[ghc-prim.git]
/
Setup.hs
diff --git
a/Setup.hs
b/Setup.hs
index
0322363
..
5e736ab
100644
(file)
--- a/
Setup.hs
+++ b/
Setup.hs
@@
-9,13
+9,13
@@
import Data.Maybe
import Distribution.PackageDescription
import Distribution.Simple
import Distribution.Simple.LocalBuildInfo
import Distribution.PackageDescription
import Distribution.Simple
import Distribution.Simple.LocalBuildInfo
+import Distribution.Simple.Program
import Distribution.Simple.Utils
import Distribution.Text
import System.Cmd
import System.FilePath
import System.Exit
import System.Directory
import Distribution.Simple.Utils
import Distribution.Text
import System.Cmd
import System.FilePath
import System.Exit
import System.Directory
-import Control.Exception (try)
main :: IO ()
main = do let hooks = simpleUserHooks {
main :: IO ()
main = do let hooks = simpleUserHooks {
@@
-25,8
+25,9
@@
main = do let hooks = simpleUserHooks {
$ buildHook simpleUserHooks,
makefileHook = build_primitive_sources
$ makefileHook simpleUserHooks,
$ buildHook simpleUserHooks,
makefileHook = build_primitive_sources
$ makefileHook simpleUserHooks,
- haddockHook = build_primitive_sources
- $ haddockHook simpleUserHooks }
+ haddockHook = addPrimModuleForHaddock
+ $ build_primitive_sources
+ $ haddockHook simpleUserHooks }
defaultMainWithHooks hooks
type Hook a = PackageDescription -> LocalBuildInfo -> UserHooks -> a -> IO ()
defaultMainWithHooks hooks
type Hook a = PackageDescription -> LocalBuildInfo -> UserHooks -> a -> IO ()
@@
-40,6
+41,13
@@
addPrimModule f pd lbi uhs x =
lbi' = lbi { localPkgDescr = lpd }
f pd' lbi' uhs x
lbi' = lbi { localPkgDescr = lpd }
f pd' lbi' uhs x
+addPrimModuleForHaddock :: Hook a -> Hook a
+addPrimModuleForHaddock f pd lbi uhs x =
+ do let pc = withPrograms lbi
+ pc' = userSpecifyArgs "haddock" ["GHC/Prim.hs"] pc
+ lbi' = lbi { withPrograms = pc' }
+ f pd lbi' uhs x
+
addPrimModuleToPD :: PackageDescription -> PackageDescription
addPrimModuleToPD pd =
case library pd of
addPrimModuleToPD :: PackageDescription -> PackageDescription
addPrimModuleToPD pd =
case library pd of
@@
-76,5
+84,7
@@
maybeUpdateFile source target = do
r <- rawSystem "cmp" ["-s" {-quiet-}, source, target]
case r of
ExitSuccess -> removeFile source
r <- rawSystem "cmp" ["-s" {-quiet-}, source, target]
case r of
ExitSuccess -> removeFile source
- ExitFailure _ -> do try (removeFile target); renameFile source target
+ ExitFailure _ -> do exists <- doesFileExist target
+ when exists $ removeFile target
+ renameFile source target