diff options
author | Ben Siraphob <bensiraphob@gmail.com> | 2021-01-22 18:25:31 +0700 |
---|---|---|
committer | Ben Siraphob <bensiraphob@gmail.com> | 2021-01-23 08:57:37 +0700 |
commit | acc5f7b18a60bc9b1024e5e1882bf7362e6492e6 (patch) | |
tree | 597dab74ebab3915ddff291ec6aa4913f4010c68 /pkgs/development/compilers/ghc/8.6.5.nix | |
parent | bbaff89ceb389e9c21a90eefac60ebc9853144be (diff) |
pkgs/development/compilers: stdenv.lib -> lib
Diffstat (limited to 'pkgs/development/compilers/ghc/8.6.5.nix')
-rw-r--r-- | pkgs/development/compilers/ghc/8.6.5.nix | 64 |
1 files changed, 32 insertions, 32 deletions
diff --git a/pkgs/development/compilers/ghc/8.6.5.nix b/pkgs/development/compilers/ghc/8.6.5.nix index 7adacff597ca0..219ace5a91640 100644 --- a/pkgs/development/compilers/ghc/8.6.5.nix +++ b/pkgs/development/compilers/ghc/8.6.5.nix @@ -1,4 +1,4 @@ -{ stdenv, pkgsBuildTarget, targetPackages +{ lib, stdenv, pkgsBuildTarget, targetPackages # build-tools , bootPkgs @@ -18,7 +18,7 @@ , # If enabled, GHC will be built with the GPL-free but slower integer-simple # library instead of the faster but GPLed integer-gmp library. - enableIntegerSimple ? !(stdenv.lib.any (stdenv.lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp + enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp , # If enabled, use -fPIC when compiling static libs. enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform @@ -32,7 +32,7 @@ , # What flavour to build. An empty string indicates no # specific flavour and falls back to ghc default values. - ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) + ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) (if useLLVM then "perf-cross" else "perf-cross-ncg") , # Whether to disable the large address space allocator @@ -48,7 +48,7 @@ let inherit (bootPkgs) ghc; # TODO(@Ericson2314) Make unconditional - targetPrefix = stdenv.lib.optionalString + targetPrefix = lib.optionalString (targetPlatform != hostPlatform) "${targetPlatform.config}-"; @@ -66,28 +66,28 @@ let # to actually link to our new Libc. The iOS simulator is a special # exception because we can’t actually run simulators binaries # ourselves. - + stdenv.lib.optionalString (targetPlatform != hostPlatform) '' + + lib.optionalString (targetPlatform != hostPlatform) '' Stage1Only = ${if (targetPlatform.system == hostPlatform.system && !targetPlatform.isiOS) then "NO" else "YES"} CrossCompilePrefix = ${targetPrefix} HADDOCK_DOCS = NO BUILD_SPHINX_HTML = NO BUILD_SPHINX_PDF = NO - '' + stdenv.lib.optionalString enableRelocatedStaticLibs '' + '' + lib.optionalString enableRelocatedStaticLibs '' GhcLibHcOpts += -fPIC GhcRtsHcOpts += -fPIC - '' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt '' + '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' EXTRA_CC_OPTS += -std=gnu99 ''; # Splicer will pull out correct variations - libDeps = platform: stdenv.lib.optional enableTerminfo ncurses + libDeps = platform: lib.optional enableTerminfo ncurses ++ [libffi] - ++ stdenv.lib.optional (!enableIntegerSimple) gmp - ++ stdenv.lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv; + ++ lib.optional (!enableIntegerSimple) gmp + ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv; toolsForTarget = [ pkgsBuildTarget.targetPackages.stdenv.cc - ] ++ stdenv.lib.optional useLLVM buildLlvmPackages.llvm; + ] ++ lib.optional useLLVM buildLlvmPackages.llvm; targetCC = builtins.head toolsForTarget; @@ -136,7 +136,7 @@ stdenv.mkDerivation (rec { export CC="${targetCC}/bin/${targetCC.targetPrefix}cc" export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx" # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177 - export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString useLdGold ".gold"}" + export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}" export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as" export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar" export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm" @@ -146,13 +146,13 @@ stdenv.mkDerivation (rec { echo -n "${buildMK}" > mk/build.mk sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure - '' + stdenv.lib.optionalString (!stdenv.isDarwin) '' + '' + lib.optionalString (!stdenv.isDarwin) '' export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}" - '' + stdenv.lib.optionalString stdenv.isDarwin '' + '' + lib.optionalString stdenv.isDarwin '' export NIX_LDFLAGS+=" -no_dtrace_dof" - '' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt '' + '' + lib.optionalString targetPlatform.useAndroidPrebuilt '' sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets - '' + stdenv.lib.optionalString targetPlatform.isMusl '' + '' + lib.optionalString targetPlatform.isMusl '' echo "patching llvm-targets for musl targets..." echo "Cloning these existing '*-linux-gnu*' targets:" grep linux-gnu llvm-targets | sed 's/^/ /' @@ -172,23 +172,23 @@ stdenv.mkDerivation (rec { # TODO(@Ericson2314): Always pass "--target" and always prefix. configurePlatforms = [ "build" "host" ] - ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; + ++ lib.optional (targetPlatform != hostPlatform) "target"; # `--with` flags for libraries needed for RTS linker configureFlags = [ "--datadir=$doc/share/doc/ghc" "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib" - ] ++ stdenv.lib.optionals (libffi != null) ["--with-system-libffi" "--with-ffi-includes=${targetPackages.libffi.dev}/include" "--with-ffi-libraries=${targetPackages.libffi.out}/lib" - ] ++ stdenv.lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [ + ] ++ lib.optionals (libffi != null) ["--with-system-libffi" "--with-ffi-includes=${targetPackages.libffi.dev}/include" "--with-ffi-libraries=${targetPackages.libffi.out}/lib" + ] ++ lib.optionals (targetPlatform == hostPlatform && !enableIntegerSimple) [ "--with-gmp-includes=${targetPackages.gmp.dev}/include" "--with-gmp-libraries=${targetPackages.gmp.out}/lib" - ] ++ stdenv.lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ + ] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [ "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib" - ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [ + ] ++ lib.optionals (targetPlatform != hostPlatform) [ "--enable-bootstrap-with-devel-snapshot" - ] ++ stdenv.lib.optionals useLdGold [ + ] ++ lib.optionals useLdGold [ "CFLAGS=-fuse-ld=gold" "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold" "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold" - ] ++ stdenv.lib.optionals (disableLargeAddressSpace) [ + ] ++ lib.optionals (disableLargeAddressSpace) [ "--disable-large-address-space" ]; @@ -209,14 +209,14 @@ stdenv.mkDerivation (rec { buildInputs = [ perl bash ] ++ (libDeps hostPlatform); propagatedBuildInputs = [ targetPackages.stdenv.cc ] - ++ stdenv.lib.optional useLLVM llvmPackages.llvm; + ++ lib.optional useLLVM llvmPackages.llvm; - depsTargetTarget = map stdenv.lib.getDev (libDeps targetPlatform); - depsTargetTargetPropagated = map (stdenv.lib.getOutput "out") (libDeps targetPlatform); + depsTargetTarget = map lib.getDev (libDeps targetPlatform); + depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform); # required, because otherwise all symbols from HSffi.o are stripped, and # that in turn causes GHCi to abort - stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; + stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; # See #63511 - the only unstripped file is the debug rts which isn't meant to # be stripped. @@ -224,7 +224,7 @@ stdenv.mkDerivation (rec { checkTarget = "test"; - hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie"; + hardeningDisable = [ "format" ] ++ lib.optional stdenv.targetPlatform.isMusl "pie"; postInstall = '' # Install the bash completion file. @@ -234,11 +234,11 @@ stdenv.mkDerivation (rec { for i in "$out/bin/"*; do test ! -h $i || continue egrep --quiet '^#!' <(head -n 1 $i) || continue - sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i + sed -i -e '2i export PATH="$PATH:${lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i done '' # Temporary work-around for https://github.com/NixOS/nixpkgs/issues/66277 - + stdenv.lib.optionalString hostPlatform.isAarch64 '' + + lib.optionalString hostPlatform.isAarch64 '' rm -rf "$doc/share/doc/ghc/html/libraries" ''; @@ -255,12 +255,12 @@ stdenv.mkDerivation (rec { meta = { homepage = "http://haskell.org/ghc"; description = "The Glasgow Haskell Compiler"; - maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ]; + maintainers = with lib.maintainers; [ marcweber andres peti ]; timeout = 24 * 3600; inherit (ghc.meta) license platforms; }; -} // stdenv.lib.optionalAttrs targetPlatform.useAndroidPrebuilt { +} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt { dontStrip = true; dontPatchELF = true; noAuditTmpdir = true; |