[commit: ghc] master: Fix ghci on Windows when GHC is dynamically linked (69a343a)
Ian Lynagh
igloo at earth.li
Wed May 15 16:30:38 CEST 2013
Repository : http://darcs.haskell.org/ghc.git/
On branch : master
https://github.com/ghc/ghc/commit/69a343af10f70fcc5a7977968cbceac55114c2ee
>---------------------------------------------------------------
commit 69a343af10f70fcc5a7977968cbceac55114c2ee
Author: Ian Lynagh <ian at well-typed.com>
Date: Tue May 14 16:41:05 2013 +0100
Fix ghci on Windows when GHC is dynamically linked
On Windows, we need to prepend "lib" to Haskell DLLs.
(maybe we should be naming the DLLs without the prefix instead? But this
works for now).
>---------------------------------------------------------------
compiler/ghci/Linker.lhs | 2 +-
compiler/main/HscTypes.lhs | 5 ++++-
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/compiler/ghci/Linker.lhs b/compiler/ghci/Linker.lhs
index ffe43e0..2de130a 100644
--- a/compiler/ghci/Linker.lhs
+++ b/compiler/ghci/Linker.lhs
@@ -1195,7 +1195,7 @@ locateLib dflags is_hs dirs lib
mk_arch_path dir = dir </> ("lib" ++ lib <.> "a")
hs_dyn_lib_name = lib ++ "-ghc" ++ cProjectVersion
- mk_hs_dyn_lib_path dir = dir </> mkSOName platform hs_dyn_lib_name
+ mk_hs_dyn_lib_path dir = dir </> mkHsSOName platform hs_dyn_lib_name
so_name = mkSOName platform lib
mk_dyn_lib_path dir = dir </> so_name
diff --git a/compiler/main/HscTypes.lhs b/compiler/main/HscTypes.lhs
index d9fe88b..28134e1 100644
--- a/compiler/main/HscTypes.lhs
+++ b/compiler/main/HscTypes.lhs
@@ -37,7 +37,7 @@ module HscTypes (
PackageInstEnv, PackageRuleBase,
- mkSOName, soExt,
+ mkSOName, mkHsSOName, soExt,
-- * Annotations
prepareAnnotations,
@@ -1796,6 +1796,9 @@ mkSOName platform root
OSMinGW32 -> root <.> "dll"
_ -> ("lib" ++ root) <.> "so"
+mkHsSOName :: Platform -> FilePath -> FilePath
+mkHsSOName platform root = ("lib" ++ root) <.> soExt platform
+
soExt :: Platform -> FilePath
soExt platform
= case platformOS platform of
More information about the ghc-commits
mailing list