diff options
Diffstat (limited to 'pkgs/development/compilers/ghc/8.10.1.nix')
-rw-r--r-- | pkgs/development/compilers/ghc/8.10.1.nix | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/pkgs/development/compilers/ghc/8.10.1.nix b/pkgs/development/compilers/ghc/8.10.1.nix index 9198d08cef451..c70efe1fdef3c 100644 --- a/pkgs/development/compilers/ghc/8.10.1.nix +++ b/pkgs/development/compilers/ghc/8.10.1.nix @@ -27,7 +27,7 @@ # platform). Static libs are always built. enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt -, # Whetherto build terminfo. +, # Whether to build terminfo. enableTerminfo ? !stdenv.targetPlatform.isWindows , # What flavour to build. An empty string indicates no @@ -73,7 +73,7 @@ let ''; # Splicer will pull out correct variations - libDeps = platform: stdenv.lib.optional enableTerminfo [ ncurses ] + libDeps = platform: stdenv.lib.optional enableTerminfo ncurses ++ [libffi] ++ stdenv.lib.optional (!enableIntegerSimple) gmp ++ stdenv.lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv; @@ -84,7 +84,9 @@ let targetCC = builtins.head toolsForTarget; - useLdGold = targetPlatform.isLinux && !(targetPlatform.useLLVM or false); + # ld.gold is disabled for musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856 + # see #84670 and #49071 for more background. + useLdGold = targetPlatform.isLinux && !(targetPlatform.useLLVM or false) && !targetPlatform.isMusl; in stdenv.mkDerivation (rec { @@ -158,10 +160,10 @@ stdenv.mkDerivation (rec { "--with-system-libffi" "--with-ffi-includes=${targetPackages.libffi.dev}/include" "--with-ffi-libraries=${targetPackages.libffi.out}/lib" - ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && !enableIntegerSimple) [ + ] ++ stdenv.lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [ "--with-gmp-includes=${targetPackages.gmp.dev}/include" "--with-gmp-libraries=${targetPackages.gmp.out}/lib" - ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ + ] ++ stdenv.lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [ @@ -174,7 +176,7 @@ stdenv.mkDerivation (rec { "--disable-large-address-space" ]; - # Make sure we never relax`$PATH` and hooks support for compatability. + # Make sure we never relax`$PATH` and hooks support for compatibility. strictDeps = true; # Don’t add -liconv to LDFLAGS automatically so that GHC will add it itself. @@ -227,7 +229,7 @@ stdenv.mkDerivation (rec { }; meta = { - homepage = http://haskell.org/ghc; + homepage = "http://haskell.org/ghc"; description = "The Glasgow Haskell Compiler"; maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; inherit (ghc.meta) license platforms; |