From 50e8ff95fb7c0b375959b4236267e981666930a5 Mon Sep 17 00:00:00 2001 From: Ross Paterson <ross@soi.city.ac.uk> Date: Thu, 18 Oct 2007 16:42:45 +0000 Subject: [PATCH] don't fail if xxx_hsc_make.c is gone The non-GHC hsc2hs deletes it even if the compilation fails. --- Distribution/Simple/Program.hs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Distribution/Simple/Program.hs b/Distribution/Simple/Program.hs index 48165391a5..f28976ffbb 100644 --- a/Distribution/Simple/Program.hs +++ b/Distribution/Simple/Program.hs @@ -93,6 +93,7 @@ import Distribution.Version (Version(..), readVersion, showVersion, import Distribution.Verbosity import System.Directory (doesFileExist, removeFile) import System.FilePath (dropExtension) +import System.IO.Error (try) import Control.Monad (join, foldM) import Control.Exception as Exception (catch) @@ -564,7 +565,7 @@ hsc2hsProgram = (simpleProgram "hsc2hs") { withTempFile "." "hsc" $ \hsc -> do writeFile hsc "" (str, _) <- rawSystemStdout' verbosity path [hsc, "--cflag=--version"] - removeFile (dropExtension hsc ++ "_hsc_make.c") + try $ removeFile (dropExtension hsc ++ "_hsc_make.c") case words str of (_:"Glorious":"Glasgow":"Haskell":_) -> return $ Just version { versionTags = ["ghc"] } -- GitLab