projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Vectorisation of top-level bindings
[ghc-hetmet.git]
/
libraries
/
installPackage.hs
diff --git
a/libraries/installPackage.hs
b/libraries/installPackage.hs
index
f4fdfa7
..
14069e8
100644
(file)
--- a/
libraries/installPackage.hs
+++ b/
libraries/installPackage.hs
@@
-8,6
+8,7
@@
import Distribution.Simple.Utils
import Distribution.Verbosity
import System.Cmd
import System.Environment
import Distribution.Verbosity
import System.Cmd
import System.Environment
+import System.Info
main :: IO ()
main = do args <- getArgs
main :: IO ()
main = do args <- getArgs
@@
-42,12
+43,25
@@
doit pref ghcpkg verbosity =
pdFile <- defaultPackageDesc verbosity
pd <- readPackageDescription verbosity pdFile
lbi <- getPersistBuildConfig
pdFile <- defaultPackageDesc verbosity
pd <- readPackageDescription verbosity pdFile
lbi <- getPersistBuildConfig
- let -- XXX This is an almighty hack, shadowing the base Setup.hs hack
+ let -- XXX These are almighty hacks, shadowing the base
+ -- Setup.hs hacks
+ extraExtraLibs = if (os == "mingw32") &&
+ (pkgName (package pd) == "base")
+ then ["wsock32", "msvcrt", "kernel32",
+ "user32", "shell32"]
+ else []
lib' = case library pd of
Just lib ->
lib' = case library pd of
Just lib ->
- lib {
- exposedModules = filter (("GHC.Prim" /=))
- $ exposedModules lib
+ let ems = filter (("GHC.Prim" /=))
+ $ exposedModules lib
+ lib_bi = libBuildInfo lib
+ lib_bi' = lib_bi {
+ extraLibs = extraExtraLibs
+ ++ extraLibs lib_bi
+ }
+ in lib {
+ exposedModules = ems,
+ libBuildInfo = lib_bi'
}
Nothing ->
error "Expected a library, but none found"
}
Nothing ->
error "Expected a library, but none found"