X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=utils%2Fhsc2hs%2FMain.hs;h=b4229869678ed4b7b92f53230771322936d50a9e;hb=9f7dc57027046a350b57f99059f18819c2cf2ae2;hp=e541e21d1444dabdcad83c79ecc1c2cc7b96b1bc;hpb=e796c0f1a48b71be6917da401f5c1cbaf699a87e;p=ghc-hetmet.git diff --git a/utils/hsc2hs/Main.hs b/utils/hsc2hs/Main.hs index e541e21..b422986 100644 --- a/utils/hsc2hs/Main.hs +++ b/utils/hsc2hs/Main.hs @@ -58,6 +58,9 @@ import System ( system ) #endif #endif +import Distribution.Text +import qualified Paths_hsc2hs + version :: String version = "hsc2hs version 0.66\n" @@ -137,7 +140,10 @@ main = do case mb_path of Nothing -> return id Just path -> do - let templ = path ++ "/template-hsc.h" + -- Euch, this is horrible. Unfortunately + -- Paths_hsc2hs isn't too useful for a + -- relocatable binary, though. + let templ = path ++ "/hsc2hs-" ++ display Paths_hsc2hs.version ++ "/template-hsc.h" flg <- doesFileExist templ if flg then return ((Template templ):) @@ -579,8 +585,7 @@ output flags name toks = do linker <- case [l | Linker l <- flags] of [] -> locateGhc compiler - [l] -> return l - _ -> onlyOne "linker" + ls -> return (last ls) writeFile cProgName $ concatMap outFlagHeaderCProg flags++