From 4a82c60e35612612921c74b3448e79b0a60de780 Mon Sep 17 00:00:00 2001 From: Simon Marlow Date: Mon, 13 Sep 2010 10:12:59 +0000 Subject: [PATCH] filter out the gcc-lib directory from the rts package's library-dirs fixes problems when building with GHC 6.10 on Windows --- utils/ghc-cabal/ghc-cabal.hs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/utils/ghc-cabal/ghc-cabal.hs b/utils/ghc-cabal/ghc-cabal.hs index 25c94a1..41abd39 100644 --- a/utils/ghc-cabal/ghc-cabal.hs +++ b/utils/ghc-cabal/ghc-cabal.hs @@ -328,7 +328,16 @@ generate config_args distdir directory -- GHC's rts package: hackRtsPackage index = case PackageIndex.lookupPackageName index (PackageName "rts") of - [(_,[rts])] -> PackageIndex.insert rts{ Installed.ldOptions = [] } index + [(_,[rts])] -> + PackageIndex.insert rts{ + Installed.ldOptions = [], + Installed.libraryDirs = filter (not . ("gcc-lib" `isSuffixOf`)) (Installed.libraryDirs rts)} index + -- GHC <= 6.12 had $topdir/gcc-lib in their + -- library-dirs for the rts package, which causes + -- problems when we try to use the in-tree mingw, + -- due to accidentally picking up the incompatible + -- libraries there. So we filter out gcc-lib from + -- the RTS's library-dirs here. _ -> error "No (or multiple) ghc rts package is registered!!" dep_ids = map snd (externalPackageDeps lbi) -- 1.7.10.4