X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=utils%2Fext-core%2FSetup.lhs;h=35661d4b2a4c4e92aa23b539bd0af39326b32446;hb=69f8ed93800605d8df011388450d6d3bb9ca6071;hp=f7706b8a4cd7e6b06ff783d74ef97a73d4e45510;hpb=460784c371813cb92eac71df403fe34258c8f3b8;p=ghc-hetmet.git diff --git a/utils/ext-core/Setup.lhs b/utils/ext-core/Setup.lhs index f7706b8..35661d4 100644 --- a/utils/ext-core/Setup.lhs +++ b/utils/ext-core/Setup.lhs @@ -1,9 +1,8 @@ #!/usr/bin/env runhaskell \begin{code} -{-# OPTIONS -Wall #-} +{-# OPTIONS -Wall -cpp #-} import Control.Monad -import Data.List import Distribution.PackageDescription import Distribution.Simple import Distribution.Simple.LocalBuildInfo @@ -12,13 +11,13 @@ import System.Cmd import System.FilePath import System.Exit import System.Directory -import Control.Exception (try) +import Control.Exception main :: IO () main = do - let hooks = defaultUserHooks { + let hooks = simpleUserHooks { buildHook = build_primitive_sources - $ buildHook defaultUserHooks + $ buildHook simpleUserHooks } defaultMainWithHooks hooks \end{code} @@ -58,7 +57,12 @@ maybeUpdateFile source target = do r <- rawSystem "cmp" ["-s" {-quiet-}, source, target] case r of ExitSuccess -> removeFile source - ExitFailure _ -> do try (removeFile target); renameFile source target - - + ExitFailure _ -> do +#if __GLASGOW_HASKELL__ >= 610 + (try :: IO () -> IO (Either IOException ())) +#else + try +#endif + (removeFile target) + renameFile source target \end{code} \ No newline at end of file