ghc-7.0.2: fix build on Darwin

There were two problems preventing GHC 7.0.2 from being built on MacOS. For
one, the 'configure' script automatically added the flag

  -isysroot /Developer/SDKs/MacOSX10.5.sdk

to the command-line that's being passed to GCC. This setting doesn't work with
our GCC, and resulted in build errors because standard headers like <stdargs.h>
could no longer be found.

Secondly, the build depends on install_name_tool, which has been added as a
buildInput.

These changes trigger a re-build on all platforms, not just on Darwin. I
realize that this could have been avoided by adding some cruft. However, I
didn't want to add cruft, so there you are.

svn path=/nixpkgs/trunk/; revision=26513
This commit is contained in:
Peter Simons 2011-03-25 12:55:37 +00:00
parent 05474e174b
commit b579f4fd5c

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, ghc, perl, gmp, ncurses}:
{stdenv, fetchurl, ghc, perl, gmp, ncurses, darwinInstallNameToolUtility}:
stdenv.mkDerivation rec {
version = "7.0.2";
@ -13,7 +13,8 @@ stdenv.mkDerivation rec {
sha256 = "f0551f1af2f008a8a14a888b70c0557e00dd04f9ae309ac91897306cd04a6668";
};
buildInputs = [ghc perl gmp ncurses];
buildInputs = [ghc perl gmp ncurses] ++
(if stdenv.isDarwin then [darwinInstallNameToolUtility] else []);
buildMK = ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib"
@ -22,6 +23,7 @@ stdenv.mkDerivation rec {
preConfigure = ''
echo "${buildMK}" > mk/build.mk
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
'';
configureFlags=[
@ -39,7 +41,7 @@ stdenv.mkDerivation rec {
stdenv.lib.maintainers.marcweber
stdenv.lib.maintainers.andres
];
platforms = stdenv.lib.platforms.linux;
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
};
}