diff --git a/doc/languages-frameworks/rust.section.md b/doc/languages-frameworks/rust.section.md index eec982d4c90a..6588281878a0 100644 --- a/doc/languages-frameworks/rust.section.md +++ b/doc/languages-frameworks/rust.section.md @@ -93,8 +93,8 @@ Now, the file produced by the call to `carnix`, called `hello.nix`, looks like: ``` # Generated by carnix 0.6.5: carnix -o hello.nix --src ./. Cargo.lock --standalone -{ lib, buildPlatform, buildRustCrate, fetchgit }: -let kernel = buildPlatform.parsed.kernel.name; +{ lib, stdenv, buildRustCrate, fetchgit }: +let kernel = stdenv.buildPlatform.parsed.kernel.name; # ... (content skipped) in rec { @@ -122,8 +122,8 @@ following nix file: ``` # Generated by carnix 0.6.5: carnix -o hello.nix --src ./. Cargo.lock --standalone -{ lib, buildPlatform, buildRustCrate, fetchgit }: -let kernel = buildPlatform.parsed.kernel.name; +{ lib, stdenv, buildRustCrate, fetchgit }: +let kernel = stdenv.buildPlatform.parsed.kernel.name; # ... (content skipped) in rec { diff --git a/pkgs/applications/audio/mpg123/default.nix b/pkgs/applications/audio/mpg123/default.nix index 3aef2e35943d..44f1c681ec1a 100644 --- a/pkgs/applications/audio/mpg123/default.nix +++ b/pkgs/applications/audio/mpg123/default.nix @@ -1,6 +1,5 @@ { stdenv , fetchurl, alsaLib -, hostPlatform }: stdenv.mkDerivation rec { @@ -13,8 +12,9 @@ stdenv.mkDerivation rec { buildInputs = stdenv.lib.optional (!stdenv.isDarwin) alsaLib; - configureFlags = - stdenv.lib.optional (hostPlatform ? mpg123) "--with-cpu=${hostPlatform.mpg123.cpu}"; + configureFlags = stdenv.lib.optional + (stdenv.hostPlatform ? mpg123) + "--with-cpu=${stdenv.hostPlatform.mpg123.cpu}"; meta = { description = "Fast console MPEG Audio Player and decoder library"; diff --git a/pkgs/applications/editors/ed/default.nix b/pkgs/applications/editors/ed/default.nix index 832dc3c0e799..536b319cab04 100644 --- a/pkgs/applications/editors/ed/default.nix +++ b/pkgs/applications/editors/ed/default.nix @@ -1,5 +1,4 @@ { stdenv, fetchurl, lzip -, buildPlatform, hostPlatform }: stdenv.mkDerivation (rec { @@ -36,7 +35,7 @@ stdenv.mkDerivation (rec { maintainers = [ ]; platforms = stdenv.lib.platforms.unix; }; -} // stdenv.lib.optionalAttrs (hostPlatform != buildPlatform) { +} // stdenv.lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform) { # This may be moved above during a stdenv rebuild. preConfigure = '' configureFlagsArray+=("CC=$CC") diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix index 067179974b1e..26cd61d182bd 100644 --- a/pkgs/applications/editors/vim/default.nix +++ b/pkgs/applications/editors/vim/default.nix @@ -7,7 +7,6 @@ } # apple frameworks , Carbon, Cocoa -, buildPlatform, hostPlatform }: let @@ -20,12 +19,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gettext pkgconfig ]; buildInputs = [ ncurses ] - ++ stdenv.lib.optionals hostPlatform.isDarwin [ Carbon Cocoa ]; + ++ stdenv.lib.optionals stdenv.hostPlatform.isDarwin [ Carbon Cocoa ]; configureFlags = [ "--enable-multibyte" "--enable-nls" - ] ++ stdenv.lib.optionals (hostPlatform != buildPlatform) [ + ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "vim_cv_toupper_broken=no" "--with-tlib=ncurses" "vim_cv_terminfo=yes" diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix index 893f8d1da6d7..7881741a1cbb 100644 --- a/pkgs/applications/graphics/ImageMagick/7.0.nix +++ b/pkgs/applications/graphics/ImageMagick/7.0.nix @@ -2,7 +2,6 @@ , bzip2, zlib, libX11, libXext, libXt, fontconfig, freetype, ghostscript, libjpeg , lcms2, openexr, libpng, librsvg, libtiff, libxml2, openjpeg, libwebp, libheif , ApplicationServices -, hostPlatform }: let @@ -46,7 +45,7 @@ stdenv.mkDerivation rec { [ "--with-gs-font-dir=${ghostscript}/share/ghostscript/fonts" "--with-gslib" ] - ++ lib.optionals hostPlatform.isMinGW + ++ lib.optionals stdenv.hostPlatform.isMinGW [ "--enable-static" "--disable-shared" ] # due to libxml2 being without DLLs ATM ; @@ -56,13 +55,13 @@ stdenv.mkDerivation rec { [ zlib fontconfig freetype ghostscript libpng libtiff libxml2 libheif ] - ++ lib.optionals (!hostPlatform.isMinGW) + ++ lib.optionals (!stdenv.hostPlatform.isMinGW) [ openexr librsvg openjpeg ] ++ lib.optional stdenv.isDarwin ApplicationServices; propagatedBuildInputs = [ bzip2 freetype libjpeg lcms2 ] - ++ lib.optionals (!hostPlatform.isMinGW) + ++ lib.optionals (!stdenv.hostPlatform.isMinGW) [ libX11 libXext libXt libwebp ] ; diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix index 22d1341f0dcf..5220fdf89813 100644 --- a/pkgs/applications/graphics/ImageMagick/default.nix +++ b/pkgs/applications/graphics/ImageMagick/default.nix @@ -2,7 +2,6 @@ , bzip2, zlib, libX11, libXext, libXt, fontconfig, freetype, ghostscript, libjpeg , lcms2, openexr, libpng, librsvg, libtiff, libxml2, openjpeg, libwebp, fftw, libheif, libde265 , ApplicationServices -, hostPlatform }: let @@ -20,7 +19,7 @@ let } # Freeze version on mingw so we don't need to port the patch too often. # FIXME: This version has multiple security vulnerabilities - // lib.optionalAttrs (hostPlatform.isMinGW) { + // lib.optionalAttrs (stdenv.hostPlatform.isMinGW) { version = "6.9.2-0"; sha256 = "17ir8bw1j7g7srqmsz3rx780sgnc21zfn0kwyj78iazrywldx8h7"; patches = [(fetchpatch { @@ -58,7 +57,7 @@ stdenv.mkDerivation rec { [ "--with-gs-font-dir=${ghostscript}/share/ghostscript/fonts" "--with-gslib" ] - ++ lib.optionals (hostPlatform.isMinGW) + ++ lib.optionals (stdenv.hostPlatform.isMinGW) [ "--enable-static" "--disable-shared" ] # due to libxml2 being without DLLs ATM ; @@ -68,13 +67,13 @@ stdenv.mkDerivation rec { [ zlib fontconfig freetype ghostscript libpng libtiff libxml2 libheif libde265 ] - ++ lib.optionals (!hostPlatform.isMinGW) + ++ lib.optionals (!stdenv.hostPlatform.isMinGW) [ openexr librsvg openjpeg ] ++ lib.optional stdenv.isDarwin ApplicationServices; propagatedBuildInputs = [ bzip2 freetype libjpeg lcms2 fftw ] - ++ lib.optionals (!hostPlatform.isMinGW) + ++ lib.optionals (!stdenv.hostPlatform.isMinGW) [ libX11 libXext libXt libwebp ] ; diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix index b674f1f64580..37431b0fbc44 100644 --- a/pkgs/applications/networking/cluster/minikube/default.nix +++ b/pkgs/applications/networking/cluster/minikube/default.nix @@ -1,5 +1,5 @@ { stdenv, buildGoPackage, fetchFromGitHub, go-bindata, libvirt, qemu -, gpgme, makeWrapper, hostPlatform, vmnet, python +, gpgme, makeWrapper, vmnet, python , docker-machine-kvm, docker-machine-kvm2 , extraDrivers ? [] }: @@ -25,8 +25,8 @@ in buildGoPackage rec { sha256 = "0c36rzsdzxf9q6l4hl506bsd4qwmw033i0k1xhqszv9agg7qjlmm"; }; - buildInputs = [ go-bindata makeWrapper gpgme ] ++ stdenv.lib.optional hostPlatform.isDarwin vmnet; - subPackages = [ "cmd/minikube" ] ++ stdenv.lib.optional hostPlatform.isDarwin "cmd/drivers/hyperkit"; + buildInputs = [ go-bindata makeWrapper gpgme ] ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin vmnet; + subPackages = [ "cmd/minikube" ] ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin "cmd/drivers/hyperkit"; preBuild = '' pushd go/src/${goPackagePath} >/dev/null @@ -56,7 +56,7 @@ in buildGoPackage rec { postFixup = '' wrapProgram $bin/bin/${pname} --prefix PATH : $bin/bin:${stdenv.lib.makeBinPath binPath} - '' + stdenv.lib.optionalString hostPlatform.isDarwin '' + '' + stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' mv $bin/bin/hyperkit $bin/bin/docker-machine-driver-hyperkit ''; diff --git a/pkgs/applications/networking/remote/putty/default.nix b/pkgs/applications/networking/remote/putty/default.nix index e07bf7958f3f..13613774b7c2 100644 --- a/pkgs/applications/networking/remote/putty/default.nix +++ b/pkgs/applications/networking/remote/putty/default.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchurl, autoconf, automake, pkgconfig, libtool +{ stdenv, lib, fetchurl, autoconf, automake, pkgconfig, libtool , gtk2, halibut, ncurses, perl -, hostPlatform, lib }: +}: stdenv.mkDerivation rec { version = "0.70"; @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { sha256 = "1gmhwwj1y7b5hgkrkxpf4jddjpk9l5832zq5ibhsiicndsfs92mv"; }; - preConfigure = lib.optionalString hostPlatform.isUnix '' + preConfigure = lib.optionalString stdenv.hostPlatform.isUnix '' perl mkfiles.pl ( cd doc ; make ); sed -e '/AM_PATH_GTK(/d' \ @@ -22,22 +22,23 @@ stdenv.mkDerivation rec { -e '/AC_OUTPUT/iAM_PROG_AR' -i configure.ac ./mkauto.sh cd unix - '' + lib.optionalString hostPlatform.isWindows '' + '' + lib.optionalString stdenv.hostPlatform.isWindows '' cd windows ''; TOOLPATH = stdenv.cc.targetPrefix; - makefile = if hostPlatform.isWindows then "Makefile.mgw" else null; + makefile = if stdenv.hostPlatform.isWindows then "Makefile.mgw" else null; - installPhase = if hostPlatform.isWindows then '' + installPhase = if stdenv.hostPlatform.isWindows then '' for exe in *.exe; do install -D $exe $out/bin/$exe done '' else null; nativeBuildInputs = [ autoconf automake halibut libtool perl pkgconfig ]; - buildInputs = [] - ++ lib.optionals hostPlatform.isUnix [ gtk2 ncurses ]; + buildInputs = lib.optionals stdenv.hostPlatform.isUnix [ + gtk2 ncurses + ]; enableParallelBuilding = true; meta = with lib; { diff --git a/pkgs/applications/video/omxplayer/default.nix b/pkgs/applications/video/omxplayer/default.nix index 00a419d0a85d..7a130bbdb418 100644 --- a/pkgs/applications/video/omxplayer/default.nix +++ b/pkgs/applications/video/omxplayer/default.nix @@ -1,6 +1,5 @@ { stdenv, fetchurl , raspberrypifw, pcre, boost, freetype, zlib -, hostPlatform }: let @@ -14,7 +13,7 @@ let configurePlatforms = []; configureFlags = [ - "--arch=${hostPlatform.parsed.cpu.name}" + "--arch=${stdenv.hostPlatform.parsed.cpu.name}" ] ++ stdenv.lib.optionals stdenv.hostPlatform.isAarch32 [ # TODO be better with condition "--cpu=arm1176jzf-s" @@ -46,8 +45,8 @@ let "--enable-hardcoded-tables" "--disable-runtime-cpudetect" "--disable-debug" - "--arch=${hostPlatform.parsed.cpu.name}" - "--target_os=${hostPlatform.parsed.kernel.name}" + "--arch=${stdenv.hostPlatform.parsed.cpu.name}" + "--target_os=${stdenv.hostPlatform.parsed.kernel.name}" ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "--cross-prefix=${stdenv.cc.targetPrefix}" "--enable-cross-compile" diff --git a/pkgs/applications/virtualization/vpcs/default.nix b/pkgs/applications/virtualization/vpcs/default.nix index 65435e19366b..3d6efcfc8443 100644 --- a/pkgs/applications/virtualization/vpcs/default.nix +++ b/pkgs/applications/virtualization/vpcs/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, glibc, buildPlatform }: +{ stdenv, fetchurl, glibc }: stdenv.mkDerivation rec { name = "${pname}-${version}"; @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { buildPhase = ''( cd src - ./mk.sh ${buildPlatform.platform.kernelArch} + ./mk.sh ${stdenv.buildPlatform.platform.kernelArch} )''; installPhase = '' diff --git a/pkgs/applications/window-managers/way-cooler/way-cooler.nix b/pkgs/applications/window-managers/way-cooler/way-cooler.nix index 8a740b15500d..d7816be56256 100644 --- a/pkgs/applications/window-managers/way-cooler/way-cooler.nix +++ b/pkgs/applications/window-managers/way-cooler/way-cooler.nix @@ -1,6 +1,6 @@ # Generated by carnix 0.6.5: carnix -o way-cooler.nix Cargo.lock -{ lib, buildPlatform, buildRustCrate, fetchgit }: -let kernel = buildPlatform.parsed.kernel.name; +{ lib, stdenv, buildRustCrate, fetchgit }: +let kernel = stdenv.buildPlatform.parsed.kernel.name; updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions); mapFeatures = features: map (fun: fun { features = features; }); mkFeatures = feat: lib.lists.foldl (features: featureName: diff --git a/pkgs/applications/window-managers/way-cooler/wc-bg.nix b/pkgs/applications/window-managers/way-cooler/wc-bg.nix index c63123db7ccb..4d527715c5f2 100644 --- a/pkgs/applications/window-managers/way-cooler/wc-bg.nix +++ b/pkgs/applications/window-managers/way-cooler/wc-bg.nix @@ -1,6 +1,6 @@ # Generated by carnix 0.6.5: carnix -o wc-bg.nix Cargo.lock -{ lib, buildPlatform, buildRustCrate, fetchgit }: -let kernel = buildPlatform.parsed.kernel.name; +{ lib, stdenv, buildRustCrate, fetchgit }: +let kernel = stdenv.buildPlatform.parsed.kernel.name; updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions); mapFeatures = features: map (fun: fun { features = features; }); mkFeatures = feat: lib.lists.foldl (features: featureName: diff --git a/pkgs/applications/window-managers/way-cooler/wc-grab.nix b/pkgs/applications/window-managers/way-cooler/wc-grab.nix index 947a9653e56d..6f936eb2e432 100644 --- a/pkgs/applications/window-managers/way-cooler/wc-grab.nix +++ b/pkgs/applications/window-managers/way-cooler/wc-grab.nix @@ -1,6 +1,6 @@ # Generated by carnix 0.6.5: carnix -o wc-grab.nix Cargo.lock -{ lib, buildPlatform, buildRustCrate, fetchgit }: -let kernel = buildPlatform.parsed.kernel.name; +{ lib, stdenv, buildRustCrate, fetchgit }: +let kernel = stdenv.hostPlatform.parsed.kernel.name; updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions); mapFeatures = features: map (fun: fun { features = features; }); mkFeatures = feat: lib.lists.foldl (features: featureName: diff --git a/pkgs/applications/window-managers/way-cooler/wc-lock.nix b/pkgs/applications/window-managers/way-cooler/wc-lock.nix index 008df5479ce1..1b9e3df3508e 100644 --- a/pkgs/applications/window-managers/way-cooler/wc-lock.nix +++ b/pkgs/applications/window-managers/way-cooler/wc-lock.nix @@ -1,6 +1,6 @@ # Generated by carnix 0.6.5: carnix -o wc-lock.nix Cargo.lock -{ lib, buildPlatform, buildRustCrate, fetchgit }: -let kernel = buildPlatform.parsed.kernel.name; +{ lib, stdenv, buildRustCrate, fetchgit }: +let kernel = stdenv.hostPlatform.parsed.kernel.name; updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions); mapFeatures = features: map (fun: fun { features = features; }); mkFeatures = feat: lib.lists.foldl (features: featureName: diff --git a/pkgs/build-support/kernel/make-initrd.nix b/pkgs/build-support/kernel/make-initrd.nix index 262bee608edd..22761af158af 100644 --- a/pkgs/build-support/kernel/make-initrd.nix +++ b/pkgs/build-support/kernel/make-initrd.nix @@ -13,14 +13,13 @@ # argument. { stdenv, perl, cpio, contents, compressor, prepend, ubootTools -, hostPlatform }: stdenv.mkDerivation rec { name = "initrd"; builder = ./make-initrd.sh; - makeUInitrd = hostPlatform.platform.kernelTarget == "uImage"; + makeUInitrd = stdenv.hostPlatform.platform.kernelTarget == "uImage"; nativeBuildInputs = [ perl cpio ] ++ stdenv.lib.optional makeUInitrd ubootTools; diff --git a/pkgs/build-support/rust/build-rust-crate.nix b/pkgs/build-support/rust/build-rust-crate.nix index 6c7dd67c4002..6605aa27b21e 100644 --- a/pkgs/build-support/rust/build-rust-crate.nix +++ b/pkgs/build-support/rust/build-rust-crate.nix @@ -4,7 +4,7 @@ # This can be useful for deploying packages with NixOps, and to share # binary dependencies between projects. -{ lib, buildPlatform, stdenv, defaultCrateOverrides, fetchCrate, ncurses, rustc }: +{ lib, stdenv, defaultCrateOverrides, fetchCrate, ncurses, rustc }: let makeDeps = dependencies: (lib.concatMapStringsSep " " (dep: @@ -12,14 +12,14 @@ let makeDeps = dependencies: (if dep.crateType == "lib" then " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}.rlib" else - " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}${buildPlatform.extensions.sharedLibrary}") + " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}${stdenv.hostPlatform.extensions.sharedLibrary}") ) dependencies); # This doesn't appear to be officially documented anywhere yet. # See https://github.com/rust-lang-nursery/rust-forge/issues/101. - target_os = if buildPlatform.isDarwin + target_os = if stdenv.hostPlatform.isDarwin then "macos" - else buildPlatform.parsed.kernel.name; + else stdenv.hostPlatform.parsed.kernel.name; echo_build_heading = colors: '' echo_build_heading() { @@ -106,20 +106,20 @@ let makeDeps = dependencies: export CARGO_PKG_VERSION=${crateVersion} export CARGO_PKG_AUTHORS="${authors}" - export CARGO_CFG_TARGET_ARCH=${buildPlatform.parsed.cpu.name} + export CARGO_CFG_TARGET_ARCH=${stdenv.hostPlatform.parsed.cpu.name} export CARGO_CFG_TARGET_OS=${target_os} export CARGO_CFG_TARGET_FAMILY="unix" export CARGO_CFG_UNIX=1 export CARGO_CFG_TARGET_ENV="gnu" - export CARGO_CFG_TARGET_ENDIAN=${if buildPlatform.parsed.cpu.significantByte.name == "littleEndian" then "little" else "big"} - export CARGO_CFG_TARGET_POINTER_WIDTH=${toString buildPlatform.parsed.cpu.bits} - export CARGO_CFG_TARGET_VENDOR=${buildPlatform.parsed.vendor.name} + export CARGO_CFG_TARGET_ENDIAN=${if stdenv.hostPlatform.parsed.cpu.significantByte.name == "littleEndian" then "little" else "big"} + export CARGO_CFG_TARGET_POINTER_WIDTH=${toString stdenv.hostPlatform.parsed.cpu.bits} + export CARGO_CFG_TARGET_VENDOR=${stdenv.hostPlatform.parsed.vendor.name} export CARGO_MANIFEST_DIR="." export DEBUG="${toString (!release)}" export OPT_LEVEL="${toString optLevel}" - export TARGET="${buildPlatform.config}" - export HOST="${buildPlatform.config}" + export TARGET="${stdenv.hostPlatform.config}" + export HOST="${stdenv.hostPlatform.config}" export PROFILE=${if release then "release" else "debug"} export OUT_DIR=$(pwd)/target/build/${crateName}.out export CARGO_PKG_VERSION_MAJOR=${builtins.elemAt version 0} @@ -218,8 +218,8 @@ let makeDeps = dependencies: $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors} EXTRA_LIB=" --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}.rlib" - if [ -e target/deps/lib$CRATE_NAME-${metadata}${buildPlatform.extensions.sharedLibrary} ]; then - EXTRA_LIB="$EXTRA_LIB --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}${buildPlatform.extensions.sharedLibrary}" + if [ -e target/deps/lib$CRATE_NAME-${metadata}${stdenv.hostPlatform.extensions.sharedLibrary} ]; then + EXTRA_LIB="$EXTRA_LIB --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}${stdenv.hostPlatform.extensions.sharedLibrary}" fi } diff --git a/pkgs/build-support/rust/cargo-vendor/cargo-vendor.nix b/pkgs/build-support/rust/cargo-vendor/cargo-vendor.nix index 486f365f78ac..0779ac0537f6 100644 --- a/pkgs/build-support/rust/cargo-vendor/cargo-vendor.nix +++ b/pkgs/build-support/rust/cargo-vendor/cargo-vendor.nix @@ -1,7 +1,7 @@ # Generated by carnix 0.5.2: carnix Cargo.lock -o cargo-vendor.nix -{ lib, buildPlatform, buildRustCrate }: -let kernel = buildPlatform.parsed.kernel.name; - abi = buildPlatform.parsed.abi.name; +{ lib, stdenv, buildRustCrate }: +let kernel = stdenv.hostPlatform.parsed.kernel.name; + abi = stdenv.hostPlatform.parsed.abi.name; hasFeature = feature: lib.lists.any (originName: feature.${originName}) diff --git a/pkgs/build-support/rust/carnix.nix b/pkgs/build-support/rust/carnix.nix index 22d3fcd0c1fa..0b8b3d60b6c9 100644 --- a/pkgs/build-support/rust/carnix.nix +++ b/pkgs/build-support/rust/carnix.nix @@ -1,7 +1,7 @@ # Generated by carnix 0.7.2: carnix nix -{ lib, buildPlatform, buildRustCrate, fetchgit }: -let kernel = buildPlatform.parsed.kernel.name; - abi = buildPlatform.parsed.abi.name; +{ lib, stdenv, buildRustCrate, fetchgit }: +let kernel = stdenv.hostPlatform.parsed.kernel.name; + abi = stdenv.hostPlatform.parsed.abi.name; updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions); mapFeatures = features: map (fun: fun { features = features; }); mkFeatures = feat: lib.lists.foldl (features: featureName: diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 3e9ddacac1b4..ed185b4be1a2 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -1,7 +1,7 @@ { stdenv, targetPackages, fetchurl, fetchpatch, noSysDirs , langC ? true, langCC ? true, langFortran ? false -, langObjC ? targetPlatform.isDarwin -, langObjCpp ? targetPlatform.isDarwin +, langObjC ? stdenv.targetPlatform.isDarwin +, langObjCpp ? stdenv.targetPlatform.isDarwin , langJava ? false , langGo ? false , profiledCompiler ? false @@ -20,14 +20,14 @@ , libXrandr ? null, libXi ? null, inputproto ? null, randrproto ? null , x11Support ? langJava , enableMultilib ? false -, enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins +, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins , name ? "gcc" , libcCross ? null , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform + stripped ? stdenv.hostPlatform == stdenv.buildPlatform + && stdenv.targetPlatform == stdenv.hostPlatform , gnused ? null -, buildPlatform, hostPlatform, targetPlatform , buildPackages }: @@ -42,7 +42,7 @@ assert cloog != null -> isl != null; assert libelf != null -> zlib != null; # Make sure we get GNU sed. -assert hostPlatform.isDarwin -> gnused != null; +assert stdenv.hostPlatform.isDarwin -> gnused != null; # The go frontend is written in c++ assert langGo -> langCC; @@ -54,6 +54,8 @@ let version = "4.8.5"; enableParallelBuilding = true; + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + patches = [ ] ++ optional enableParallelBuilding ../parallel-bconfig.patch ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix index 9b4444b905de..3f13562c1b8c 100644 --- a/pkgs/development/compilers/gcc/4.9/default.nix +++ b/pkgs/development/compilers/gcc/4.9/default.nix @@ -1,7 +1,7 @@ { stdenv, targetPackages, fetchurl, noSysDirs, fetchpatch , langC ? true, langCC ? true, langFortran ? false -, langObjC ? targetPlatform.isDarwin -, langObjCpp ? targetPlatform.isDarwin +, langObjC ? stdenv.targetPlatform.isDarwin +, langObjCpp ? stdenv.targetPlatform.isDarwin , langJava ? false , langGo ? false , profiledCompiler ? false @@ -20,14 +20,14 @@ , libXrandr ? null, libXi ? null, inputproto ? null, randrproto ? null , x11Support ? langJava , enableMultilib ? false -, enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins +, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins , name ? "gcc" , libcCross ? null , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform + stripped ? stdenv.hostPlatform == stdenv.buildPlatform + && stdenv.targetPlatform == stdenv.hostPlatform , gnused ? null -, buildPlatform, hostPlatform, targetPlatform , buildPackages }: @@ -42,7 +42,7 @@ assert cloog != null -> isl != null; assert libelf != null -> zlib != null; # Make sure we get GNU sed. -assert hostPlatform.isDarwin -> gnused != null; +assert stdenv.hostPlatform.isDarwin -> gnused != null; # The go frontend is written in c++ assert langGo -> langCC; @@ -54,6 +54,8 @@ let version = "4.9.4"; enableParallelBuilding = true; + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + patches = [ ../use-source-date-epoch.patch ] ++ optionals enableParallelBuilding [ ../parallel-bconfig.patch ./parallel-strsignal.patch ] diff --git a/pkgs/development/compilers/gcc/5/default.nix b/pkgs/development/compilers/gcc/5/default.nix index 3fdec1ec3103..497ca40c3ae6 100644 --- a/pkgs/development/compilers/gcc/5/default.nix +++ b/pkgs/development/compilers/gcc/5/default.nix @@ -1,7 +1,7 @@ { stdenv, targetPackages, fetchurl, fetchpatch, noSysDirs , langC ? true, langCC ? true, langFortran ? false -, langObjC ? targetPlatform.isDarwin -, langObjCpp ? targetPlatform.isDarwin +, langObjC ? stdenv.targetPlatform.isDarwin +, langObjCpp ? stdenv.targetPlatform.isDarwin , langJava ? false , langGo ? false , profiledCompiler ? false @@ -20,15 +20,15 @@ , libXrandr ? null, libXi ? null, inputproto ? null, randrproto ? null , x11Support ? langJava , enableMultilib ? false -, enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins +, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins , name ? "gcc" , libcCross ? null , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform + stripped ? stdenv.hostPlatform == stdenv.buildPlatform + && stdenv.targetPlatform == stdenv.hostPlatform , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places -, buildPlatform, hostPlatform, targetPlatform , buildPackages }: @@ -40,7 +40,7 @@ assert langJava -> zip != null && unzip != null assert libelf != null -> zlib != null; # Make sure we get GNU sed. -assert hostPlatform.isDarwin -> gnused != null; +assert stdenv.hostPlatform.isDarwin -> gnused != null; # The go frontend is written in c++ assert langGo -> langCC; @@ -53,6 +53,8 @@ let version = "5.5.0"; enableParallelBuilding = true; + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + patches = [ ../use-source-date-epoch.patch ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix index 099e26375f41..3f5d3172d12f 100644 --- a/pkgs/development/compilers/gcc/6/default.nix +++ b/pkgs/development/compilers/gcc/6/default.nix @@ -1,7 +1,7 @@ { stdenv, targetPackages, fetchurl, noSysDirs , langC ? true, langCC ? true, langFortran ? false -, langObjC ? targetPlatform.isDarwin -, langObjCpp ? targetPlatform.isDarwin +, langObjC ? stdenv.targetPlatform.isDarwin +, langObjCpp ? stdenv.targetPlatform.isDarwin , langJava ? false , langGo ? false , profiledCompiler ? false @@ -20,15 +20,15 @@ , libXrandr ? null, libXi ? null, inputproto ? null, randrproto ? null , x11Support ? langJava , enableMultilib ? false -, enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins +, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins , name ? "gcc" , libcCross ? null , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform + stripped ? stdenv.hostPlatform == stdenv.buildPlatform + && stdenv.targetPlatform == stdenv.hostPlatform , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places -, buildPlatform, hostPlatform, targetPlatform , buildPackages }: @@ -40,7 +40,7 @@ assert langJava -> zip != null && unzip != null assert libelf != null -> zlib != null; # Make sure we get GNU sed. -assert hostPlatform.isDarwin -> gnused != null; +assert stdenv.hostPlatform.isDarwin -> gnused != null; # The go frontend is written in c++ assert langGo -> langCC; @@ -52,6 +52,8 @@ let version = "6.4.0"; enableParallelBuilding = true; + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + patches = [ ../use-source-date-epoch.patch ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix index 60e429cc4da1..30c1611f5fb3 100644 --- a/pkgs/development/compilers/gcc/7/default.nix +++ b/pkgs/development/compilers/gcc/7/default.nix @@ -1,7 +1,7 @@ { stdenv, targetPackages, fetchurl, fetchpatch, noSysDirs , langC ? true, langCC ? true, langFortran ? false -, langObjC ? targetPlatform.isDarwin -, langObjCpp ? targetPlatform.isDarwin +, langObjC ? stdenv.targetPlatform.isDarwin +, langObjCpp ? stdenv.targetPlatform.isDarwin , langGo ? false , profiledCompiler ? false , staticCompiler ? false @@ -13,15 +13,15 @@ , isl ? null # optional, for the Graphite optimization framework. , zlib ? null , enableMultilib ? false -, enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins +, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins , name ? "gcc" , libcCross ? null , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform + stripped ? stdenv.hostPlatform == stdenv.buildPlatform + && stdenv.targetPlatform == stdenv.hostPlatform , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places -, buildPlatform, hostPlatform, targetPlatform , buildPackages }: @@ -29,7 +29,7 @@ assert libelf != null -> zlib != null; # Make sure we get GNU sed. -assert hostPlatform.isDarwin -> gnused != null; +assert stdenv.hostPlatform.isDarwin -> gnused != null; # The go frontend is written in c++ assert langGo -> langCC; @@ -41,6 +41,8 @@ let version = "7.3.0"; enableParallelBuilding = true; + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + patches = [ # https://gcc.gnu.org/ml/gcc-patches/2018-02/msg00633.html ./riscv-pthread-reentrant.patch diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix index a05c1c718128..727cd9cbdbd7 100644 --- a/pkgs/development/compilers/gcc/8/default.nix +++ b/pkgs/development/compilers/gcc/8/default.nix @@ -1,7 +1,7 @@ { stdenv, targetPackages, fetchurl, noSysDirs , langC ? true, langCC ? true, langFortran ? false -, langObjC ? targetPlatform.isDarwin -, langObjCpp ? targetPlatform.isDarwin +, langObjC ? stdenv.targetPlatform.isDarwin +, langObjCpp ? stdenv.targetPlatform.isDarwin , langGo ? false , profiledCompiler ? false , staticCompiler ? false @@ -13,15 +13,15 @@ , isl ? null # optional, for the Graphite optimization framework. , zlib ? null , enableMultilib ? false -, enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins +, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins , name ? "gcc" , libcCross ? null , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform + stripped ? stdenv.hostPlatform == stdenv.buildPlatform + && stdenv.targetPlatform == stdenv.hostPlatform , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places -, buildPlatform, hostPlatform, targetPlatform , buildPackages }: @@ -29,7 +29,7 @@ assert libelf != null -> zlib != null; # Make sure we get GNU sed. -assert hostPlatform.isDarwin -> gnused != null; +assert stdenv.hostPlatform.isDarwin -> gnused != null; # The go frontend is written in c++ assert langGo -> langCC; @@ -41,6 +41,8 @@ let version = "8.2.0"; enableParallelBuilding = true; + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + patches = optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optional noSysDirs ../no-sys-dirs.patch diff --git a/pkgs/development/compilers/gcc/snapshot/default.nix b/pkgs/development/compilers/gcc/snapshot/default.nix index 275b380e90f7..dd6de818117f 100644 --- a/pkgs/development/compilers/gcc/snapshot/default.nix +++ b/pkgs/development/compilers/gcc/snapshot/default.nix @@ -1,7 +1,7 @@ { stdenv, targetPackages, fetchurl, noSysDirs , langC ? true, langCC ? true, langFortran ? false -, langObjC ? targetPlatform.isDarwin -, langObjCpp ? targetPlatform.isDarwin +, langObjC ? stdenv.targetPlatform.isDarwin +, langObjCpp ? stdenv.targetPlatform.isDarwin , langGo ? false , profiledCompiler ? false , staticCompiler ? false @@ -13,16 +13,16 @@ , isl ? null # optional, for the Graphite optimization framework. , zlib ? null , enableMultilib ? false -, enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins +, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins , name ? "gcc" , libcCross ? null , crossStageStatic ? false , # Strip kills static libs of other archs (hence no cross) - stripped ? hostPlatform == buildPlatform && targetPlatform == hostPlatform + stripped ? stdenv.hostPlatform == stdenv.buildPlatform + && stdenv.targetPlatform == stdenv.hostPlatform , gnused ? null , cloog # unused; just for compat with gcc4, as we override the parameter on some places , flex ? null -, buildPlatform, hostPlatform, targetPlatform , buildPackages }: @@ -30,7 +30,7 @@ assert libelf != null -> zlib != null; # Make sure we get GNU sed. -assert hostPlatform.isDarwin -> gnused != null; +assert stdenv.hostPlatform.isDarwin -> gnused != null; # The go frontend is written in c++ assert langGo -> langCC; @@ -42,6 +42,8 @@ let version = "7-20170409"; enableParallelBuilding = true; + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + patches = [ ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch diff --git a/pkgs/development/compilers/ghc/7.10.3.nix b/pkgs/development/compilers/ghc/7.10.3.nix index 0cf3a4cb12b4..9c87d815b4a9 100644 --- a/pkgs/development/compilers/ghc/7.10.3.nix +++ b/pkgs/development/compilers/ghc/7.10.3.nix @@ -1,5 +1,4 @@ { stdenv, targetPackages -, buildPlatform, hostPlatform, targetPlatform # build-tools , bootPkgs, hscolour @@ -8,7 +7,7 @@ , libiconv ? null, ncurses -, useLLVM ? !targetPlatform.isx86 +, useLLVM ? !stdenv.targetPlatform.isx86 , # LLVM is conceptually a run-time-only depedendency, but for # non-x86, we need LLVM to bootstrap later stages, so it becomes a # build-time dependency too. @@ -19,7 +18,7 @@ enableIntegerSimple ? !(gmp.meta.available or false), gmp , # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? targetPlatform != hostPlatform + enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform , # Whether to build dynamic libs for the standard library (on the target # platform). Static libs are always built. @@ -27,10 +26,12 @@ , # What flavour to build. An empty string indicates no # specific flavour and falls back to ghc default values. - ghcFlavour ? stdenv.lib.optionalString (targetPlatform != hostPlatform) "perf-cross" + ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "perf-cross" }: let + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + inherit (bootPkgs) ghc; # TODO(@Ericson2314) Make unconditional diff --git a/pkgs/development/compilers/ghc/8.0.2.nix b/pkgs/development/compilers/ghc/8.0.2.nix index ddd9c27589ac..935d09b57446 100644 --- a/pkgs/development/compilers/ghc/8.0.2.nix +++ b/pkgs/development/compilers/ghc/8.0.2.nix @@ -1,5 +1,4 @@ { stdenv, targetPackages -, buildPlatform, hostPlatform, targetPlatform # build-tools , bootPkgs, hscolour @@ -7,7 +6,7 @@ , libiconv ? null, ncurses -, useLLVM ? !targetPlatform.isx86 +, useLLVM ? !stdenv.targetPlatform.isx86 , # LLVM is conceptually a run-time-only depedendency, but for # non-x86, we need LLVM to bootstrap later stages, so it becomes a # build-time dependency too. @@ -18,7 +17,7 @@ enableIntegerSimple ? !(gmp.meta.available or false), gmp , # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? targetPlatform != hostPlatform + enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform , # Whether to build dynamic libs for the standard library (on the target # platform). Static libs are always built. @@ -26,12 +25,14 @@ , # What flavour to build. An empty string indicates no # specific flavour and falls back to ghc default values. - ghcFlavour ? stdenv.lib.optionalString (targetPlatform != hostPlatform) "perf-cross" + ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "perf-cross" }: assert !enableIntegerSimple -> gmp != null; let + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + inherit (bootPkgs) ghc; # TODO(@Ericson2314) Make unconditional diff --git a/pkgs/development/compilers/ghc/8.2.2.nix b/pkgs/development/compilers/ghc/8.2.2.nix index 79c910e5fd21..cf448d8d849a 100644 --- a/pkgs/development/compilers/ghc/8.2.2.nix +++ b/pkgs/development/compilers/ghc/8.2.2.nix @@ -1,5 +1,4 @@ { stdenv, targetPackages -, buildPlatform, hostPlatform, targetPlatform # build-tools , bootPkgs, alex, happy, hscolour @@ -8,7 +7,7 @@ , libiconv ? null, ncurses -, useLLVM ? !targetPlatform.isx86 || (targetPlatform.isMusl && hostPlatform != targetPlatform) +, useLLVM ? !stdenv.targetPlatform.isx86 || (stdenv.targetPlatform.isMusl && stdenv.hostPlatform != stdenv.targetPlatform) , # LLVM is conceptually a run-time-only depedendency, but for # non-x86, we need LLVM to bootstrap later stages, so it becomes a # build-time dependency too. @@ -19,7 +18,7 @@ enableIntegerSimple ? !(gmp.meta.available or false), gmp , # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? targetPlatform != hostPlatform + enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform , # Whether to build dynamic libs for the standard library (on the target # platform). Static libs are always built. @@ -27,7 +26,7 @@ , # What flavour to build. An empty string indicates no # specific flavour and falls back to ghc default values. - ghcFlavour ? stdenv.lib.optionalString (targetPlatform != hostPlatform) "perf-cross" + ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "perf-cross" , # Whether to backport https://phabricator.haskell.org/D4388 for # deterministic profiling symbol names, at the cost of a slightly # non-standard GHC API @@ -37,6 +36,8 @@ assert !enableIntegerSimple -> gmp != null; let + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + inherit (bootPkgs) ghc; # TODO(@Ericson2314) Make unconditional diff --git a/pkgs/development/compilers/ghc/8.4.3.nix b/pkgs/development/compilers/ghc/8.4.3.nix index f30c8dd8622e..aa9fab184364 100644 --- a/pkgs/development/compilers/ghc/8.4.3.nix +++ b/pkgs/development/compilers/ghc/8.4.3.nix @@ -1,5 +1,4 @@ { stdenv, targetPackages -, buildPlatform, hostPlatform, targetPlatform # build-tools , bootPkgs, alex, happy, hscolour @@ -7,7 +6,7 @@ , libiconv ? null, ncurses -, useLLVM ? !targetPlatform.isx86 || (targetPlatform.isMusl && hostPlatform != targetPlatform) +, useLLVM ? !stdenv.targetPlatform.isx86 || (stdenv.targetPlatform.isMusl && stdenv.hostPlatform != stdenv.targetPlatform) , # LLVM is conceptually a run-time-only depedendency, but for # non-x86, we need LLVM to bootstrap later stages, so it becomes a # build-time dependency too. @@ -18,18 +17,18 @@ enableIntegerSimple ? !(gmp.meta.available or false), gmp , # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? targetPlatform != hostPlatform + enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform , # Whether to build dynamic libs for the standard library (on the target # platform). Static libs are always built. - enableShared ? !targetPlatform.isWindows && !targetPlatform.useiOSPrebuilt + enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt , # Whetherto build terminfo. - enableTerminfo ? !targetPlatform.isWindows + enableTerminfo ? !stdenv.targetPlatform.isWindows , # What flavour to build. An empty string indicates no # specific flavour and falls back to ghc default values. - ghcFlavour ? stdenv.lib.optionalString (targetPlatform != hostPlatform) "perf-cross" + ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "perf-cross" , # Whether to backport https://phabricator.haskell.org/D4388 for # deterministic profiling symbol names, at the cost of a slightly # non-standard GHC API @@ -39,6 +38,8 @@ assert !enableIntegerSimple -> gmp != null; let + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + inherit (bootPkgs) ghc; # TODO(@Ericson2314) Make unconditional diff --git a/pkgs/development/compilers/ghc/8.6.1.nix b/pkgs/development/compilers/ghc/8.6.1.nix index fdb60ce3f2e8..7fcb52969151 100644 --- a/pkgs/development/compilers/ghc/8.6.1.nix +++ b/pkgs/development/compilers/ghc/8.6.1.nix @@ -1,5 +1,4 @@ { stdenv, targetPackages -, buildPlatform, hostPlatform, targetPlatform # build-tools , bootPkgs, alex, happy, hscolour @@ -7,7 +6,7 @@ , libiconv ? null, ncurses -, useLLVM ? !targetPlatform.isx86 || (targetPlatform.isMusl && hostPlatform != targetPlatform) +, useLLVM ? !stdenv.targetPlatform.isx86 || (stdenv.targetPlatform.isMusl && stdenv.hostPlatform != stdenv.targetPlatform) , # LLVM is conceptually a run-time-only depedendency, but for # non-x86, we need LLVM to bootstrap later stages, so it becomes a # build-time dependency too. @@ -18,23 +17,25 @@ enableIntegerSimple ? !(gmp.meta.available or false), gmp , # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? targetPlatform != hostPlatform + enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform , # Whether to build dynamic libs for the standard library (on the target # platform). Static libs are always built. - enableShared ? !targetPlatform.isWindows && !targetPlatform.useiOSPrebuilt + enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useiOSPrebuilt , # Whetherto build terminfo. - enableTerminfo ? !targetPlatform.isWindows + enableTerminfo ? !stdenv.targetPlatform.isWindows , # What flavour to build. An empty string indicates no # specific flavour and falls back to ghc default values. - ghcFlavour ? stdenv.lib.optionalString (targetPlatform != hostPlatform) "perf-cross" + ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "perf-cross" }: assert !enableIntegerSimple -> gmp != null; let + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + inherit (bootPkgs) ghc; # TODO(@Ericson2314) Make unconditional diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix index 2824ce669ee6..ee95bd0f6047 100644 --- a/pkgs/development/compilers/ghc/head.nix +++ b/pkgs/development/compilers/ghc/head.nix @@ -1,5 +1,4 @@ { stdenv, targetPackages -, buildPlatform, hostPlatform, targetPlatform # build-tools , bootPkgs, alex, happy, hscolour @@ -7,7 +6,7 @@ , libiconv ? null, ncurses -, useLLVM ? !targetPlatform.isx86 || (targetPlatform.isMusl && hostPlatform != targetPlatform) +, useLLVM ? !stdenv.targetPlatform.isx86 || (stdenv.targetPlatform.isMusl && stdenv.hostPlatform != stdenv.targetPlatform) , # LLVM is conceptually a run-time-only depedendency, but for # non-x86, we need LLVM to bootstrap later stages, so it becomes a # build-time dependency too. @@ -18,22 +17,24 @@ enableIntegerSimple ? !(gmp.meta.available or false), gmp , # If enabled, use -fPIC when compiling static libs. - enableRelocatedStaticLibs ? targetPlatform != hostPlatform + enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform , # Whether to build dynamic libs for the standard library (on the target # platform). Static libs are always built. - enableShared ? !targetPlatform.isWindows && !targetPlatform.useAndroidPrebuilt + enableShared ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.useAndroidPrebuilt , # Whetherto build terminfo. - enableTerminfo ? !targetPlatform.isWindows + enableTerminfo ? !stdenv.targetPlatform.isWindows , version ? "8.5.20180118" , # What flavour to build. An empty string indicates no # specific flavour and falls back to ghc default values. - ghcFlavour ? stdenv.lib.optionalString (targetPlatform != hostPlatform) "perf-cross" + ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "perf-cross" }: let + inherit (stdenv) buildPlatform hostPlatform targetPlatform; + inherit (bootPkgs) ghc; # TODO(@Ericson2314) Make unconditional diff --git a/pkgs/development/compilers/llvm/3.9/llvm.nix b/pkgs/development/compilers/llvm/3.9/llvm.nix index dfeddf2fe65a..9e7fbbe96c35 100644 --- a/pkgs/development/compilers/llvm/3.9/llvm.nix +++ b/pkgs/development/compilers/llvm/3.9/llvm.nix @@ -13,13 +13,11 @@ , zlib , compiler-rt_src , debugVersion ? false -, enableSharedLibraries ? (buildPlatform == hostPlatform) +, enableSharedLibraries ? (stdenv.buildPlatform == stdenv.hostPlatform) , buildPackages -, buildPlatform -, hostPlatform }: -assert (hostPlatform != buildPlatform) -> !enableSharedLibraries; +assert (stdenv.hostPlatform != stdenv.buildPlatform) -> !enableSharedLibraries; let src = fetch "llvm" "1vi9sf7rx1q04wj479rsvxayb6z740iaz3qniwp266fgp5a07n8z"; @@ -131,7 +129,7 @@ in stdenv.mkDerivation rec { ++ stdenv.lib.optionals (isDarwin) [ "-DLLVM_ENABLE_LIBCXX=ON" "-DCAN_TARGET_i386=false" - ] ++ stdenv.lib.optionals (buildPlatform != hostPlatform) [ + ] ++ stdenv.lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ "-DCMAKE_CROSSCOMPILING=True" "-DLLVM_TABLEGEN=${buildPackages.llvmPackages_39.llvm}/bin/llvm-tblgen" ] ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [ diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix index 23aa750060a3..9c9788ff4834 100644 --- a/pkgs/development/compilers/rust/rustc.nix +++ b/pkgs/development/compilers/rust/rustc.nix @@ -12,7 +12,6 @@ , targetToolchains , doCheck ? true , broken ? false -, buildPlatform, hostPlatform }: let diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix index 0786238040b6..1b33954662db 100644 --- a/pkgs/development/haskell-modules/generic-builder.nix +++ b/pkgs/development/haskell-modules/generic-builder.nix @@ -1,10 +1,9 @@ { stdenv, buildPackages, buildHaskellPackages, ghc , jailbreak-cabal, hscolour, cpphs, nodejs -, buildPlatform, hostPlatform }: let - isCross = buildPlatform != hostPlatform; + isCross = stdenv.buildPlatform != stdenv.hostPlatform; inherit (buildPackages) fetchurl removeReferencesTo pkgconfig coreutils gnugrep gnused glibcLocales; @@ -32,8 +31,8 @@ in , enableSharedExecutables ? false , enableSharedLibraries ? (ghc.enableShared or false) , enableDeadCodeElimination ? (!stdenv.isDarwin) # TODO: use -dead_strip for darwin -, enableStaticLibraries ? !hostPlatform.isWindows -, enableHsc2hsViaAsm ? hostPlatform.isWindows && stdenv.lib.versionAtLeast ghc.version "8.4" +, enableStaticLibraries ? !stdenv.hostPlatform.isWindows +, enableHsc2hsViaAsm ? stdenv.hostPlatform.isWindows && stdenv.lib.versionAtLeast ghc.version "8.4" , extraLibraries ? [], librarySystemDepends ? [], executableSystemDepends ? [] # On macOS, statically linking against system frameworks is not supported; # see https://developer.apple.com/library/content/qa/qa1118/_index.html @@ -79,7 +78,7 @@ assert editedCabalFile != null -> revision != null; # --enable-static does not work on windows. This is a bug in GHC. # --enable-static will pass -staticlib to ghc, which only works for mach-o and elf. -assert hostPlatform.isWindows -> enableStaticLibraries == false; +assert stdenv.hostPlatform.isWindows -> enableStaticLibraries == false; let @@ -144,7 +143,7 @@ let (optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names") (optionalString enableParallelBuilding "--ghc-option=-j$NIX_BUILD_CORES") (optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp") - (enableFeature (enableDeadCodeElimination && !hostPlatform.isAarch32 && !hostPlatform.isAarch64 && (versionAtLeast "8.0.1" ghc.version)) "split-objs") + (enableFeature (enableDeadCodeElimination && !stdenv.hostPlatform.isAarch32 && !stdenv.hostPlatform.isAarch64 && (versionAtLeast "8.0.1" ghc.version)) "split-objs") (enableFeature enableLibraryProfiling "library-profiling") (optionalString ((enableExecutableProfiling || enableLibraryProfiling) && versionOlder "8" ghc.version) "--profiling-detail=${profilingDetail}") (enableFeature enableExecutableProfiling (if versionOlder ghc.version "8" then "executable-profiling" else "profiling")) @@ -163,7 +162,7 @@ let ] ++ optionals isGhcjs [ "--ghcjs" ] ++ optionals isCross ([ - "--configure-option=--host=${hostPlatform.config}" + "--configure-option=--host=${stdenv.hostPlatform.config}" ] ++ crossCabalFlags); setupCompileFlags = [ @@ -285,7 +284,7 @@ stdenv.mkDerivation ({ fi '' # It is not clear why --extra-framework-dirs does work fine on Linux - + optionalString (!buildPlatform.isDarwin || versionAtLeast nativeGhc.version "8.0") '' + + optionalString (!stdenv.buildPlatform.isDarwin || versionAtLeast nativeGhc.version "8.0") '' if [[ -d "$p/Library/Frameworks" ]]; then configureFlags+=" --extra-framework-dirs=$p/Library/Frameworks" fi @@ -486,5 +485,5 @@ stdenv.mkDerivation ({ // optionalAttrs (postFixup != "") { inherit postFixup; } // optionalAttrs (dontStrip) { inherit dontStrip; } // optionalAttrs (hardeningDisable != []) { inherit hardeningDisable; } -// optionalAttrs (buildPlatform.libc == "glibc"){ LOCALE_ARCHIVE = "${glibcLocales}/lib/locale/locale-archive"; } +// optionalAttrs (stdenv.buildPlatform.libc == "glibc"){ LOCALE_ARCHIVE = "${glibcLocales}/lib/locale/locale-archive"; } ) diff --git a/pkgs/development/haskell-modules/with-packages-wrapper.nix b/pkgs/development/haskell-modules/with-packages-wrapper.nix index 1a29732b651a..49beed8549db 100644 --- a/pkgs/development/haskell-modules/with-packages-wrapper.nix +++ b/pkgs/development/haskell-modules/with-packages-wrapper.nix @@ -1,4 +1,4 @@ -{ lib, targetPlatform, ghc, llvmPackages, packages, symlinkJoin, makeWrapper +{ lib, stdenv, ghc, llvmPackages, packages, symlinkJoin, makeWrapper , withLLVM ? false , postBuild ? "" , ghcLibdir ? null # only used by ghcjs, when resolving plugins @@ -48,7 +48,7 @@ let # https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/codegens.html#llvm-code-generator-fllvm llvm = lib.makeBinPath ([ llvmPackages.llvm ] - ++ lib.optional targetPlatform.isDarwin llvmPackages.clang); + ++ lib.optional stdenv.targetPlatform.isDarwin llvmPackages.clang); in if paths == [] && !withLLVM then ghc else symlinkJoin { @@ -105,7 +105,7 @@ symlinkJoin { --set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}" fi - '' + (lib.optionalString (targetPlatform.isDarwin && !isGhcjs && !targetPlatform.isiOS) '' + '' + (lib.optionalString (stdenv.targetPlatform.isDarwin && !isGhcjs && !stdenv.targetPlatform.isiOS) '' # Work around a linker limit in macOS Sierra (see generic-builder.nix): local packageConfDir="$out/lib/${ghc.name}/package.conf.d"; local dynamicLinksDir="$out/lib/links" diff --git a/pkgs/development/interpreters/guile/1.8.nix b/pkgs/development/interpreters/guile/1.8.nix index 53db5949f02b..13a0d45dbe41 100644 --- a/pkgs/development/interpreters/guile/1.8.nix +++ b/pkgs/development/interpreters/guile/1.8.nix @@ -1,5 +1,4 @@ { stdenv, buildPackages -, buildPlatform, hostPlatform , fetchurl, makeWrapper, gawk, pkgconfig , libtool, readline, gmp }: @@ -23,7 +22,7 @@ stdenv.mkDerivation rec { "--with-threads=no"; depsBuildBuild = [ buildPackages.stdenv.cc ] - ++ stdenv.lib.optional (hostPlatform != buildPlatform) + ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) buildPackages.buildPackages.guile_1_8; nativeBuildInputs = [ makeWrapper gawk pkgconfig ]; buildInputs = [ readline libtool ]; diff --git a/pkgs/development/interpreters/guile/2.0.nix b/pkgs/development/interpreters/guile/2.0.nix index 848b8666f27d..ea34fd61f3b7 100644 --- a/pkgs/development/interpreters/guile/2.0.nix +++ b/pkgs/development/interpreters/guile/2.0.nix @@ -1,5 +1,4 @@ { stdenv, buildPackages -, buildPlatform, hostPlatform , fetchpatch, fetchurl, makeWrapper, gawk, pkgconfig , libffi, libtool, readline, gmp, boehmgc, libunistring , coverageAnalysis ? null @@ -22,7 +21,7 @@ setOutputFlags = false; # $dev gets into the library otherwise depsBuildBuild = [ buildPackages.stdenv.cc ] - ++ stdenv.lib.optional (hostPlatform != buildPlatform) + ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) buildPackages.buildPackages.guile_2_0; nativeBuildInputs = [ makeWrapper gawk pkgconfig ]; buildInputs = [ readline libtool libunistring libffi ]; diff --git a/pkgs/development/interpreters/guile/default.nix b/pkgs/development/interpreters/guile/default.nix index 8110598e1730..aacc5dc49a10 100644 --- a/pkgs/development/interpreters/guile/default.nix +++ b/pkgs/development/interpreters/guile/default.nix @@ -1,5 +1,4 @@ { stdenv, buildPackages -, buildPlatform, hostPlatform , fetchurl, makeWrapper, gawk, pkgconfig , libffi, libtool, readline, gmp, boehmgc, libunistring , coverageAnalysis ? null @@ -23,7 +22,7 @@ setOutputFlags = false; # $dev gets into the library otherwise depsBuildBuild = [ buildPackages.stdenv.cc ] - ++ stdenv.lib.optional (hostPlatform != buildPlatform) + ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) buildPackages.buildPackages.guile; nativeBuildInputs = [ makeWrapper gawk pkgconfig ]; buildInputs = [ readline libtool libunistring libffi ]; diff --git a/pkgs/development/interpreters/python/cpython/2.7/default.nix b/pkgs/development/interpreters/python/cpython/2.7/default.nix index fd84d924d7b8..df8e6ebf89ff 100644 --- a/pkgs/development/interpreters/python/cpython/2.7/default.nix +++ b/pkgs/development/interpreters/python/cpython/2.7/default.nix @@ -1,4 +1,4 @@ -{ stdenv, hostPlatform, buildPlatform, buildPackages, fetchurl +{ stdenv, buildPackages, fetchurl , bzip2 , gdbm , fetchpatch @@ -85,7 +85,7 @@ let # libuuid, slowing down program startup a lot). ./no-ldconfig.patch - ] ++ optionals hostPlatform.isCygwin [ + ] ++ optionals stdenv.hostPlatform.isCygwin [ ./2.5.2-ctypes-util-find_library.patch ./2.5.2-tkinter-x11.patch ./2.6.2-ssl-threads.patch @@ -125,14 +125,14 @@ let "--enable-shared" "--with-threads" "--enable-unicode=ucs${toString ucsEncoding}" - ] ++ optionals (hostPlatform.isCygwin || hostPlatform.isAarch64) [ + ] ++ optionals (stdenv.hostPlatform.isCygwin || stdenv.hostPlatform.isAarch64) [ "--with-system-ffi" - ] ++ optionals hostPlatform.isCygwin [ + ] ++ optionals stdenv.hostPlatform.isCygwin [ "--with-system-expat" "ac_cv_func_bind_textdomain_codeset=yes" ] ++ optionals stdenv.isDarwin [ "--disable-toolbox-glue" - ] ++ optionals (hostPlatform != buildPlatform) [ + ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "PYTHON_FOR_BUILD=${getBin buildPackages.python}/bin/python" "ac_cv_buggy_getaddrinfo=no" # Assume little-endian IEEE 754 floating point when cross compiling @@ -157,18 +157,18 @@ let ] # Never even try to use lchmod on linux, # don't rely on detecting glibc-isms. - ++ optional hostPlatform.isLinux "ac_cv_func_lchmod=no"; + ++ optional stdenv.hostPlatform.isLinux "ac_cv_func_lchmod=no"; buildInputs = optional (stdenv ? cc && stdenv.cc.libc != null) stdenv.cc.libc ++ [ bzip2 openssl zlib ] - ++ optional (hostPlatform.isCygwin || hostPlatform.isAarch64) libffi - ++ optional hostPlatform.isCygwin expat + ++ optional (stdenv.hostPlatform.isCygwin || stdenv.hostPlatform.isAarch64) libffi + ++ optional stdenv.hostPlatform.isCygwin expat ++ [ db gdbm ncurses sqlite readline ] ++ optionals x11Support [ tcl tk xlibsWrapper libX11 ] ++ optionals stdenv.isDarwin ([ CF ] ++ optional (configd != null) configd); nativeBuildInputs = - optionals (hostPlatform != buildPlatform) + optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ buildPackages.stdenv.cc buildPackages.python ]; mkPaths = paths: { @@ -190,7 +190,7 @@ in stdenv.mkDerivation { inherit (mkPaths buildInputs) C_INCLUDE_PATH LIBRARY_PATH; NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-msse2" - + optionalString hostPlatform.isMusl " -DTHREAD_STACK_SIZE=0x100000"; + + optionalString stdenv.hostPlatform.isMusl " -DTHREAD_STACK_SIZE=0x100000"; DETERMINISTIC_BUILD = 1; setupHook = python-setup-hook sitePackages; @@ -235,7 +235,7 @@ in stdenv.mkDerivation { find $out -name "*.py" | $out/bin/python -m compileall -q -f -x "lib2to3" -i - find $out -name "*.py" | $out/bin/python -O -m compileall -q -f -x "lib2to3" -i - find $out -name "*.py" | $out/bin/python -OO -m compileall -q -f -x "lib2to3" -i - - '' + optionalString hostPlatform.isCygwin '' + '' + optionalString stdenv.hostPlatform.isCygwin '' cp libpython2.7.dll.a $out/lib ''; diff --git a/pkgs/development/libraries/SDL/default.nix b/pkgs/development/libraries/SDL/default.nix index c7e4a9c29ac8..7bbb1a5e1c92 100644 --- a/pkgs/development/libraries/SDL/default.nix +++ b/pkgs/development/libraries/SDL/default.nix @@ -1,10 +1,9 @@ { stdenv, lib, fetchurl, fetchpatch, pkgconfig, audiofile, libcap, libiconv , openglSupport ? false, libGL, libGLU , alsaSupport ? true, alsaLib -, x11Support ? hostPlatform == buildPlatform, libXext, libICE, libXrandr +, x11Support ? stdenv.hostPlatform == stdenv.buildPlatform, libXext, libICE, libXrandr , pulseaudioSupport ? true, libpulseaudio , OpenGL, CoreAudio, CoreServices, AudioUnit, Kernel, Cocoa -, hostPlatform, buildPlatform }: # NOTE: When editing this expression see if the same change applies to @@ -41,7 +40,7 @@ stdenv.mkDerivation rec { ++ optional stdenv.isDarwin Cocoa; buildInputs = [ ] - ++ optional (!hostPlatform.isMinGW) audiofile + ++ optional (!stdenv.hostPlatform.isMinGW) audiofile ++ optionals stdenv.isDarwin [ AudioUnit CoreAudio CoreServices Kernel OpenGL ]; configureFlags = [ diff --git a/pkgs/development/libraries/attr/default.nix b/pkgs/development/libraries/attr/default.nix index 96fe5b89a18c..944f33b7a3f9 100644 --- a/pkgs/development/libraries/attr/default.nix +++ b/pkgs/development/libraries/attr/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, gettext, hostPlatform }: +{ stdenv, fetchurl, gettext }: stdenv.mkDerivation rec { name = "attr-2.4.47"; @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { installTargets = [ "install" "install-lib" "install-dev" ]; - patches = if (hostPlatform.libc == "musl") then [ ./fix-headers-musl.patch ] else null; + patches = if (stdenv.hostPlatform.libc == "musl") then [ ./fix-headers-musl.patch ] else null; postPatch = '' for script in install-sh include/install-sh; do diff --git a/pkgs/development/libraries/boehm-gc/default.nix b/pkgs/development/libraries/boehm-gc/default.nix index c11d6689624d..da71e40187f4 100644 --- a/pkgs/development/libraries/boehm-gc/default.nix +++ b/pkgs/development/libraries/boehm-gc/default.nix @@ -1,6 +1,5 @@ { lib, stdenv, fetchurl, fetchpatch, pkgconfig, libatomic_ops , enableLargeConfig ? false # doc: https://github.com/ivmai/bdwgc/blob/v7.6.6/doc/README.macros#L179 -, buildPlatform, hostPlatform }: stdenv.mkDerivation rec { @@ -30,7 +29,7 @@ stdenv.mkDerivation rec { sha256 = "1gydwlklvci30f5dpp5ccw2p2qpph5y41r55wx9idamjlq66fbb3"; }) ] ++ # https://github.com/ivmai/bdwgc/pull/208 - lib.optional hostPlatform.isRiscV ./riscv.patch; + lib.optional stdenv.hostPlatform.isRiscV ./riscv.patch; configureFlags = [ "--enable-cplusplus" ] @@ -40,7 +39,7 @@ stdenv.mkDerivation rec { doCheck = true; # not cross; # Don't run the native `strip' when cross-compiling. - dontStrip = hostPlatform != buildPlatform; + dontStrip = stdenv.hostPlatform != stdenv.buildPlatform; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/boost/1.66.nix b/pkgs/development/libraries/boost/1.66.nix index 932ebdcb463a..e8321c802359 100644 --- a/pkgs/development/libraries/boost/1.66.nix +++ b/pkgs/development/libraries/boost/1.66.nix @@ -1,4 +1,4 @@ -{ stdenv, callPackage, fetchurl, hostPlatform, buildPlatform, ... } @ args: +{ stdenv, callPackage, fetchurl, ... } @ args: callPackage ./generic.nix (args // rec { version = "1.66_0"; diff --git a/pkgs/development/libraries/boost/1.67.nix b/pkgs/development/libraries/boost/1.67.nix index 150272df6ca3..0f341217dcab 100644 --- a/pkgs/development/libraries/boost/1.67.nix +++ b/pkgs/development/libraries/boost/1.67.nix @@ -1,4 +1,4 @@ -{ stdenv, callPackage, fetchurl, fetchpatch, hostPlatform, buildPlatform, ... } @ args: +{ stdenv, callPackage, fetchurl, fetchpatch, ... } @ args: callPackage ./generic.nix (args // rec { version = "1.67_0"; diff --git a/pkgs/development/libraries/boost/1.68.nix b/pkgs/development/libraries/boost/1.68.nix index 081b105e2d20..97879051a67c 100644 --- a/pkgs/development/libraries/boost/1.68.nix +++ b/pkgs/development/libraries/boost/1.68.nix @@ -1,4 +1,4 @@ -{ stdenv, callPackage, fetchurl, fetchpatch, hostPlatform, buildPlatform, ... } @ args: +{ stdenv, callPackage, fetchurl, fetchpatch, ... } @ args: callPackage ./generic.nix (args // rec { version = "1.68_0"; diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix index dab6fac6f0cc..617484e5a403 100644 --- a/pkgs/development/libraries/boost/generic.nix +++ b/pkgs/development/libraries/boost/generic.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, icu, expat, zlib, bzip2, python, fixDarwinDylibNames, libiconv , which -, buildPackages, buildPlatform, hostPlatform +, buildPackages , toolset ? /**/ if stdenv.cc.isClang then "clang" else null , enableRelease ? true , enableDebug ? false , enableSingleThreaded ? false , enableMultiThreaded ? true -, enableShared ? !(hostPlatform.libc == "msvcrt") # problems for now +, enableShared ? !(stdenv.hostPlatform.libc == "msvcrt") # problems for now , enableStatic ? !enableShared , enablePython ? false , enableNumpy ? false @@ -24,7 +24,7 @@ assert enableShared || enableStatic; # Python isn't supported when cross-compiling -assert enablePython -> hostPlatform == buildPlatform; +assert enablePython -> stdenv.hostPlatform == stdenv.buildPlatform; assert enableNumpy -> enablePython; with stdenv.lib; @@ -59,23 +59,23 @@ let "-sEXPAT_LIBPATH=${expat.out}/lib" # TODO: make this unconditional - ] ++ optionals (hostPlatform != buildPlatform) [ - "address-model=${toString hostPlatform.parsed.cpu.bits}" - "architecture=${toString hostPlatform.parsed.cpu.family}" - "binary-format=${toString hostPlatform.parsed.kernel.execFormat.name}" - "target-os=${toString hostPlatform.parsed.kernel.name}" + ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ + "address-model=${toString stdenv.hostPlatform.parsed.cpu.bits}" + "architecture=${toString stdenv.hostPlatform.parsed.cpu.family}" + "binary-format=${toString stdenv.hostPlatform.parsed.kernel.execFormat.name}" + "target-os=${toString stdenv.hostPlatform.parsed.kernel.name}" # adapted from table in boost manual # https://www.boost.org/doc/libs/1_66_0/libs/context/doc/html/context/architectures.html - "abi=${if hostPlatform.parsed.cpu.family == "arm" then "aapcs" - else if hostPlatform.isWindows then "ms" - else if hostPlatform.isMips then "o32" + "abi=${if stdenv.hostPlatform.parsed.cpu.family == "arm" then "aapcs" + else if stdenv.hostPlatform.isWindows then "ms" + else if stdenv.hostPlatform.isMips then "o32" else "sysv"}" ] ++ optional (link != "static") "runtime-link=${runtime-link}" ++ optional (variant == "release") "debug-symbols=off" ++ optional (toolset != null) "toolset=${toolset}" - ++ optional (mpi != null || hostPlatform != buildPlatform) "--user-config=user-config.jam" - ++ optionals (hostPlatform.libc == "msvcrt") [ + ++ optional (mpi != null || stdenv.hostPlatform != stdenv.buildPlatform) "--user-config=user-config.jam" + ++ optionals (stdenv.hostPlatform.libc == "msvcrt") [ "threadapi=win32" ]); @@ -86,10 +86,10 @@ stdenv.mkDerivation { inherit src; - patchFlags = optionalString (hostPlatform.libc == "msvcrt") "-p0"; + patchFlags = optionalString (stdenv.hostPlatform.libc == "msvcrt") "-p0"; patches = patches ++ optional stdenv.isDarwin ./darwin-no-system-python.patch - ++ optional (hostPlatform.libc == "msvcrt") (fetchurl { + ++ optional (stdenv.hostPlatform.libc == "msvcrt") (fetchurl { url = "https://svn.boost.org/trac/boost/raw-attachment/tickaet/7262/" + "boost-mingw.patch"; sha256 = "0s32kwll66k50w6r5np1y5g907b7lcpsjhfgr7rsw7q5syhzddyj"; @@ -113,7 +113,7 @@ stdenv.mkDerivation { cat << EOF >> user-config.jam using mpi : ${mpi}/bin/mpiCC ; EOF - '' + optionalString (hostPlatform != buildPlatform) '' + '' + optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' cat << EOF >> user-config.jam using gcc : cross : ${stdenv.cc.targetPrefix}c++ ; EOF @@ -126,7 +126,7 @@ stdenv.mkDerivation { nativeBuildInputs = [ which buildPackages.stdenv.cc ]; buildInputs = [ expat zlib bzip2 libiconv ] - ++ optional (hostPlatform == buildPlatform) icu + ++ optional (stdenv.hostPlatform == stdenv.buildPlatform) icu ++ optional stdenv.isDarwin fixDarwinDylibNames ++ optional enablePython python ++ optional enableNumpy python.pkgs.numpy; @@ -137,7 +137,7 @@ stdenv.mkDerivation { "--includedir=$(dev)/include" "--libdir=$(out)/lib" ] ++ optional enablePython "--with-python=${python.interpreter}" - ++ [ (if hostPlatform == buildPlatform then "--with-icu=${icu.dev}" else "--without-icu") ] + ++ [ (if stdenv.hostPlatform == stdenv.buildPlatform then "--with-icu=${icu.dev}" else "--without-icu") ] ++ optional (toolset != null) "--with-toolset=${toolset}"; buildPhase = '' @@ -157,7 +157,7 @@ stdenv.mkDerivation { # Make boost header paths relative so that they are not runtime dependencies cd "$dev" && find include \( -name '*.hpp' -or -name '*.h' -or -name '*.ipp' \) \ -exec sed '1i#line 1 "{}"' -i '{}' \; - '' + optionalString (hostPlatform.libc == "msvcrt") '' + '' + optionalString (stdenv.hostPlatform.libc == "msvcrt") '' $RANLIB "$out/lib/"*.a ''; diff --git a/pkgs/development/libraries/c-ares/default.nix b/pkgs/development/libraries/c-ares/default.nix index 176245491179..1835356e627d 100644 --- a/pkgs/development/libraries/c-ares/default.nix +++ b/pkgs/development/libraries/c-ares/default.nix @@ -1,4 +1,4 @@ -{ targetPlatform, stdenv, fetchurl, writeTextDir }: +{ stdenv, fetchurl, writeTextDir }: let self = stdenv.mkDerivation rec { @@ -40,8 +40,8 @@ stdenv.mkDerivation rec { ) set_property(TARGET c-ares::cares APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) set_target_properties(c-ares::cares PROPERTIES - IMPORTED_LOCATION_RELEASE "${self}/lib/libcares${targetPlatform.extensions.sharedLibrary}" - IMPORTED_SONAME_RELEASE "libcares${targetPlatform.extensions.sharedLibrary}" + IMPORTED_LOCATION_RELEASE "${self}/lib/libcares${stdenv.targetPlatform.extensions.sharedLibrary}" + IMPORTED_SONAME_RELEASE "libcares${stdenv.targetPlatform.extensions.sharedLibrary}" ) add_library(c-ares::cares_shared INTERFACE IMPORTED) set_target_properties(c-ares::cares_shared PROPERTIES INTERFACE_LINK_LIBRARIES "c-ares::cares") diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix index e413e29e7ca1..4c1ad34f6da3 100644 --- a/pkgs/development/libraries/ffmpeg-full/default.nix +++ b/pkgs/development/libraries/ffmpeg-full/default.nix @@ -1,5 +1,4 @@ { stdenv, fetchurl, pkgconfig, perl, texinfo, yasm -, hostPlatform /* * Licensing options (yes some are listed twice, filters and such are not listed) */ @@ -253,8 +252,8 @@ stdenv.mkDerivation rec { configurePlatforms = []; configureFlags = [ - "--target_os=${hostPlatform.parsed.kernel.name}" - "--arch=${hostPlatform.parsed.cpu.name}" + "--target_os=${stdenv.hostPlatform.parsed.kernel.name}" + "--arch=${stdenv.hostPlatform.parsed.cpu.name}" /* * Licensing flags */ diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 4bb995ff0743..7d72de2a2ded 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -2,7 +2,6 @@ , alsaLib, bzip2, fontconfig, freetype, gnutls, libiconv, lame, libass, libogg , libtheora, libva, libvorbis, libvpx, lzma, libpulseaudio, soxr , x264, x265, xvidcore, zlib, libopus -, hostPlatform , openglSupport ? false, libGLU_combined ? null # Build options , runtimeCpuDetectBuild ? true # Detect CPU capabilities at runtime @@ -83,8 +82,8 @@ stdenv.mkDerivation rec { configurePlatforms = []; configureFlags = [ - "--arch=${hostPlatform.parsed.cpu.name}" - "--target_os=${hostPlatform.parsed.kernel.name}" + "--arch=${stdenv.hostPlatform.parsed.cpu.name}" + "--target_os=${stdenv.hostPlatform.parsed.kernel.name}" # License "--enable-gpl" "--enable-version3" diff --git a/pkgs/development/libraries/fontconfig/2.10.nix b/pkgs/development/libraries/fontconfig/2.10.nix index eae93d96f453..1d66735569d5 100644 --- a/pkgs/development/libraries/fontconfig/2.10.nix +++ b/pkgs/development/libraries/fontconfig/2.10.nix @@ -1,5 +1,4 @@ { stdenv, fetchurl, pkgconfig, freetype, expat -, hostPlatform }: stdenv.mkDerivation rec { @@ -17,13 +16,13 @@ stdenv.mkDerivation rec { buildInputs = [ expat ]; configureFlags = [ - "--with-arch=${hostPlatform.parsed.cpu.name}" + "--with-arch=${stdenv.hostPlatform.parsed.cpu.name}" "--sysconfdir=/etc" "--with-cache-dir=/var/cache/fontconfig" "--disable-docs" "--with-default-fonts=" ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ - "--with-arch=${hostPlatform.parsed.cpu.name}" + "--with-arch=${stdenv.hostPlatform.parsed.cpu.name}" ]; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix index 01c4140f3b5c..1a028526726c 100644 --- a/pkgs/development/libraries/fontconfig/default.nix +++ b/pkgs/development/libraries/fontconfig/default.nix @@ -1,6 +1,5 @@ { stdenv, substituteAll, fetchurl , pkgconfig, freetype, expat, libxslt, gperf, dejavu_fonts -, hostPlatform }: /** Font configuration scheme @@ -40,13 +39,13 @@ stdenv.mkDerivation rec { buildInputs = [ expat ]; configureFlags = [ - "--with-arch=${hostPlatform.parsed.cpu.name}" + "--with-arch=${stdenv.hostPlatform.parsed.cpu.name}" "--with-cache-dir=/var/cache/fontconfig" # otherwise the fallback is in $out/ "--disable-docs" # just <1MB; this is what you get when loading config fails for some reason "--with-default-fonts=${dejavu_fonts.minimal}" ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ - "--with-arch=${hostPlatform.parsed.cpu.name}" + "--with-arch=${stdenv.hostPlatform.parsed.cpu.name}" ]; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/gcc/libgcc/default.nix b/pkgs/development/libraries/gcc/libgcc/default.nix index 0a29ab6927f7..d638c2bb2788 100644 --- a/pkgs/development/libraries/gcc/libgcc/default.nix +++ b/pkgs/development/libraries/gcc/libgcc/default.nix @@ -1,4 +1,4 @@ -{ stdenvNoLibs, buildPackages, buildPlatform, hostPlatform +{ stdenvNoLibs, buildPackages , gcc, glibc , libiberty }: @@ -29,8 +29,8 @@ stdenvNoLibs.mkDerivation rec { # Drop in libiberty, as external builds are not expected + '' ( - mkdir -p build-${buildPlatform.config}/libiberty/ - cd build-${buildPlatform.config}/libiberty/ + mkdir -p build-${stdenvNoLibs.buildPlatform.config}/libiberty/ + cd build-${stdenvNoLibs.buildPlatform.config}/libiberty/ ln -s ${buildPackages.libiberty}/lib/libiberty.a ./ ) '' @@ -83,8 +83,8 @@ stdenvNoLibs.mkDerivation rec { '' # Preparing to configure + build libgcc itself + '' - mkdir -p "$buildRoot/gcc/${hostPlatform.config}/libgcc" - cd "$buildRoot/gcc/${hostPlatform.config}/libgcc" + mkdir -p "$buildRoot/gcc/${stdenvNoLibs.hostPlatform.config}/libgcc" + cd "$buildRoot/gcc/${stdenvNoLibs.hostPlatform.config}/libgcc" configureScript=$sourceRoot/configure chmod +x "$configureScript" @@ -107,9 +107,9 @@ stdenvNoLibs.mkDerivation rec { ''; gccConfigureFlags = [ - "--build=${buildPlatform.config}" - "--host=${buildPlatform.config}" - "--target=${hostPlatform.config}" + "--build=${stdenvNoLibs.buildPlatform.config}" + "--host=${stdenvNoLibs.buildPlatform.config}" + "--target=${stdenvNoLibs.hostPlatform.config}" "--disable-bootstrap" "--disable-multilib" "--with-multilib-list=" @@ -128,7 +128,7 @@ stdenvNoLibs.mkDerivation rec { "--disable-vtable-verify" "--with-system-zlib" - ] ++ stdenvNoLibs.lib.optional (hostPlatform.libc == "glibc") + ] ++ stdenvNoLibs.lib.optional (stdenvNoLibs.hostPlatform.libc == "glibc") "--with-glibc-version=${glibc.version}"; configurePlatforms = [ "build" "host" ]; @@ -144,9 +144,9 @@ stdenvNoLibs.mkDerivation rec { makeFlags = [ "MULTIBUILDTOP:=../" ]; postInstall = '' - moveToOutput "lib/gcc/${hostPlatform.config}/${version}/include" "$dev" + moveToOutput "lib/gcc/${stdenvNoLibs.hostPlatform.config}/${version}/include" "$dev" mkdir -p "$out/lib" "$dev/include" - ln -s "$out/lib/gcc/${hostPlatform.config}/${version}"/* "$out/lib" - ln -s "$dev/lib/gcc/${hostPlatform.config}/${version}/include"/* "$dev/include/" + ln -s "$out/lib/gcc/${stdenvNoLibs.hostPlatform.config}/${version}"/* "$out/lib" + ln -s "$dev/lib/gcc/${stdenvNoLibs.hostPlatform.config}/${version}/include"/* "$dev/include/" ''; } diff --git a/pkgs/development/libraries/gdbm/default.nix b/pkgs/development/libraries/gdbm/default.nix index bbebcca6e2f0..685775e2918d 100644 --- a/pkgs/development/libraries/gdbm/default.nix +++ b/pkgs/development/libraries/gdbm/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, buildPlatform, fetchurl }: +{ stdenv, lib, fetchurl }: stdenv.mkDerivation rec { name = "gdbm-1.17"; @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { # Disable dbmfetch03.at test because it depends on unlink() # failing on a link in a chmod -w directory, which cygwin # apparently allows. - postPatch = lib.optionalString buildPlatform.isCygwin '' + postPatch = lib.optionalString stdenv.buildPlatform.isCygwin '' substituteInPlace tests/Makefile.in --replace \ '_LDADD = ../src/libgdbm.la ../compat/libgdbm_compat.la' \ '_LDADD = ../compat/libgdbm_compat.la ../src/libgdbm.la' diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index 469dcbf75bbe..4531a5a01d4c 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, hostPlatform, fetchurl, libiconv, xz }: +{ stdenv, lib, fetchurl, libiconv, xz }: stdenv.mkDerivation rec { name = "gettext-${version}"; @@ -35,20 +35,20 @@ stdenv.mkDerivation rec { substituteInPlace gettext-tools/projects/KDE/trigger --replace "/bin/pwd" pwd substituteInPlace gettext-tools/projects/GNOME/trigger --replace "/bin/pwd" pwd substituteInPlace gettext-tools/src/project-id --replace "/bin/pwd" pwd - '' + lib.optionalString hostPlatform.isCygwin '' + '' + lib.optionalString stdenv.hostPlatform.isCygwin '' sed -i -e "s/\(cldr_plurals_LDADD = \)/\\1..\/gnulib-lib\/libxml_rpl.la /" gettext-tools/src/Makefile.in sed -i -e "s/\(libgettextsrc_la_LDFLAGS = \)/\\1..\/gnulib-lib\/libxml_rpl.la /" gettext-tools/src/Makefile.in ''; nativeBuildInputs = [ xz xz.bin ]; # HACK, see #10874 (and 14664) - buildInputs = stdenv.lib.optional (!stdenv.isLinux && !hostPlatform.isCygwin) libiconv; + buildInputs = stdenv.lib.optional (!stdenv.isLinux && !stdenv.hostPlatform.isCygwin) libiconv; setupHooks = [ ../../../build-support/setup-hooks/role.bash ./gettext-setup-hook.sh ]; - gettextNeedsLdflags = hostPlatform.libc != "glibc" && !hostPlatform.isMusl; + gettextNeedsLdflags = stdenv.hostPlatform.libc != "glibc" && !stdenv.hostPlatform.isMusl; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/glew/1.10.nix b/pkgs/development/libraries/glew/1.10.nix index af0830ab7042..b265cfcc0168 100644 --- a/pkgs/development/libraries/glew/1.10.nix +++ b/pkgs/development/libraries/glew/1.10.nix @@ -1,5 +1,4 @@ { stdenv, fetchurl, libGLU, xlibsWrapper, libXmu, libXi -, buildPlatform, hostPlatform , AGL ? null }: @@ -19,7 +18,7 @@ stdenv.mkDerivation rec { patchPhase = '' sed -i 's|lib64|lib|' config/Makefile.linux - ${optionalString (hostPlatform != buildPlatform) '' + ${optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' sed -i -e 's/\(INSTALL.*\)-s/\1/' Makefile ''} ''; @@ -39,7 +38,7 @@ stdenv.mkDerivation rec { ''; makeFlags = [ - "SYSTEM=${if hostPlatform.isMinGW then "mingw" else hostPlatform.parsed.kernel.name}" + "SYSTEM=${if stdenv.hostPlatform.isMinGW then "mingw" else stdenv.hostPlatform.parsed.kernel.name}" ]; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/glew/default.nix b/pkgs/development/libraries/glew/default.nix index a8add880090f..ec56c544cac3 100644 --- a/pkgs/development/libraries/glew/default.nix +++ b/pkgs/development/libraries/glew/default.nix @@ -1,5 +1,4 @@ { stdenv, fetchurl, libGLU, xlibsWrapper, libXmu, libXi -, buildPlatform, hostPlatform }: with stdenv.lib; @@ -20,7 +19,7 @@ stdenv.mkDerivation rec { patchPhase = '' sed -i 's|lib64|lib|' config/Makefile.linux substituteInPlace config/Makefile.darwin --replace /usr/local "$out" - ${optionalString (hostPlatform != buildPlatform) '' + ${optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' sed -i -e 's/\(INSTALL.*\)-s/\1/' Makefile ''} ''; @@ -41,7 +40,7 @@ stdenv.mkDerivation rec { ''; makeFlags = [ - "SYSTEM=${if hostPlatform.isMinGW then "mingw" else hostPlatform.parsed.kernel.name}" + "SYSTEM=${if stdenv.hostPlatform.isMinGW then "mingw" else stdenv.hostPlatform.parsed.kernel.name}" ]; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index 8b4a213aae05..1eecfa902790 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -18,7 +18,6 @@ */ { stdenv, lib -, buildPlatform, hostPlatform , buildPackages , fetchurl ? null , linuxHeaders ? null @@ -119,12 +118,12 @@ stdenv.mkDerivation ({ else "--disable-profile") ] ++ lib.optionals withLinuxHeaders [ "--enable-kernel=3.2.0" # can't get below with glibc >= 2.26 - ] ++ lib.optionals (hostPlatform != buildPlatform) [ - (if hostPlatform.platform.gcc.float or (hostPlatform.parsed.abi.float or "hard") == "soft" + ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ + (if stdenv.hostPlatform.platform.gcc.float or (stdenv.hostPlatform.parsed.abi.float or "hard") == "soft" then "--without-fp" else "--with-fp") "--with-__thread" - ] ++ lib.optionals (hostPlatform == buildPlatform && hostPlatform.isAarch32) [ + ] ++ lib.optionals (stdenv.hostPlatform == stdenv.buildPlatform && stdenv.hostPlatform.isAarch32) [ "--host=arm-linux-gnueabi" "--build=arm-linux-gnueabi" @@ -176,7 +175,7 @@ stdenv.mkDerivation ({ } - '' + lib.optionalString (hostPlatform != buildPlatform) '' + '' + lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' sed -i s/-lgcc_eh//g "../$sourceRoot/Makeconfig" cat > config.cache << "EOF" @@ -210,7 +209,7 @@ stdenv.mkDerivation ({ } // meta; } -// lib.optionalAttrs (hostPlatform != buildPlatform) { +// lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform) { preInstall = null; # clobber the native hook dontStrip = true; diff --git a/pkgs/development/libraries/gmp/6.x.nix b/pkgs/development/libraries/gmp/6.x.nix index 04c57d94666f..23a69282b41c 100644 --- a/pkgs/development/libraries/gmp/6.x.nix +++ b/pkgs/development/libraries/gmp/6.x.nix @@ -1,5 +1,5 @@ -{ stdenv, fetchurl, m4, cxx ? !hostPlatform.useAndroidPrebuilt -, buildPackages, hostPlatform +{ stdenv, fetchurl, m4, cxx ? !stdenv.hostPlatform.useAndroidPrebuilt +, buildPackages , withStatic ? false }: let inherit (stdenv.lib) optional optionalString; in diff --git a/pkgs/development/libraries/icu/base.nix b/pkgs/development/libraries/icu/base.nix index b8ad48326b2b..8ad58c5f90b0 100644 --- a/pkgs/development/libraries/icu/base.nix +++ b/pkgs/development/libraries/icu/base.nix @@ -1,7 +1,7 @@ { version, sha256, patches ? [], patchFlags ? "" }: { stdenv, fetchurl, fixDarwinDylibNames # Cross-compiled icu4c requires a build-root of a native compile -, buildRootOnly ? false, nativeBuildRoot, buildPlatform, hostPlatform +, buildRootOnly ? false, nativeBuildRoot }: let @@ -38,7 +38,7 @@ let configureFlags = [ "--disable-debug" ] ++ stdenv.lib.optional (stdenv.isFreeBSD || stdenv.isDarwin) "--enable-rpath" - ++ stdenv.lib.optional (buildPlatform != hostPlatform) "--with-cross-build=${nativeBuildRoot}"; + ++ stdenv.lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "--with-cross-build=${nativeBuildRoot}"; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/libav/default.nix b/pkgs/development/libraries/libav/default.nix index 5eb90aaf05c9..1ef453f24cdb 100644 --- a/pkgs/development/libraries/libav/default.nix +++ b/pkgs/development/libraries/libav/default.nix @@ -13,7 +13,6 @@ , SDL # only for avplay in $bin, adds nontrivial closure to it , enableGPL ? true # ToDo: some additional default stuff may need GPL , enableUnfree ? faacSupport -, hostPlatform }: assert faacSupport -> enableUnfree; @@ -53,8 +52,8 @@ let configurePlatforms = []; configureFlags = assert stdenv.lib.all (x: x!=null) buildInputs; [ - "--arch=${hostPlatform.parsed.cpu.name}" - "--target_os=${hostPlatform.parsed.kernel.name}" + "--arch=${stdenv.hostPlatform.parsed.cpu.name}" + "--target_os=${stdenv.hostPlatform.parsed.kernel.name}" #"--enable-postproc" # it's now a separate package in upstream "--disable-avserver" # upstream says it's in a bad state "--enable-avplay" diff --git a/pkgs/development/libraries/libb2/default.nix b/pkgs/development/libraries/libb2/default.nix index 58961a18df17..f7fffa8b2987 100644 --- a/pkgs/development/libraries/libb2/default.nix +++ b/pkgs/development/libraries/libb2/default.nix @@ -1,4 +1,4 @@ -{ stdenv, hostPlatform, fetchurl, autoconf, automake, libtool }: +{ stdenv, fetchurl, autoconf, automake, libtool }: stdenv.mkDerivation rec { name = "libb2-${version}"; @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { ./autogen.sh ''; - configureFlags = stdenv.lib.optional hostPlatform.isx86 "--enable-fat=yes"; + configureFlags = stdenv.lib.optional stdenv.hostPlatform.isx86 "--enable-fat=yes"; nativeBuildInputs = [ autoconf automake libtool ]; diff --git a/pkgs/development/libraries/libelf/default.nix b/pkgs/development/libraries/libelf/default.nix index bb1dbe51765e..5adafece3535 100644 --- a/pkgs/development/libraries/libelf/default.nix +++ b/pkgs/development/libraries/libelf/default.nix @@ -1,6 +1,5 @@ { stdenv , fetchurl, autoreconfHook, gettext -, buildPlatform, hostPlatform }: stdenv.mkDerivation rec { @@ -20,17 +19,17 @@ stdenv.mkDerivation rec { configureFlags = [] # Configure check for dynamic lib support is broken, see # http://lists.uclibc.org/pipermail/uclibc-cvs/2005-August/019383.html - ++ stdenv.lib.optional (hostPlatform != buildPlatform) "mr_cv_target_elf=yes" + ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "mr_cv_target_elf=yes" # Libelf's custom NLS macros fail to determine the catalog file extension # on Darwin, so disable NLS for now. - ++ stdenv.lib.optional hostPlatform.isDarwin "--disable-nls"; + ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin "--disable-nls"; nativeBuildInputs = [ gettext ] # Need to regenerate configure script with newer version in order to pass # "mr_cv_target_elf=yes", but `autoreconfHook` brings in `makeWrapper` # which doesn't work with the bootstrapTools bash, so can only do this # for cross builds when `stdenv.shell` is a newer bash. - ++ stdenv.lib.optional (hostPlatform != buildPlatform) autoreconfHook; + ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) autoreconfHook; meta = { description = "ELF object file access library"; diff --git a/pkgs/development/libraries/libffi/default.nix b/pkgs/development/libraries/libffi/default.nix index 6f1aeefa6758..215f587bb6b4 100644 --- a/pkgs/development/libraries/libffi/default.nix +++ b/pkgs/development/libraries/libffi/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, fetchpatch -, buildPlatform, hostPlatform, autoreconfHook +, autoreconfHook # libffi is used in darwin stdenv # we cannot run checks within it @@ -19,12 +19,12 @@ stdenv.mkDerivation rec { url = https://src.fedoraproject.org/rpms/libffi/raw/ccffc1700abfadb0969495a6e51b964117fc03f6/f/libffi-aarch64-rhbz1174037.patch; sha256 = "1vpirrgny43hp0885rswgv3xski8hg7791vskpbg3wdjdpb20wbc"; }) - ++ stdenv.lib.optional hostPlatform.isMusl (fetchpatch { + ++ stdenv.lib.optional stdenv.hostPlatform.isMusl (fetchpatch { name = "gnu-linux-define.patch"; url = "https://git.alpinelinux.org/cgit/aports/plain/main/libffi/gnu-linux-define.patch?id=bb024fd8ec6f27a76d88396c9f7c5c4b5800d580"; sha256 = "11pvy3xkhyvnjfyy293v51f1xjy3x0azrahv1nw9y9mw8bifa2j2"; }) - ++ stdenv.lib.optional hostPlatform.isRiscV (fetchpatch { + ++ stdenv.lib.optional stdenv.hostPlatform.isRiscV (fetchpatch { name = "riscv-support.patch"; url = https://github.com/sorear/libffi-riscv/commit/e46492e8bb1695a19bc1053ed869e6c2bab02ff2.patch; sha256 = "1vl1vbvdkigs617kckxvj8j4m2cwg62kxm1clav1w5rnw9afxg0y"; @@ -44,7 +44,7 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" "man" "info" ]; - nativeBuildInputs = stdenv.lib.optional hostPlatform.isRiscV autoreconfHook; + nativeBuildInputs = stdenv.lib.optional stdenv.hostPlatform.isRiscV autoreconfHook; configureFlags = [ "--with-gcc-arch=generic" # no detection of -march= or -mtune= @@ -60,7 +60,7 @@ stdenv.mkDerivation rec { inherit doCheck; - dontStrip = hostPlatform != buildPlatform; # Don't run the native `strip' when cross-compiling. + dontStrip = stdenv.hostPlatform != stdenv.buildPlatform; # Don't run the native `strip' when cross-compiling. # Install headers and libs in the right places. postFixup = '' diff --git a/pkgs/development/libraries/libiconv/default.nix b/pkgs/development/libraries/libiconv/default.nix index 24dd4f2465c6..d9773a1be4d8 100644 --- a/pkgs/development/libraries/libiconv/default.nix +++ b/pkgs/development/libraries/libiconv/default.nix @@ -1,10 +1,9 @@ { fetchurl, stdenv, lib -, buildPlatform, hostPlatform , enableStatic ? stdenv.hostPlatform.useAndroidPrebuilt , enableShared ? !stdenv.hostPlatform.useAndroidPrebuilt }: -# assert !stdenv.isLinux || hostPlatform != buildPlatform; # TODO: improve on cross +# assert !stdenv.hostPlatform.isLinux || stdenv.hostPlatform != stdenv.buildPlatform; # TODO: improve on cross stdenv.mkDerivation rec { name = "libiconv-${version}"; @@ -21,7 +20,7 @@ stdenv.mkDerivation rec { ]; postPatch = - lib.optionalString ((hostPlatform != buildPlatform && hostPlatform.libc == "msvcrt") || stdenv.cc.nativeLibc) + lib.optionalString ((stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform.libc == "msvcrt") || stdenv.cc.nativeLibc) '' sed '/^_GL_WARN_ON_USE (gets/d' -i srclib/stdio.in.h '' diff --git a/pkgs/development/libraries/libjpeg-turbo/default.nix b/pkgs/development/libraries/libjpeg-turbo/default.nix index e4f70b792fd5..84c6c96ea5de 100644 --- a/pkgs/development/libraries/libjpeg-turbo/default.nix +++ b/pkgs/development/libraries/libjpeg-turbo/default.nix @@ -1,5 +1,4 @@ { stdenv, fetchurl, nasm -, hostPlatform }: stdenv.mkDerivation rec { @@ -12,7 +11,7 @@ stdenv.mkDerivation rec { }; # github releases still need autotools, surprisingly patches = - stdenv.lib.optional (hostPlatform.libc or null == "msvcrt") + stdenv.lib.optional (stdenv.hostPlatform.libc or null == "msvcrt") ./mingw-boolean.patch; outputs = [ "bin" "dev" "out" "man" "doc" ]; diff --git a/pkgs/development/libraries/libpng/12.nix b/pkgs/development/libraries/libpng/12.nix index 0153ff8327b6..2cd8c1debaf2 100644 --- a/pkgs/development/libraries/libpng/12.nix +++ b/pkgs/development/libraries/libpng/12.nix @@ -1,8 +1,6 @@ -{ stdenv, fetchurl, zlib -, buildPlatform, hostPlatform -}: +{ stdenv, fetchurl, zlib }: -assert hostPlatform == buildPlatform -> zlib != null; +assert stdenv.hostPlatform == stdenv.buildPlatform -> zlib != null; stdenv.mkDerivation rec { name = "libpng-1.2.57"; diff --git a/pkgs/development/libraries/libssh2/default.nix b/pkgs/development/libraries/libssh2/default.nix index f85b709cf397..a6802a7f5183 100644 --- a/pkgs/development/libraries/libssh2/default.nix +++ b/pkgs/development/libraries/libssh2/default.nix @@ -1,6 +1,4 @@ -{ stdenv, fetchurlBoot, openssl, zlib, windows -, hostPlatform -}: +{ stdenv, fetchurlBoot, openssl, zlib, windows }: stdenv.mkDerivation rec { name = "libssh2-1.8.0"; @@ -13,7 +11,7 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" "devdoc" ]; buildInputs = [ openssl zlib ] - ++ stdenv.lib.optional hostPlatform.isMinGW windows.mingw_w64; + ++ stdenv.lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64; meta = { description = "A client-side C library implementing the SSH2 protocol"; diff --git a/pkgs/development/libraries/libvpx/default.nix b/pkgs/development/libraries/libvpx/default.nix index 515aa2537443..cd0cc9798fa0 100644 --- a/pkgs/development/libraries/libvpx/default.nix +++ b/pkgs/development/libraries/libvpx/default.nix @@ -1,5 +1,4 @@ { stdenv, fetchFromGitHub, perl, yasm -, hostPlatform , vp8DecoderSupport ? true # VP8 decoder , vp8EncoderSupport ? true # VP8 encoder , vp9DecoderSupport ? true # VP9 decoder @@ -141,17 +140,17 @@ stdenv.mkDerivation rec { # libvpx darwin targets include darwin version (ie. ARCH-darwinXX-gcc, XX being the darwin version) # See all_platforms: https://github.com/webmproject/libvpx/blob/master/configure # Darwin versions: 10.4=8, 10.5=9, 10.6=10, 10.7=11, 10.8=12, 10.9=13, 10.10=14 - "--force-target=${hostPlatform.config}${ - if hostPlatform.isDarwin then - if hostPlatform.osxMinVersion == "10.10" then "14" - else if hostPlatform.osxMinVersion == "10.9" then "13" - else if hostPlatform.osxMinVersion == "10.8" then "12" - else if hostPlatform.osxMinVersion == "10.7" then "11" - else if hostPlatform.osxMinVersion == "10.6" then "10" - else if hostPlatform.osxMinVersion == "10.5" then "9" + "--force-target=${stdenv.hostPlatform.config}${ + if stdenv.hostPlatform.isDarwin then + if stdenv.hostPlatform.osxMinVersion == "10.10" then "14" + else if stdenv.hostPlatform.osxMinVersion == "10.9" then "13" + else if stdenv.hostPlatform.osxMinVersion == "10.8" then "12" + else if stdenv.hostPlatform.osxMinVersion == "10.7" then "11" + else if stdenv.hostPlatform.osxMinVersion == "10.6" then "10" + else if stdenv.hostPlatform.osxMinVersion == "10.5" then "9" else "8" else ""}-gcc" - (if hostPlatform.isCygwin then "--enable-static-msvcrt" else "") + (if stdenv.hostPlatform.isCygwin then "--enable-static-msvcrt" else "") ] # Experimental features ++ optional experimentalSpatialSvcSupport "--enable-spatial-svc" ++ optional experimentalFpMbStatsSupport "--enable-fp-mb-stats" diff --git a/pkgs/development/libraries/libvpx/git.nix b/pkgs/development/libraries/libvpx/git.nix index fb7f828f61f0..a39113e05b67 100644 --- a/pkgs/development/libraries/libvpx/git.nix +++ b/pkgs/development/libraries/libvpx/git.nix @@ -1,5 +1,4 @@ { stdenv, fetchgit, perl, yasm -, hostPlatform , vp8DecoderSupport ? true # VP8 decoder , vp8EncoderSupport ? true # VP8 encoder , vp9DecoderSupport ? true # VP9 decoder @@ -148,17 +147,17 @@ stdenv.mkDerivation rec { # libvpx darwin targets include darwin version (ie. ARCH-darwinXX-gcc, XX being the darwin version) # See all_platforms: https://github.com/webmproject/libvpx/blob/master/configure # Darwin versions: 10.4=8, 10.5=9, 10.6=10, 10.7=11, 10.8=12, 10.9=13, 10.10=14 - "--force-target=${hostPlatform.config}${ - if hostPlatform.isDarwin then - if hostPlatform.osxMinVersion == "10.10" then "14" - else if hostPlatform.osxMinVersion == "10.9" then "13" - else if hostPlatform.osxMinVersion == "10.8" then "12" - else if hostPlatform.osxMinVersion == "10.7" then "11" - else if hostPlatform.osxMinVersion == "10.6" then "10" - else if hostPlatform.osxMinVersion == "10.5" then "9" + "--force-target=${stdenv.hostPlatform.config}${ + if stdenv.hostPlatform.isDarwin then + if stdenv.hostPlatform.osxMinVersion == "10.10" then "14" + else if stdenv.hostPlatform.osxMinVersion == "10.9" then "13" + else if stdenv.hostPlatform.osxMinVersion == "10.8" then "12" + else if stdenv.hostPlatform.osxMinVersion == "10.7" then "11" + else if stdenv.hostPlatform.osxMinVersion == "10.6" then "10" + else if stdenv.hostPlatform.osxMinVersion == "10.5" then "9" else "8" else ""}-gcc" - (if hostPlatform.isCygwin then "--enable-static-msvcrt" else "") + (if stdenv.hostPlatform.isCygwin then "--enable-static-msvcrt" else "") ] # Experimental features ++ optional experimentalSpatialSvcSupport "--enable-spatial-svc" ++ optional experimentalFpMbStatsSupport "--enable-fp-mb-stats" diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix index 2f0f0f1425d1..c359ea10b665 100644 --- a/pkgs/development/libraries/libxml2/default.nix +++ b/pkgs/development/libraries/libxml2/default.nix @@ -1,9 +1,8 @@ { stdenv, lib, fetchurl, fetchpatch , zlib, xz, python2, findXMLCatalogs -, buildPlatform, hostPlatform -, pythonSupport ? buildPlatform == hostPlatform +, pythonSupport ? stdenv.buildPlatform == stdenv.hostPlatform , icuSupport ? false, icu ? null -, enableShared ? hostPlatform.libc != "msvcrt" +, enableShared ? stdenv.hostPlatform.libc != "msvcrt" , enableStatic ? !enableShared, }: @@ -56,7 +55,7 @@ in stdenv.mkDerivation rec { enableParallelBuilding = true; doCheck = (stdenv.hostPlatform == stdenv.buildPlatform) && !stdenv.isDarwin && - hostPlatform.libc != "musl"; + stdenv.hostPlatform.libc != "musl"; preInstall = lib.optionalString pythonSupport ''substituteInPlace python/libxml2mod.la --replace "${python}" "$py"''; diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix index 4dfdea582a25..6dc40bd45a0a 100644 --- a/pkgs/development/libraries/libxslt/default.nix +++ b/pkgs/development/libraries/libxslt/default.nix @@ -1,7 +1,6 @@ { stdenv, fetchurl, libxml2, findXMLCatalogs, python2 -, buildPlatform, hostPlatform , cryptoSupport ? false -, pythonSupport ? buildPlatform == hostPlatform +, pythonSupport ? stdenv.buildPlatform == stdenv.hostPlatform }: assert pythonSupport -> python2 != null; @@ -22,7 +21,7 @@ stdenv.mkDerivation rec { patches = stdenv.lib.optional stdenv.isSunOS ./patch-ah.patch; # fixes: can't build x86_64-unknown-cygwin shared library unless -no-undefined is specified - postPatch = optionalString hostPlatform.isCygwin '' + postPatch = optionalString stdenv.hostPlatform.isCygwin '' substituteInPlace tests/plugins/Makefile.in \ --replace 'la_LDFLAGS =' 'la_LDFLAGS = $(WIN32_EXTRA_LDFLAGS)' ''; diff --git a/pkgs/development/libraries/microsoft_gsl/default.nix b/pkgs/development/libraries/microsoft_gsl/default.nix index 1c10bd6f8fcd..c4c4d8e3a577 100644 --- a/pkgs/development/libraries/microsoft_gsl/default.nix +++ b/pkgs/development/libraries/microsoft_gsl/default.nix @@ -1,9 +1,8 @@ { stdenv, fetchgit, cmake -, hostPlatform, buildPlatform }: let - nativeBuild = hostPlatform == buildPlatform; + nativeBuild = stdenv.hostPlatform == stdenv.buildPlatform; in stdenv.mkDerivation rec { name = "microsoft_gsl-${version}"; diff --git a/pkgs/development/libraries/mpfr/default.nix b/pkgs/development/libraries/mpfr/default.nix index afb44dd80f91..ea94a55a6199 100644 --- a/pkgs/development/libraries/mpfr/default.nix +++ b/pkgs/development/libraries/mpfr/default.nix @@ -1,6 +1,4 @@ -{ stdenv, fetchurl, gmp -, hostPlatform -}: +{ stdenv, fetchurl, gmp }: stdenv.mkDerivation rec { version = "4.0.1"; @@ -17,8 +15,8 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ gmp ]; configureFlags = - stdenv.lib.optional hostPlatform.isSunOS "--disable-thread-safe" ++ - stdenv.lib.optional hostPlatform.is64bit "--with-pic"; + stdenv.lib.optional stdenv.hostPlatform.isSunOS "--disable-thread-safe" ++ + stdenv.lib.optional stdenv.hostPlatform.is64bit "--with-pic"; doCheck = true; # not cross; diff --git a/pkgs/development/libraries/msgpack/generic.nix b/pkgs/development/libraries/msgpack/generic.nix index 67418b6666d4..306becf0c180 100644 --- a/pkgs/development/libraries/msgpack/generic.nix +++ b/pkgs/development/libraries/msgpack/generic.nix @@ -1,6 +1,5 @@ { stdenv, cmake , version, src, patches ? [ ] -, hostPlatform , ... }: @@ -16,7 +15,7 @@ stdenv.mkDerivation rec { cmakeFlags = [] ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "-DMSGPACK_BUILD_EXAMPLES=OFF" - ++ stdenv.lib.optional (hostPlatform.libc == "msvcrt") + ++ stdenv.lib.optional (stdenv.hostPlatform.libc == "msvcrt") "-DCMAKE_SYSTEM_NAME=Windows" ; diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 861b387a993a..6293efcca8b2 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -8,7 +8,6 @@ , gpm -, buildPlatform, hostPlatform , buildPackages }: @@ -36,7 +35,7 @@ stdenv.mkDerivation rec { ] ++ lib.optional unicode "--enable-widec" ++ lib.optional (!withCxx) "--without-cxx" ++ lib.optional (abiVersion == "5") "--with-abi-version=5" - ++ lib.optionals hostPlatform.isWindows [ + ++ lib.optionals stdenv.hostPlatform.isWindows [ "--enable-sp-funcs" "--enable-term-driver" ]; @@ -47,7 +46,7 @@ stdenv.mkDerivation rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ pkgconfig - ] ++ lib.optionals (buildPlatform != hostPlatform) [ + ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ buildPackages.ncurses ]; buildInputs = lib.optional (mouseSupport && stdenv.isLinux) gpm; @@ -137,7 +136,7 @@ stdenv.mkDerivation rec { moveToOutput "bin/infotocap" "$out" ''; - preFixup = lib.optionalString (!hostPlatform.isCygwin && !enableStatic) '' + preFixup = lib.optionalString (!stdenv.hostPlatform.isCygwin && !enableStatic) '' rm "$out"/lib/*.a ''; diff --git a/pkgs/development/libraries/nlohmann_json/default.nix b/pkgs/development/libraries/nlohmann_json/default.nix index 0221722e4875..15bdbb1b48e8 100644 --- a/pkgs/development/libraries/nlohmann_json/default.nix +++ b/pkgs/development/libraries/nlohmann_json/default.nix @@ -1,5 +1,4 @@ { stdenv, fetchFromGitHub, cmake -, hostPlatform }: stdenv.mkDerivation rec { @@ -19,7 +18,7 @@ stdenv.mkDerivation rec { cmakeFlags = [ "-DBuildTests=${if doCheck then "ON" else "OFF"}" - ] ++ stdenv.lib.optionals (hostPlatform.libc == "msvcrt") [ + ] ++ stdenv.lib.optionals (stdenv.hostPlatform.libc == "msvcrt") [ "-DCMAKE_SYSTEM_NAME=Windows" ]; diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 380c0c4af638..de13f963b674 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -1,5 +1,4 @@ { stdenv, fetchurl, buildPackages, perl -, buildPlatform, hostPlatform , withCryptodev ? false, cryptodevHeaders , enableSSL2 ? false , static ? false @@ -20,8 +19,8 @@ let (args.patches or []) ++ [ ./nix-ssl-cert-file.patch ] ++ optional (versionOlder version "1.1.0") - (if hostPlatform.isDarwin then ./use-etc-ssl-certs-darwin.patch else ./use-etc-ssl-certs.patch) - ++ optional (versionOlder version "1.0.2" && hostPlatform.isDarwin) + (if stdenv.hostPlatform.isDarwin then ./use-etc-ssl-certs-darwin.patch else ./use-etc-ssl-certs.patch) + ++ optional (versionOlder version "1.0.2" && stdenv.hostPlatform.isDarwin) ./darwin-arch.patch; postPatch = '' @@ -40,7 +39,7 @@ let outputs = [ "bin" "dev" "out" "man" ]; setOutputFlags = false; - separateDebugInfo = hostPlatform.isLinux; + separateDebugInfo = stdenv.hostPlatform.isLinux; nativeBuildInputs = [ perl ]; buildInputs = stdenv.lib.optional withCryptodev cryptodevHeaders; @@ -50,19 +49,19 @@ let configureScript = { "x86_64-darwin" = "./Configure darwin64-x86_64-cc"; "x86_64-solaris" = "./Configure solaris64-x86_64-gcc"; - }.${hostPlatform.system} or ( - if hostPlatform == buildPlatform + }.${stdenv.hostPlatform.system} or ( + if stdenv.hostPlatform == stdenv.buildPlatform then "./config" - else if hostPlatform.isMinGW + else if stdenv.hostPlatform.isMinGW then "./Configure mingw${optionalString - (hostPlatform.parsed.cpu.bits != 32) - (toString hostPlatform.parsed.cpu.bits)}" - else if hostPlatform.isLinux - then "./Configure linux-generic${toString hostPlatform.parsed.cpu.bits}" - else if hostPlatform.isiOS - then "./Configure ios${toString hostPlatform.parsed.cpu.bits}-cross" + (stdenv.hostPlatform.parsed.cpu.bits != 32) + (toString stdenv.hostPlatform.parsed.cpu.bits)}" + else if stdenv.hostPlatform.isLinux + then "./Configure linux-generic${toString stdenv.hostPlatform.parsed.cpu.bits}" + else if stdenv.hostPlatform.isiOS + then "./Configure ios${toString stdenv.hostPlatform.parsed.cpu.bits}-cross" else - throw "Not sure what configuration to use for ${hostPlatform.config}" + throw "Not sure what configuration to use for ${stdenv.hostPlatform.config}" ); configureFlags = [ @@ -73,7 +72,7 @@ let "-DHAVE_CRYPTODEV" "-DUSE_CRYPTODEV_DIGESTS" ] ++ stdenv.lib.optional enableSSL2 "enable-ssl2" - ++ stdenv.lib.optional (versionAtLeast version "1.1.0" && hostPlatform.isAarch64) "no-afalgeng"; + ++ stdenv.lib.optional (versionAtLeast version "1.1.0" && stdenv.hostPlatform.isAarch64) "no-afalgeng"; makeFlags = [ "MANDIR=$(man)/share/man" ]; diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix index 04104346748e..f9bd4ae91b46 100644 --- a/pkgs/development/libraries/pcre/default.nix +++ b/pkgs/development/libraries/pcre/default.nix @@ -1,6 +1,5 @@ { stdenv, fetchurl , pcre, windows ? null -, buildPlatform, hostPlatform , variant ? null }: @@ -24,13 +23,13 @@ in stdenv.mkDerivation rec { outputs = [ "bin" "dev" "out" "doc" "man" ]; - configureFlags = optional (!hostPlatform.isRiscV) "--enable-jit" ++ [ + configureFlags = optional (!stdenv.hostPlatform.isRiscV) "--enable-jit" ++ [ "--enable-unicode-properties" "--disable-cpp" ] ++ optional (variant != null) "--enable-${variant}"; - buildInputs = optional (hostPlatform.libc == "msvcrt") windows.mingw_w64_pthreads; + buildInputs = optional (stdenv.hostPlatform.libc == "msvcrt") windows.mingw_w64_pthreads; # https://bugs.exim.org/show_bug.cgi?id=2173 patches = [ ./stacksize-detection.patch ]; @@ -39,7 +38,7 @@ in stdenv.mkDerivation rec { patchShebangs RunGrepTest ''; - doCheck = !(with hostPlatform; isCygwin || isFreeBSD) && hostPlatform == buildPlatform; + doCheck = !(with stdenv.hostPlatform; isCygwin || isFreeBSD) && stdenv.hostPlatform == stdenv.buildPlatform; # XXX: test failure on Cygwin # we are running out of stack on both freeBSDs on Hydra diff --git a/pkgs/development/libraries/readline/6.2.nix b/pkgs/development/libraries/readline/6.2.nix index 2c800e23b27f..e97b31896c1d 100644 --- a/pkgs/development/libraries/readline/6.2.nix +++ b/pkgs/development/libraries/readline/6.2.nix @@ -1,5 +1,4 @@ { fetchurl, stdenv, ncurses -, buildPlatform, hostPlatform }: stdenv.mkDerivation (rec { @@ -59,6 +58,6 @@ stdenv.mkDerivation (rec { // # Don't run the native `strip' when cross-compiling. -(if hostPlatform != buildPlatform +(if stdenv.hostPlatform != stdenv.buildPlatform then { dontStrip = true; } else { })) diff --git a/pkgs/development/libraries/readline/6.3.nix b/pkgs/development/libraries/readline/6.3.nix index 75c25e12d667..cfa70f423db3 100644 --- a/pkgs/development/libraries/readline/6.3.nix +++ b/pkgs/development/libraries/readline/6.3.nix @@ -1,6 +1,4 @@ -{ fetchurl, stdenv, ncurses -, buildPlatform, hostPlatform -}: +{ fetchurl, stdenv, ncurses }: stdenv.mkDerivation rec { name = "readline-6.3p08"; @@ -37,7 +35,7 @@ stdenv.mkDerivation rec { import ./readline-6.3-patches.nix patch); # Don't run the native `strip' when cross-compiling. - dontStrip = hostPlatform != buildPlatform; + dontStrip = stdenv.hostPlatform != stdenv.buildPlatform; bash_cv_func_sigsetjmp = if stdenv.isCygwin then "missing" else null; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/readline/7.0.nix b/pkgs/development/libraries/readline/7.0.nix index a7306010a8b5..9c0c3d31b4b6 100644 --- a/pkgs/development/libraries/readline/7.0.nix +++ b/pkgs/development/libraries/readline/7.0.nix @@ -1,5 +1,4 @@ { fetchurl, stdenv, ncurses -, buildPlatform, hostPlatform }: stdenv.mkDerivation rec { @@ -34,7 +33,7 @@ stdenv.mkDerivation rec { ++ upstreamPatches; # Don't run the native `strip' when cross-compiling. - dontStrip = hostPlatform != buildPlatform; + dontStrip = stdenv.hostPlatform != stdenv.buildPlatform; bash_cv_func_sigsetjmp = if stdenv.isCygwin then "missing" else null; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix index fa6b8fb13b5a..d3fb0970cd00 100644 --- a/pkgs/development/libraries/zlib/default.nix +++ b/pkgs/development/libraries/zlib/default.nix @@ -1,6 +1,5 @@ { stdenv , fetchurl -, buildPlatform, hostPlatform , static ? false }: @@ -16,9 +15,9 @@ stdenv.mkDerivation rec { sha256 = "c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1"; }; - patches = stdenv.lib.optional hostPlatform.isCygwin ./disable-cygwin-widechar.patch; + patches = stdenv.lib.optional stdenv.hostPlatform.isCygwin ./disable-cygwin-widechar.patch; - postPatch = stdenv.lib.optionalString hostPlatform.isDarwin '' + postPatch = stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' substituteInPlace configure \ --replace '/usr/bin/libtool' 'ar' \ --replace 'AR="libtool"' 'AR="ar"' \ @@ -37,25 +36,25 @@ stdenv.mkDerivation rec { # jww (2015-01-06): Sometimes this library install as a .so, even on # Darwin; others time it installs as a .dylib. I haven't yet figured out # what causes this difference. - + stdenv.lib.optionalString hostPlatform.isDarwin '' + + stdenv.lib.optionalString stdenv.hostPlatform.isDarwin '' for file in $out/lib/*.so* $out/lib/*.dylib* ; do install_name_tool -id "$file" $file done '' # Non-typical naming confuses libtool which then refuses to use zlib's DLL # in some cases, e.g. when compiling libpng. - + stdenv.lib.optionalString (hostPlatform.libc == "msvcrt") '' + + stdenv.lib.optionalString (stdenv.hostPlatform.libc == "msvcrt") '' ln -s zlib1.dll $out/bin/libz.dll ''; # As zlib takes part in the stdenv building, we don't want references # to the bootstrap-tools libgcc (as uses to happen on arm/mips) - NIX_CFLAGS_COMPILE = stdenv.lib.optionalString (!hostPlatform.isDarwin) "-static-libgcc"; + NIX_CFLAGS_COMPILE = stdenv.lib.optionalString (!stdenv.hostPlatform.isDarwin) "-static-libgcc"; - dontStrip = hostPlatform != buildPlatform && static; + dontStrip = stdenv.hostPlatform != stdenv.buildPlatform && static; configurePlatforms = []; - installFlags = stdenv.lib.optionals (hostPlatform.libc == "msvcrt") [ + installFlags = stdenv.lib.optionals (stdenv.hostPlatform.libc == "msvcrt") [ "BINARY_PATH=$(out)/bin" "INCLUDE_PATH=$(dev)/include" "LIBRARY_PATH=$(out)/lib" @@ -63,7 +62,7 @@ stdenv.mkDerivation rec { makeFlags = [ "PREFIX=${stdenv.cc.targetPrefix}" - ] ++ stdenv.lib.optionals (hostPlatform.libc == "msvcrt") [ + ] ++ stdenv.lib.optionals (stdenv.hostPlatform.libc == "msvcrt") [ "-f" "win32/Makefile.gcc" ] ++ stdenv.lib.optionals (!static) [ "SHARED_MODE=1" diff --git a/pkgs/development/mobile/androidenv/androidndk-pkgs.nix b/pkgs/development/mobile/androidenv/androidndk-pkgs.nix index 0f43705c0d42..e4ea9508aeb9 100644 --- a/pkgs/development/mobile/androidenv/androidndk-pkgs.nix +++ b/pkgs/development/mobile/androidenv/androidndk-pkgs.nix @@ -1,4 +1,4 @@ -{ lib, hostPlatform, targetPlatform +{ lib , makeWrapper , runCommand, wrapBintoolsWith, wrapCCWith , buildAndroidndk, androidndk, targetAndroidndkPkgs @@ -33,8 +33,8 @@ let }.${config} or (throw "Android NDK doesn't support ${config}, as far as we know"); - hostInfo = ndkInfoFun hostPlatform; - targetInfo = ndkInfoFun targetPlatform; + hostInfo = ndkInfoFun stdenv.hostPlatform; + targetInfo = ndkInfoFun stdenv.targetPlatform; in @@ -51,7 +51,7 @@ rec { mkdir -p $out/bin for prog in ${ndkBinDir}/${targetInfo.triple}-*; do prog_suffix=$(basename $prog | sed 's/${targetInfo.triple}-//') - ln -s $prog $out/bin/${targetPlatform.config}-$prog_suffix + ln -s $prog $out/bin/${stdenv.targetPlatform.config}-$prog_suffix done ''; @@ -68,11 +68,11 @@ rec { bintools = binutils; libc = targetAndroidndkPkgs.libraries; extraBuildCommands = '' - echo "-D__ANDROID_API__=${targetPlatform.sdkVer}" >> $out/nix-support/cc-cflags + echo "-D__ANDROID_API__=${stdenv.targetPlatform.sdkVer}" >> $out/nix-support/cc-cflags '' - + lib.optionalString targetPlatform.isAarch32 (let - p = targetPlatform.platform.gcc or {} - // targetPlatform.parsed.abi; + + lib.optionalString stdenv.targetPlatform.isAarch32 (let + p = stdenv.targetPlatform.platform.gcc or {} + // stdenv.targetPlatform.parsed.abi; flags = lib.concatLists [ (lib.optional (p ? arch) "-march=${p.arch}") (lib.optional (p ? cpu) "-mcpu=${p.cpu}") @@ -84,10 +84,10 @@ rec { ]; in '' sed -E -i \ - $out/bin/${targetPlatform.config}-cc \ - $out/bin/${targetPlatform.config}-c++ \ - $out/bin/${targetPlatform.config}-gcc \ - $out/bin/${targetPlatform.config}-g++ \ + $out/bin/${stdenv.targetPlatform.config}-cc \ + $out/bin/${stdenv.targetPlatform.config}-c++ \ + $out/bin/${stdenv.targetPlatform.config}-gcc \ + $out/bin/${stdenv.targetPlatform.config}-g++ \ -e '130i extraBefore+=(-Wl,--fix-cortex-a8)' \ -e 's|^(extraBefore=)\(\)$|\1(${builtins.toString flags})|' '') @@ -107,10 +107,10 @@ rec { libraries = let includePath = if buildAndroidndk.version == "10e" then - "${buildAndroidndk}/libexec/${buildAndroidndk.name}/platforms/android-${hostPlatform.sdkVer}/arch-${hostInfo.arch}/usr/include/" + "${buildAndroidndk}/libexec/${buildAndroidndk.name}/platforms/android-${stdenv.hostPlatform.sdkVer}/arch-${hostInfo.arch}/usr/include/" else "${buildAndroidndk}/libexec/${buildAndroidndk.name}/sysroot/usr/include"; - libPath = "${buildAndroidndk}/libexec/${buildAndroidndk.name}/platforms/android-${hostPlatform.sdkVer}/arch-${hostInfo.arch}/usr/lib/"; + libPath = "${buildAndroidndk}/libexec/${buildAndroidndk.name}/platforms/android-${stdenv.hostPlatform.sdkVer}/arch-${hostInfo.arch}/usr/lib/"; in runCommand "bionic-prebuilt" {} '' mkdir -p $out diff --git a/pkgs/development/python-modules/numpy/default.nix b/pkgs/development/python-modules/numpy/default.nix index d9e884dabbe0..5577004465ee 100644 --- a/pkgs/development/python-modules/numpy/default.nix +++ b/pkgs/development/python-modules/numpy/default.nix @@ -1,4 +1,4 @@ -{lib, fetchPypi, python, buildPythonPackage, isPyPy, gfortran, nose, blas, hostPlatform }: +{ stdenv, lib, fetchPypi, python, buildPythonPackage, isPyPy, gfortran, nose, blas }: buildPythonPackage rec { pname = "numpy"; @@ -20,7 +20,7 @@ buildPythonPackage rec { ./numpy-distutils-C++.patch ]; - postPatch = lib.optionalString hostPlatform.isMusl '' + postPatch = lib.optionalString stdenv.hostPlatform.isMusl '' # Use fenv.h sed -i \ numpy/core/src/npymath/ieee754.c.src \ diff --git a/pkgs/development/python-modules/pyserial/default.nix b/pkgs/development/python-modules/pyserial/default.nix index c7787a42691b..98ffbe5ad9ec 100644 --- a/pkgs/development/python-modules/pyserial/default.nix +++ b/pkgs/development/python-modules/pyserial/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchPypi, buildPythonPackage, hostPlatform }: +{ stdenv, lib, fetchPypi, buildPythonPackage }: buildPythonPackage rec { pname = "pyserial"; @@ -10,7 +10,7 @@ buildPythonPackage rec { }; checkPhase = "python -m unittest discover -s test"; - doCheck = !hostPlatform.isDarwin; # broken on darwin + doCheck = !stdenv.hostPlatform.isDarwin; # broken on darwin meta = with lib; { homepage = "https://github.com/pyserial/pyserial"; diff --git a/pkgs/development/tools/build-managers/cmake/2.8.nix b/pkgs/development/tools/build-managers/cmake/2.8.nix index a57d20e2702a..2cbc87a5267a 100644 --- a/pkgs/development/tools/build-managers/cmake/2.8.nix +++ b/pkgs/development/tools/build-managers/cmake/2.8.nix @@ -1,6 +1,5 @@ { stdenv, fetchurl, fetchpatch, curl, expat, zlib, bzip2 , useNcurses ? false, ncurses, useQt4 ? false, qt4, ps -, buildPlatform, hostPlatform }: with stdenv.lib; @@ -35,7 +34,7 @@ stdenv.mkDerivation rec { })] ++ # Don't search in non-Nix locations such as /usr, but do search in our libc. [ ./search-path.patch ] ++ - optional (hostPlatform != buildPlatform) (fetchurl { + optional (stdenv.hostPlatform != stdenv.buildPlatform) (fetchurl { name = "fix-darwin-cross-compile.patch"; url = "https://public.kitware.com/Bug/file_download.php?" + "file_id=4981&type=bug"; diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix index ca53c4d8c535..35ae59af617c 100644 --- a/pkgs/development/tools/build-managers/meson/default.nix +++ b/pkgs/development/tools/build-managers/meson/default.nix @@ -1,4 +1,4 @@ -{ lib, python3Packages, stdenv, targetPlatform, writeTextDir, substituteAll }: +{ lib, python3Packages, stdenv, writeTextDir, substituteAll }: python3Packages.buildPythonApplication rec { version = "0.46.1"; @@ -57,10 +57,10 @@ python3Packages.buildPythonApplication rec { needs_exe_wrapper = true [host_machine] - system = '${targetPlatform.parsed.kernel.name}' - cpu_family = '${targetPlatform.parsed.cpu.family}' - cpu = '${targetPlatform.parsed.cpu.name}' - endian = ${if targetPlatform.isLittleEndian then "'little'" else "'big'"} + system = '${stdenv.targetPlatform.parsed.kernel.name}' + cpu_family = '${stdenv.targetPlatform.parsed.cpu.family}' + cpu = '${stdenv.targetPlatform.parsed.cpu.name}' + endian = ${if stdenv.targetPlatform.isLittleEndian then "'little'" else "'big'"} ''; # 0.45 update enabled tests but they are failing diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 3ca9e539ddd8..3205366f80eb 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -1,6 +1,5 @@ { stdenv, buildPackages , fetchurl, zlib, autoreconfHook264 -, hostPlatform, buildPlatform, targetPlatform , noSysDirs, gold ? true, bison ? null }: @@ -13,7 +12,7 @@ let inherit (stdenv.lib) optionals optionalString; # The targetPrefix prepended to binary names to allow multiple binuntils on the # PATH to both be usable. - targetPrefix = optionalString (targetPlatform != hostPlatform) "${targetPlatform.config}-"; + targetPrefix = optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "${stdenv.targetPlatform.config}-"; in stdenv.mkDerivation rec { @@ -65,14 +64,14 @@ stdenv.mkDerivation rec { # be satisfied on aarch64 platform. Add backported fix from bugzilla. # https://sourceware.org/bugzilla/show_bug.cgi?id=22764 ./relax-R_AARCH64_ABS32-R_AARCH64_ABS16-absolute.patch - ] ++ stdenv.lib.optional targetPlatform.isiOS ./support-ios.patch; + ] ++ stdenv.lib.optional stdenv.targetPlatform.isiOS ./support-ios.patch; outputs = [ "out" "info" "man" ]; depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ bison - ] ++ stdenv.lib.optionals targetPlatform.isiOS [ + ] ++ stdenv.lib.optionals stdenv.targetPlatform.isiOS [ autoreconfHook264 ]; buildInputs = [ zlib ]; @@ -94,14 +93,14 @@ stdenv.mkDerivation rec { # As binutils takes part in the stdenv building, we don't want references # to the bootstrap-tools libgcc (as uses to happen on arm/mips) - NIX_CFLAGS_COMPILE = if hostPlatform.isDarwin + NIX_CFLAGS_COMPILE = if stdenv.hostPlatform.isDarwin then "-Wno-string-plus-int -Wno-deprecated-declarations" else "-static-libgcc"; hardeningDisable = [ "format" ]; # TODO(@Ericson2314): Always pass "--target" and always targetPrefix. - configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (stdenv.targetPlatform != stdenv.hostPlatform) "target"; configureFlags = [ "--enable-targets=all" "--enable-64-bit-bfd" @@ -122,7 +121,7 @@ stdenv.mkDerivation rec { doCheck = false; # fails # else fails with "./sanity.sh: line 36: $out/bin/size: not found" - doInstallCheck = buildPlatform == hostPlatform && hostPlatform == targetPlatform; + doInstallCheck = stdenv.buildPlatform == stdenv.hostPlatform && stdenv.hostPlatform == stdenv.targetPlatform; enableParallelBuilding = true; diff --git a/pkgs/development/tools/misc/gdb/default.nix b/pkgs/development/tools/misc/gdb/default.nix index 1c2efbeea76f..a60a77bed30b 100644 --- a/pkgs/development/tools/misc/gdb/default.nix +++ b/pkgs/development/tools/misc/gdb/default.nix @@ -6,9 +6,7 @@ # Run time , ncurses, readline, gmp, mpfr, expat, zlib, dejagnu -, buildPlatform, hostPlatform, targetPlatform - -, pythonSupport ? hostPlatform == buildPlatform && !hostPlatform.isCygwin, python ? null +, pythonSupport ? stdenv.hostPlatform == stdenv.buildPlatform && !stdenv.hostPlatform.isCygwin, python ? null , guile ? null }: @@ -22,8 +20,8 @@ assert pythonSupport -> python != null; stdenv.mkDerivation rec { name = - stdenv.lib.optionalString (targetPlatform != hostPlatform) - (targetPlatform.config + "-") + stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) + (stdenv.targetPlatform.config + "-") + basename; src = fetchurl { @@ -50,7 +48,7 @@ stdenv.mkDerivation rec { NIX_CFLAGS_COMPILE = "-Wno-format-nonliteral"; # TODO(@Ericson2314): Always pass "--target" and always prefix. - configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (stdenv.targetPlatform != stdenv.hostPlatform) "target"; configureFlags = with stdenv.lib; [ "--enable-targets=all" "--enable-64-bit-bfd" diff --git a/pkgs/development/tools/misc/gnum4/default.nix b/pkgs/development/tools/misc/gnum4/default.nix index 7e92df1a9978..e5ea17841aa6 100644 --- a/pkgs/development/tools/misc/gnum4/default.nix +++ b/pkgs/development/tools/misc/gnum4/default.nix @@ -1,4 +1,4 @@ -{ stdenv, hostPlatform, fetchurl }: +{ stdenv, fetchurl }: stdenv.mkDerivation rec { name = "gnum4-1.4.18"; @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-syscmd-shell=${stdenv.shell}" ]; # Upstream is aware of it; it may be in the next release. - patches = [ ./s_isdir.patch ] ++ stdenv.lib.optional hostPlatform.isDarwin stdenv.secure-format-patch; + patches = [ ./s_isdir.patch ] ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin stdenv.secure-format-patch; meta = { homepage = http://www.gnu.org/software/m4/; diff --git a/pkgs/development/tools/misc/help2man/default.nix b/pkgs/development/tools/misc/help2man/default.nix index b786aa2123f6..7e2dc49fe0f2 100644 --- a/pkgs/development/tools/misc/help2man/default.nix +++ b/pkgs/development/tools/misc/help2man/default.nix @@ -1,4 +1,4 @@ -{ stdenv, hostPlatform, fetchurl, perl, gettext, LocaleGettext }: +{ stdenv, fetchurl, perl, gettext, LocaleGettext }: stdenv.mkDerivation rec { name = "help2man-1.47.6"; @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { doCheck = false; # target `check' is missing - patches = if hostPlatform.isCygwin then [ ./1.40.4-cygwin-nls.patch ] else null; + patches = if stdenv.hostPlatform.isCygwin then [ ./1.40.4-cygwin-nls.patch ] else null; # We don't use makeWrapper here because it uses substitutions our # bootstrap shell can't handle. @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { cat > $out/bin/help2man < maloader != null; +assert (!stdenv.hostPlatform.isDarwin) -> maloader != null; assert enableDumpNormalizedLibArgs -> (!useOld); @@ -77,7 +76,7 @@ let enableParallelBuilding = true; # TODO(@Ericson2314): Always pass "--target" and always targetPrefix. - configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target"; + configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (stdenv.targetPlatform != stdenv.hostPlatform) "target"; postPatch = '' sed -i -e 's/addStandardLibraryDirectories = true/addStandardLibraryDirectories = false/' cctools/ld64/src/ld/Options.cpp @@ -131,7 +130,7 @@ let }; meta = { - broken = !targetPlatform.isDarwin; # Only supports darwin targets + broken = !stdenv.targetPlatform.isDarwin; # Only supports darwin targets homepage = http://www.opensource.apple.com/source/cctools/; description = "MacOS Compiler Tools (cross-platform port)"; license = stdenv.lib.licenses.apsl20; diff --git a/pkgs/os-specific/darwin/xcode/default.nix b/pkgs/os-specific/darwin/xcode/default.nix index 910f1b91c215..369529d71675 100644 --- a/pkgs/os-specific/darwin/xcode/default.nix +++ b/pkgs/os-specific/darwin/xcode/default.nix @@ -1,4 +1,4 @@ -{ stdenv, requireFile, targetPlatform, lib }: +{ stdenv, requireFile, lib }: let requireXcode = version: sha256: let @@ -46,5 +46,5 @@ in lib.makeExtensible (self: { xcode_9_1 = requireXcode "9.1" "0ab1403wy84ys3yn26fj78cazhpnslmh3nzzp1wxib3mr1afjvic"; xcode_9_2 = requireXcode "9.2" "1bgfgdp266cbbqf2axcflz92frzvhi0qw0jdkcw6r85kdpc8dj4c"; xcode_9_4 = requireXcode "9.4" "6731381785075602a52489f7ea47ece8f6daf225007ba3ffae1fd59b1c0b5f01"; - xcode = self."xcode_${lib.replaceStrings ["."] ["_"] (if targetPlatform.useiOSPrebuilt then targetPlatform.xcodeVer else "8.2")}"; + xcode = self."xcode_${lib.replaceStrings ["."] ["_"] (if stdenv.targetPlatform.useiOSPrebuilt then stdenv.targetPlatform.xcodeVer else "8.2")}"; }) diff --git a/pkgs/os-specific/linux/busybox/sandbox-shell.nix b/pkgs/os-specific/linux/busybox/sandbox-shell.nix index b94fae7f787b..de8865ba3acc 100644 --- a/pkgs/os-specific/linux/busybox/sandbox-shell.nix +++ b/pkgs/os-specific/linux/busybox/sandbox-shell.nix @@ -1,9 +1,9 @@ -{ busybox, hostPlatform }: +{ busybox, stdenv}: # Minimal shell for use as basic /bin/sh in sandbox builds busybox.override { # musl roadmap has RISC-V support projected for 1.1.20 - useMusl = !hostPlatform.isRiscV; + useMusl = !stdenv.hostPlatform.isRiscV; enableStatic = true; enableMinimal = true; extraConfig = '' diff --git a/pkgs/os-specific/linux/kernel-headers/default.nix b/pkgs/os-specific/linux/kernel-headers/default.nix index 677bb076b0c8..e82b785f624a 100644 --- a/pkgs/os-specific/linux/kernel-headers/default.nix +++ b/pkgs/os-specific/linux/kernel-headers/default.nix @@ -1,9 +1,8 @@ { stdenvNoCC, lib, buildPackages -, hostPlatform , fetchurl, perl }: -assert hostPlatform.isLinux; +assert stdenvNoCC.hostPlatform.isLinux; let common = { version, sha256, patches ? null }: stdenvNoCC.mkDerivation { @@ -14,14 +13,14 @@ let inherit sha256; }; - ARCH = hostPlatform.platform.kernelArch; + ARCH = stdenvNoCC.hostPlatform.platform.kernelArch; # It may look odd that we use `stdenvNoCC`, and yet explicit depend on a cc. # We do this so we have a build->build, not build->host, C compiler. depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ perl ]; - extraIncludeDirs = lib.optional hostPlatform.isPowerPC ["ppc"]; + extraIncludeDirs = lib.optional stdenvNoCC.hostPlatform.isPowerPC ["ppc"]; # "patches" array defaults to 'null' to avoid changing hash # and causing mass rebuild diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix index 4af5e80a655a..e424dff596d3 100644 --- a/pkgs/os-specific/linux/kernel/generic.nix +++ b/pkgs/os-specific/linux/kernel/generic.nix @@ -35,15 +35,14 @@ # symbolic name and `patch' is the actual patch. The patch may # optionally be compressed with gzip or bzip2. kernelPatches ? [] -, ignoreConfigErrors ? hostPlatform.platform.name != "pc" || - hostPlatform != stdenv.buildPlatform +, ignoreConfigErrors ? stdenv.hostPlatform.platform.name != "pc" || + stdenv.hostPlatform != stdenv.buildPlatform , extraMeta ? {} -, hostPlatform -# easy overrides to hostPlatform.platform members -, autoModules ? hostPlatform.platform.kernelAutoModules -, preferBuiltin ? hostPlatform.platform.kernelPreferBuiltin or false -, kernelArch ? hostPlatform.platform.kernelArch +# easy overrides to stdenv.hostPlatform.platform members +, autoModules ? stdenv.hostPlatform.platform.kernelAutoModules +, preferBuiltin ? stdenv.hostPlatform.platform.kernelPreferBuiltin or false +, kernelArch ? stdenv.hostPlatform.platform.kernelArch , mkValueOverride ? null , ... @@ -69,7 +68,7 @@ let inherit stdenv version structuredExtraConfig mkValueOverride; # append extraConfig for backwards compatibility but also means the user can't override the kernelExtraConfig part - extraConfig = extraConfig + lib.optionalString (hostPlatform.platform ? kernelExtraConfig) hostPlatform.platform.kernelExtraConfig; + extraConfig = extraConfig + lib.optionalString (stdenv.hostPlatform.platform ? kernelExtraConfig) stdenv.hostPlatform.platform.kernelExtraConfig; features = kernelFeatures; # Ensure we know of all extra patches, etc. }; @@ -93,11 +92,11 @@ let nativeBuildInputs = [ perl ] ++ lib.optionals (stdenv.lib.versionAtLeast version "4.16") [ bison flex ]; - platformName = hostPlatform.platform.name; + platformName = stdenv.hostPlatform.platform.name; # e.g. "defconfig" - kernelBaseConfig = if defconfig != null then defconfig else hostPlatform.platform.kernelBaseConfig; + kernelBaseConfig = if defconfig != null then defconfig else stdenv.hostPlatform.platform.kernelBaseConfig; # e.g. "bzImage" - kernelTarget = hostPlatform.platform.kernelTarget; + kernelTarget = stdenv.hostPlatform.platform.kernelTarget; prePatch = kernel.prePatch + '' # Patch kconfig to print "###" after every question so that @@ -128,7 +127,7 @@ let }; kernel = (callPackage ./manual-config.nix {}) { - inherit version modDirVersion src kernelPatches stdenv extraMeta configfile hostPlatform; + inherit version modDirVersion src kernelPatches stdenv extraMeta configfile; config = { CONFIG_MODULES = "y"; CONFIG_FW_LOADER = "m"; }; }; diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix index bbc985925030..000764eca9b3 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.14.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: +{ stdenv, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: with stdenv.lib; diff --git a/pkgs/os-specific/linux/kernel/linux-4.17.nix b/pkgs/os-specific/linux/kernel/linux-4.17.nix index c9a79fd23cba..5c13f366221e 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.17.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.17.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: +{ stdenv, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: with stdenv.lib; diff --git a/pkgs/os-specific/linux/kernel/linux-4.18.nix b/pkgs/os-specific/linux/kernel/linux-4.18.nix index bbd0bbfbb21c..e76beadc27bf 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.18.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.18.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: +{ stdenv, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: with stdenv.lib; diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix index a4433cc434c5..7c5f345e3400 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, ... } @ args: +{ stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args: buildLinux (args // rec { version = "4.4.153"; diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix index 8fa710a0e469..ed0075b7876b 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.9.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, ... } @ args: +{ stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args: buildLinux (args // rec { version = "4.9.124"; diff --git a/pkgs/os-specific/linux/kernel/linux-beagleboard.nix b/pkgs/os-specific/linux/kernel/linux-beagleboard.nix index 4f0ff53c59ce..e98104f11ca9 100644 --- a/pkgs/os-specific/linux/kernel/linux-beagleboard.nix +++ b/pkgs/os-specific/linux/kernel/linux-beagleboard.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ubootTools, dtc, ... } @ args: +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ubootTools, dtc, ... } @ args: let modDirVersion = "4.14.12"; diff --git a/pkgs/os-specific/linux/kernel/linux-copperhead-lts.nix b/pkgs/os-specific/linux/kernel/linux-copperhead-lts.nix index 85ad00efcd67..366cfd39e4af 100644 --- a/pkgs/os-specific/linux/kernel/linux-copperhead-lts.nix +++ b/pkgs/os-specific/linux/kernel/linux-copperhead-lts.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args: +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args: with stdenv.lib; diff --git a/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix b/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix index 2bce56e1e529..d1d7d240cce5 100644 --- a/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix +++ b/pkgs/os-specific/linux/kernel/linux-hardkernel-4.14.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, libelf, utillinux, ... } @ args: +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, libelf, utillinux, ... } @ args: buildLinux (args // rec { version = "4.14.66-147"; diff --git a/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix b/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix index 2efe357cbd68..8be59fbea903 100644 --- a/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix +++ b/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args: +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args: buildLinux (rec { mptcpVersion = "0.93"; diff --git a/pkgs/os-specific/linux/kernel/linux-mptcp.nix b/pkgs/os-specific/linux/kernel/linux-mptcp.nix index a439fd0a6ec5..8014cb565267 100644 --- a/pkgs/os-specific/linux/kernel/linux-mptcp.nix +++ b/pkgs/os-specific/linux/kernel/linux-mptcp.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args: +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args: buildLinux (rec { mptcpVersion = "0.94"; diff --git a/pkgs/os-specific/linux/kernel/linux-riscv.nix b/pkgs/os-specific/linux/kernel/linux-riscv.nix index 60370311865f..dbc69144c4da 100644 --- a/pkgs/os-specific/linux/kernel/linux-riscv.nix +++ b/pkgs/os-specific/linux/kernel/linux-riscv.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, libelf, utillinux, ... } @ args: +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, libelf, utillinux, ... } @ args: buildLinux (args // rec { version = "4.16-rc6"; diff --git a/pkgs/os-specific/linux/kernel/linux-rpi.nix b/pkgs/os-specific/linux/kernel/linux-rpi.nix index 203faed05444..e6d7b1cee9db 100644 --- a/pkgs/os-specific/linux/kernel/linux-rpi.nix +++ b/pkgs/os-specific/linux/kernel/linux-rpi.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args: +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args: let modDirVersion = "4.14.50"; diff --git a/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix b/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix index 442c89675119..0a936c6c053b 100644 --- a/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix +++ b/pkgs/os-specific/linux/kernel/linux-samus-4.12.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, ncurses, ... } @ args: +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ncurses, ... } @ args: buildLinux (args // rec { version = "4.12.2"; diff --git a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix index 1fb9866f4e95..f9d2bd11813e 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchgit, perl, buildLinux, ... } @ args: +{ stdenv, buildPackages, fetchgit, perl, buildLinux, ... } @ args: buildLinux (args // rec { version = "4.16.2018.08.03"; diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index c2feeceb0729..44f267bf7151 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args: +{ stdenv, buildPackages, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args: buildLinux (args // rec { version = "4.19-rc1"; diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix index 33aa22abaf22..2cc83e62d11e 100644 --- a/pkgs/os-specific/linux/kernel/manual-config.nix +++ b/pkgs/os-specific/linux/kernel/manual-config.nix @@ -36,8 +36,6 @@ in { allowImportFromDerivation ? false, # ignored features ? null, - - hostPlatform }: let @@ -56,8 +54,8 @@ let commonMakeFlags = [ "O=$(buildRoot)" - ] ++ stdenv.lib.optionals (hostPlatform.platform ? kernelMakeFlags) - hostPlatform.platform.kernelMakeFlags; + ] ++ stdenv.lib.optionals (stdenv.hostPlatform.platform ? kernelMakeFlags) + stdenv.hostPlatform.platform.kernelMakeFlags; drvAttrs = config_: platform: kernelPatches: configfile: let @@ -255,7 +253,7 @@ in assert stdenv.lib.versionAtLeast version "4.14" -> libelf != null; assert stdenv.lib.versionAtLeast version "4.15" -> utillinux != null; -stdenv.mkDerivation ((drvAttrs config hostPlatform.platform kernelPatches configfile) // { +stdenv.mkDerivation ((drvAttrs config stdenv.hostPlatform.platform kernelPatches configfile) // { name = "linux-${version}"; enableParallelBuilding = true; @@ -279,5 +277,5 @@ stdenv.mkDerivation ((drvAttrs config hostPlatform.platform kernelPatches config "CROSS_COMPILE=${stdenv.cc.targetPrefix}" ]; - karch = hostPlatform.platform.kernelArch; + karch = stdenv.hostPlatform.platform.kernelArch; }) diff --git a/pkgs/os-specific/linux/klibc/default.nix b/pkgs/os-specific/linux/klibc/default.nix index c503b982aa29..8cae61d56a92 100644 --- a/pkgs/os-specific/linux/klibc/default.nix +++ b/pkgs/os-specific/linux/klibc/default.nix @@ -1,6 +1,4 @@ -{ stdenv, fetchurl, linuxHeaders, perl -, buildPlatform, hostPlatform -}: +{ stdenv, fetchurl, linuxHeaders, perl }: let commonMakeFlags = [ @@ -25,12 +23,12 @@ stdenv.mkDerivation rec { hardeningDisable = [ "format" "stackprotector" ]; makeFlags = commonMakeFlags ++ [ - "KLIBCARCH=${hostPlatform.platform.kernelArch}" + "KLIBCARCH=${stdenv.hostPlatform.platform.kernelArch}" "KLIBCKERNELSRC=${linuxHeaders}" ] # TODO(@Ericson2314): We now can get the ABI from - # `hostPlatform.parsed.abi`, is this still a good idea? - ++ stdenv.lib.optional (hostPlatform.platform.kernelArch == "arm") "CONFIG_AEABI=y" - ++ stdenv.lib.optional (hostPlatform != buildPlatform) "CROSS_COMPILE=${stdenv.cc.targetPrefix}"; + # `stdenv.hostPlatform.parsed.abi`, is this still a good idea? + ++ stdenv.lib.optional (stdenv.hostPlatform.platform.kernelArch == "arm") "CONFIG_AEABI=y" + ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "CROSS_COMPILE=${stdenv.cc.targetPrefix}"; # Install static binaries as well. postInstall = '' diff --git a/pkgs/os-specific/linux/mdadm/default.nix b/pkgs/os-specific/linux/mdadm/default.nix index 6de666630bb3..52a5f16bc52c 100644 --- a/pkgs/os-specific/linux/mdadm/default.nix +++ b/pkgs/os-specific/linux/mdadm/default.nix @@ -1,6 +1,5 @@ { stdenv, writeScript , fetchurl, groff -, buildPlatform, hostPlatform }: let @@ -32,7 +31,7 @@ stdenv.mkDerivation rec { "NIXOS=1" "INSTALL=install" "INSTALL_BINDIR=$(out)/sbin" "MANDIR=$(out)/share/man" "RUN_DIR=/dev/.mdadm" "STRIP=" - ] ++ stdenv.lib.optionals (hostPlatform != buildPlatform) [ + ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "CROSS_COMPILE=${stdenv.cc.targetPrefix}" ]; diff --git a/pkgs/os-specific/linux/musl/default.nix b/pkgs/os-specific/linux/musl/default.nix index e586539db08d..9628ec516763 100644 --- a/pkgs/os-specific/linux/musl/default.nix +++ b/pkgs/os-specific/linux/musl/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchurl, hostPlatform +{ stdenv, lib, fetchurl , linuxHeaders ? null , useBSDCompatHeaders ? true }: @@ -61,7 +61,7 @@ stdenv.mkDerivation rec { configureFlagsArray+=("--syslibdir=$out/lib") ''; - CFLAGS="-fstack-protector-strong" + lib.optionalString hostPlatform.isPower " -mlong-double-64"; + CFLAGS="-fstack-protector-strong" + lib.optionalString stdenv.hostPlatform.isPower " -mlong-double-64"; configureFlags = [ "--enable-shared" diff --git a/pkgs/os-specific/linux/pam/default.nix b/pkgs/os-specific/linux/pam/default.nix index 0e7033972496..9db581ad527d 100644 --- a/pkgs/os-specific/linux/pam/default.nix +++ b/pkgs/os-specific/linux/pam/default.nix @@ -1,4 +1,4 @@ -{ stdenv, buildPackages, hostPlatform, fetchurl, fetchpatch, flex, cracklib, db4 }: +{ stdenv, buildPackages, fetchurl, fetchpatch, flex, cracklib, db4 }: stdenv.mkDerivation rec { name = "linux-pam-${version}"; @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { sha256 = "1fyi04d5nsh8ivd0rn2y0z83ylgc0licz7kifbb6xxi2ylgfs6i4"; }; - patches = stdenv.lib.optionals (hostPlatform.libc == "musl") [ + patches = stdenv.lib.optionals (stdenv.hostPlatform.libc == "musl") [ (fetchpatch { url = "https://git.alpinelinux.org/cgit/aports/plain/main/linux-pam/fix-compat.patch?id=05a62bda8ec255d7049a2bd4cf0fdc4b32bdb2cc"; sha256 = "1h5yp5h2mqp1fcwiwwklyfpa69a3i03ya32pivs60fd7g5bqa7sf"; @@ -47,7 +47,7 @@ stdenv.mkDerivation rec { preConfigure = '' configureFlags="$configureFlags --includedir=$out/include/security" - '' + stdenv.lib.optionalString (hostPlatform.libc == "musl") '' + '' + stdenv.lib.optionalString (stdenv.hostPlatform.libc == "musl") '' # export ac_cv_search_crypt=no # (taken from Alpine linux, apparently insecure but also doesn't build O:)) # disable insecure modules diff --git a/pkgs/os-specific/linux/shadow/default.nix b/pkgs/os-specific/linux/shadow/default.nix index 885ea3421f65..8c778e72b704 100644 --- a/pkgs/os-specific/linux/shadow/default.nix +++ b/pkgs/os-specific/linux/shadow/default.nix @@ -1,15 +1,14 @@ { stdenv, fetchpatch, fetchFromGitHub, autoreconfHook, libxslt, libxml2 , docbook_xml_dtd_412, docbook_xsl, gnome-doc-utils, flex, bison , pam ? null, glibcCross ? null -, buildPlatform, hostPlatform }: let glibc = - if hostPlatform != buildPlatform + if stdenv.hostPlatform != stdenv.buildPlatform then glibcCross - else assert hostPlatform.libc == "glibc"; stdenv.cc.libc; + else assert stdenv.hostPlatform.libc == "glibc"; stdenv.cc.libc; dots_in_usernames = fetchpatch { url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/shadow/files/shadow-4.1.3-dots-in-usernames.patch; @@ -63,9 +62,9 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-man" "--with-group-name-max-length=32" - ] ++ stdenv.lib.optional (hostPlatform.libc != "glibc") "--disable-nscd"; + ] ++ stdenv.lib.optional (stdenv.hostPlatform.libc != "glibc") "--disable-nscd"; - preBuild = stdenv.lib.optionalString (hostPlatform.libc == "glibc") + preBuild = stdenv.lib.optionalString (stdenv.hostPlatform.libc == "glibc") '' substituteInPlace lib/nscd.c --replace /usr/sbin/nscd ${glibc.bin}/bin/nscd ''; diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index 912ba5b5e0ef..b4caa63799c7 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -8,7 +8,6 @@ , ninja, meson, python3Packages, glibcLocales , patchelf , getent -, hostPlatform , buildPackages , withSelinux ? false, libselinux , withLibseccomp ? libseccomp.meta.available, libseccomp @@ -79,7 +78,7 @@ in stdenv.mkDerivation rec { "-Dsystem-gid-max=499" # "-Dtime-epoch=1" - (if stdenv.isAarch32 || stdenv.isAarch64 || !hostPlatform.isEfi then "-Dgnu-efi=false" else "-Dgnu-efi=true") + (if stdenv.isAarch32 || stdenv.isAarch64 || !stdenv.hostPlatform.isEfi then "-Dgnu-efi=false" else "-Dgnu-efi=true") "-Defi-libdir=${toString gnu-efi}/lib" "-Defi-includedir=${toString gnu-efi}/include/efi" "-Defi-ldsdir=${toString gnu-efi}/lib" diff --git a/pkgs/os-specific/linux/uclibc/default.nix b/pkgs/os-specific/linux/uclibc/default.nix index 3da12c41dc12..de1e47faf666 100644 --- a/pkgs/os-specific/linux/uclibc/default.nix +++ b/pkgs/os-specific/linux/uclibc/default.nix @@ -1,6 +1,5 @@ { stdenv, buildPackages , fetchurl, linuxHeaders, libiconvReal -, buildPlatform, hostPlatform , extraConfig ? "" }: @@ -40,7 +39,7 @@ let UCLIBC_SUSV4_LEGACY y UCLIBC_HAS_THREADS_NATIVE y KERNEL_HEADERS "${linuxHeaders}/include" - '' + stdenv.lib.optionalString (stdenv.isAarch32 && buildPlatform != hostPlatform) '' + '' + stdenv.lib.optionalString (stdenv.isAarch32 && stdenv.buildPlatform != stdenv.hostPlatform) '' CONFIG_ARM_EABI y ARCH_WANTS_BIG_ENDIAN n ARCH_BIG_ENDIAN n @@ -69,7 +68,7 @@ stdenv.mkDerivation { cat << EOF | parseconfig ${nixConfig} ${extraConfig} - ${hostPlatform.platform.uclibc.extraConfig or ""} + ${stdenv.hostPlatform.platform.uclibc.extraConfig or ""} EOF ( set +o pipefail; yes "" | make oldconfig ) ''; @@ -82,7 +81,7 @@ stdenv.mkDerivation { depsBuildBuild = [ buildPackages.stdenv.cc ]; makeFlags = [ - "ARCH=${hostPlatform.parsed.cpu.name}" + "ARCH=${stdenv.hostPlatform.parsed.cpu.name}" "VERBOSE=1" ] ++ stdenv.lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ "CROSS=${stdenv.cc.targetPrefix}" diff --git a/pkgs/os-specific/windows/pthread-w32/default.nix b/pkgs/os-specific/windows/pthread-w32/default.nix index e84270270f8a..226bbfb16df1 100644 --- a/pkgs/os-specific/windows/pthread-w32/default.nix +++ b/pkgs/os-specific/windows/pthread-w32/default.nix @@ -1,7 +1,7 @@ -{ fetchurl, stdenv, hostPlatform, buildPlatform, mingwrt }: +{ fetchurl, stdenv, mingwrt }: # This file is tweaked for cross-compilation only. -assert hostPlatform != buildPlatform; +assert stdenv.hostPlatform != stdenv.buildPlatform; stdenv.mkDerivation { name = "pthread-w32-1.10.0"; diff --git a/pkgs/os-specific/windows/wxMSW-2.8/default.nix b/pkgs/os-specific/windows/wxMSW-2.8/default.nix index 748bf39a1f20..65690af98697 100644 --- a/pkgs/os-specific/windows/wxMSW-2.8/default.nix +++ b/pkgs/os-specific/windows/wxMSW-2.8/default.nix @@ -1,6 +1,4 @@ -{ stdenv, fetchurl, compat24 ? false, compat26 ? true, unicode ? true -, hostPlatform -}: +{ stdenv, fetchurl, compat24 ? false, compat26 ? true, unicode ? true }: stdenv.mkDerivation { name = "wxMSW-2.8.11"; diff --git a/pkgs/shells/bash/4.4.nix b/pkgs/shells/bash/4.4.nix index de8efd5af270..313a2710b287 100644 --- a/pkgs/shells/bash/4.4.nix +++ b/pkgs/shells/bash/4.4.nix @@ -1,6 +1,5 @@ { stdenv, buildPackages , fetchurl, binutils ? null, bison, autoconf, utillinux -, buildPlatform, hostPlatform # patch for cygwin requires readline support , interactive ? stdenv.isCygwin, readline70 ? null @@ -11,7 +10,7 @@ with stdenv.lib; assert interactive -> readline70 != null; assert withDocs -> texinfo != null; -assert hostPlatform.isDarwin -> binutils != null; +assert stdenv.hostPlatform.isDarwin -> binutils != null; let upstreamPatches = import ./bash-4.4-patches.nix (nr: sha256: fetchurl { @@ -45,26 +44,26 @@ stdenv.mkDerivation rec { patchFlags = "-p0"; patches = upstreamPatches - ++ optional hostPlatform.isCygwin ./cygwin-bash-4.4.11-2.src.patch + ++ optional stdenv.hostPlatform.isCygwin ./cygwin-bash-4.4.11-2.src.patch # https://lists.gnu.org/archive/html/bug-bash/2016-10/msg00006.html - ++ optional hostPlatform.isMusl (fetchurl { + ++ optional stdenv.hostPlatform.isMusl (fetchurl { url = "https://lists.gnu.org/archive/html/bug-bash/2016-10/patchJxugOXrY2y.patch"; sha256 = "1m4v9imidb1cc1h91f2na0b8y9kc5c5fgmpvy9apcyv2kbdcghg1"; }); configureFlags = [ (if interactive then "--with-installed-readline" else "--disable-readline") - ] ++ optionals (hostPlatform != buildPlatform) [ + ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "bash_cv_job_control_missing=nomissing" "bash_cv_sys_named_pipes=nomissing" "bash_cv_getcwd_malloc=yes" - ] ++ optionals hostPlatform.isCygwin [ + ] ++ optionals stdenv.hostPlatform.isCygwin [ "--without-libintl-prefix --without-libiconv-prefix" "--with-installed-readline" "bash_cv_dev_stdin=present" "bash_cv_dev_fd=standard" "bash_cv_termcap_lib=libncurses" - ] ++ optionals (hostPlatform.libc == "musl") [ + ] ++ optionals (stdenv.hostPlatform.libc == "musl") [ "--without-bash-malloc" "--disable-nls" ]; @@ -73,8 +72,8 @@ stdenv.mkDerivation rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ bison ] ++ optional withDocs texinfo - ++ optional hostPlatform.isDarwin binutils - ++ optional (hostPlatform.libc == "musl") autoconf; + ++ optional stdenv.hostPlatform.isDarwin binutils + ++ optional (stdenv.hostPlatform.libc == "musl") autoconf; buildInputs = optional interactive readline70; @@ -82,7 +81,7 @@ stdenv.mkDerivation rec { # build `version.h'. enableParallelBuilding = false; - makeFlags = optional hostPlatform.isCygwin [ + makeFlags = optional stdenv.hostPlatform.isCygwin [ "LOCAL_LDFLAGS=-Wl,--export-all,--out-implib,libbash.dll.a" "SHOBJ_LIBS=-lbash" ]; diff --git a/pkgs/stdenv/cross/default.nix b/pkgs/stdenv/cross/default.nix index bc8d772530a1..31ca9f2c82e4 100644 --- a/pkgs/stdenv/cross/default.nix +++ b/pkgs/stdenv/cross/default.nix @@ -23,8 +23,9 @@ in lib.init bootStages ++ [ inherit config overlays; selfBuild = false; stdenv = - assert vanillaPackages.hostPlatform == localSystem; - assert vanillaPackages.targetPlatform == localSystem; + assert vanillaPackages.stdenv.buildPlatform == localSystem; + assert vanillaPackages.stdenv.hostPlatform == localSystem; + assert vanillaPackages.stdenv.targetPlatform == localSystem; vanillaPackages.stdenv.override { targetPlatform = crossSystem; }; # It's OK to change the built-time dependencies allowCustomOverrides = true; diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index 22dd700b2dda..cda643c42fe3 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -348,10 +348,10 @@ in rec { darwin = super.darwin // { inherit (darwin) dyld ICU Libsystem libiconv; - } // lib.optionalAttrs (super.targetPlatform == localSystem) { + } // lib.optionalAttrs (super.stdenv.targetPlatform == localSystem) { inherit (darwin) binutils binutils-unwrapped cctools; }; - } // lib.optionalAttrs (super.targetPlatform == localSystem) { + } // lib.optionalAttrs (super.stdenv.targetPlatform == localSystem) { # Need to get rid of these when cross-compiling. inherit binutils binutils-unwrapped; }; diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index c7fc2ebac35b..de58178a34ba 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -366,7 +366,7 @@ in gnumake gnused gnutar gnugrep gnupatch patchelf attr acl paxctl zlib pcre; ${localSystem.libc} = getLibc prevStage; - } // lib.optionalAttrs (super.targetPlatform == localSystem) { + } // lib.optionalAttrs (super.stdenv.targetPlatform == localSystem) { # Need to get rid of these when cross-compiling. inherit (prevStage) binutils binutils-unwrapped; gcc = cc; diff --git a/pkgs/tools/archivers/zpaq/zpaqd.nix b/pkgs/tools/archivers/zpaq/zpaqd.nix index 0d60e7962460..344f08890906 100644 --- a/pkgs/tools/archivers/zpaq/zpaqd.nix +++ b/pkgs/tools/archivers/zpaq/zpaqd.nix @@ -1,6 +1,4 @@ -{ stdenv, fetchurl, unzip -, hostPlatform -}: +{ stdenv, fetchurl, unzip }: let # Generated upstream information @@ -14,10 +12,10 @@ let }; compileFlags = stdenv.lib.concatStringsSep " " ([ "-O3" "-mtune=generic" "-DNDEBUG" ] - ++ stdenv.lib.optional (hostPlatform.isUnix) "-Dunix -pthread" - ++ stdenv.lib.optional (hostPlatform.isi686) "-march=i686" - ++ stdenv.lib.optional (hostPlatform.isx86_64) "-march=nocona" - ++ stdenv.lib.optional (!hostPlatform.isx86) "-DNOJIT"); + ++ stdenv.lib.optional (stdenv.hostPlatform.isUnix) "-Dunix -pthread" + ++ stdenv.lib.optional (stdenv.hostPlatform.isi686) "-march=i686" + ++ stdenv.lib.optional (stdenv.hostPlatform.isx86_64) "-march=nocona" + ++ stdenv.lib.optional (!stdenv.hostPlatform.isx86) "-DNOJIT"); in stdenv.mkDerivation { inherit (s) name version; diff --git a/pkgs/tools/graphics/optipng/default.nix b/pkgs/tools/graphics/optipng/default.nix index fd0b0caea4ca..bc849b21117f 100644 --- a/pkgs/tools/graphics/optipng/default.nix +++ b/pkgs/tools/graphics/optipng/default.nix @@ -1,5 +1,4 @@ { stdenv, fetchurl, libpng, static ? false -, buildPlatform, hostPlatform }: # This package comes with its own copy of zlib, libpng and pngxtern @@ -26,11 +25,11 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-system-zlib" "--with-system-libpng" - ] ++ stdenv.lib.optionals (hostPlatform != buildPlatform) [ + ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ #"-prefix=$out" ]; - postInstall = if hostPlatform != buildPlatform && hostPlatform.isWindows then '' + postInstall = if stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform.isWindows then '' mv "$out"/bin/optipng{,.exe} '' else null; diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 69d751a629ea..6ffdd3b5d47d 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -1,6 +1,5 @@ { stdenv, lib, buildPackages , autoreconfHook, texinfo, fetchurl, perl, xz, libiconv, gmp ? null -, hostPlatform, buildPlatform , aclSupport ? false, acl ? null , attrSupport ? false, attr ? null , selinuxSupport? false, libselinux ? null, libsepol ? null @@ -21,10 +20,10 @@ stdenv.mkDerivation rec { sha256 = "0plm1zs9il6bb5mk881qvbghq4glc8ybbgakk2lfzb0w64fgml4j"; }; - patches = optional hostPlatform.isCygwin ./coreutils-8.23-4.cygwin.patch; + patches = optional stdenv.hostPlatform.isCygwin ./coreutils-8.23-4.cygwin.patch; # The test tends to fail on btrfs and maybe other unusual filesystems. - postPatch = optionalString (!hostPlatform.isDarwin) '' + postPatch = optionalString (!stdenv.hostPlatform.isDarwin) '' sed '2i echo Skipping dd sparse test && exit 0' -i ./tests/dd/sparse.sh sed '2i echo Skipping cp sparse test && exit 0' -i ./tests/cp/sparse.sh sed '2i echo Skipping rm deep-2 test && exit 0' -i ./tests/rm/deep-2.sh @@ -40,9 +39,9 @@ stdenv.mkDerivation rec { configureFlags = optional (singleBinary != false) ("--enable-single-binary" + optionalString (isString singleBinary) "=${singleBinary}") - ++ optional hostPlatform.isSunOS "ac_cv_func_inotify_init=no" + ++ optional stdenv.hostPlatform.isSunOS "ac_cv_func_inotify_init=no" ++ optional withPrefix "--program-prefix=g" - ++ optionals (hostPlatform != buildPlatform && hostPlatform.libc == "glibc") [ + ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform.libc == "glibc") [ # TODO(19b98110126fde7cbb1127af7e3fe1568eacad3d): Needed for fstatfs() I # don't know why it is not properly detected cross building with glibc. "fu_cv_sys_stat_statfs2_bsize=yes" @@ -52,37 +51,37 @@ stdenv.mkDerivation rec { buildInputs = [ gmp ] ++ optional aclSupport acl ++ optional attrSupport attr - ++ optionals hostPlatform.isCygwin [ autoreconfHook texinfo ] # due to patch + ++ optionals stdenv.hostPlatform.isCygwin [ autoreconfHook texinfo ] # due to patch ++ optionals selinuxSupport [ libselinux libsepol ] # TODO(@Ericson2314): Investigate whether Darwin could benefit too - ++ optional (hostPlatform != buildPlatform && hostPlatform.libc != "glibc") libiconv; + ++ optional (stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform.libc != "glibc") libiconv; # The tests are known broken on Cygwin # (http://thread.gmane.org/gmane.comp.gnu.core-utils.bugs/19025), # Darwin (http://thread.gmane.org/gmane.comp.gnu.core-utils.bugs/19351), # and {Open,Free}BSD. # With non-standard storeDir: https://github.com/NixOS/nix/issues/512 - doCheck = hostPlatform == buildPlatform - && hostPlatform.libc == "glibc" + doCheck = stdenv.hostPlatform == stdenv.buildPlatform + && stdenv.hostPlatform.libc == "glibc" && builtins.storeDir == "/nix/store"; # Prevents attempts of running 'help2man' on cross-built binaries. - PERL = if hostPlatform == buildPlatform then null else "missing"; + PERL = if stdenv.hostPlatform == stdenv.buildPlatform then null else "missing"; # Saw random failures like ‘help2man: can't get '--help' info from # man/sha512sum.td/sha512sum’. enableParallelBuilding = false; NIX_LDFLAGS = optionalString selinuxSupport "-lsepol"; - FORCE_UNSAFE_CONFIGURE = optionalString hostPlatform.isSunOS "1"; + FORCE_UNSAFE_CONFIGURE = optionalString stdenv.hostPlatform.isSunOS "1"; # Works around a bug with 8.26: # Makefile:3440: *** Recursive variable 'INSTALL' references itself (eventually). Stop. - preInstall = optionalString (hostPlatform != buildPlatform) '' + preInstall = optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' sed -i Makefile -e 's|^INSTALL =.*|INSTALL = ${buildPackages.coreutils}/bin/install -c|' ''; - postInstall = optionalString (hostPlatform != buildPlatform) '' + postInstall = optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' rm $out/share/man/man1/* cp ${buildPackages.coreutils}/share/man/man1/* $out/share/man/man1 ''; diff --git a/pkgs/tools/misc/findutils/default.nix b/pkgs/tools/misc/findutils/default.nix index 66b7ef4c2919..d6eca100411b 100644 --- a/pkgs/tools/misc/findutils/default.nix +++ b/pkgs/tools/misc/findutils/default.nix @@ -1,6 +1,5 @@ { stdenv, fetchurl , coreutils -, buildPlatform, hostPlatform }: stdenv.mkDerivation rec { @@ -17,10 +16,10 @@ stdenv.mkDerivation rec { # Since glibc-2.25 the i686 tests hang reliably right after test-sleep. doCheck - = !hostPlatform.isDarwin - && !(hostPlatform.libc == "glibc" && hostPlatform.isi686) - && (hostPlatform.libc != "musl") - && hostPlatform == buildPlatform; + = !stdenv.hostPlatform.isDarwin + && !(stdenv.hostPlatform.libc == "glibc" && stdenv.hostPlatform.isi686) + && (stdenv.hostPlatform.libc != "musl") + && stdenv.hostPlatform == stdenv.buildPlatform; outputs = [ "out" "info" ]; diff --git a/pkgs/tools/misc/otfcc/default.nix b/pkgs/tools/misc/otfcc/default.nix index 052999033a1e..acf46a58a6bf 100644 --- a/pkgs/tools/misc/otfcc/default.nix +++ b/pkgs/tools/misc/otfcc/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, premake5, ninja, hostPlatform }: +{ stdenv, fetchFromGitHub, premake5, ninja }: stdenv.mkDerivation rec { name = "otfcc-${version}"; @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { premake5 ninja ''; - ninjaFlags = let x = if hostPlatform.isi686 then "x86" else "x64"; in + ninjaFlags = let x = if stdenv.hostPlatform.isi686 then "x86" else "x64"; in [ "-C" "build/ninja" "otfccdump_release_${x}" "otfccbuild_release_${x}" ]; installPhase = '' diff --git a/pkgs/tools/misc/ttyrec/default.nix b/pkgs/tools/misc/ttyrec/default.nix index c7cd71ffb6d7..ca6651718117 100644 --- a/pkgs/tools/misc/ttyrec/default.nix +++ b/pkgs/tools/misc/ttyrec/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, buildPlatform }: +{ stdenv, fetchurl }: stdenv.mkDerivation rec { name = "ttyrec-${version}"; @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { patches = [ ./clang-fixes.patch ]; - makeFlags = stdenv.lib.optional buildPlatform.isLinux "CFLAGS=-DSVR4" + makeFlags = stdenv.lib.optional stdenv.buildPlatform.isLinux "CFLAGS=-DSVR4" ++ stdenv.lib.optional stdenv.cc.isClang "CC=clang"; installPhase = '' diff --git a/pkgs/tools/package-management/cargo-edit/cargo-edit.nix b/pkgs/tools/package-management/cargo-edit/cargo-edit.nix index 67aa52f47894..7224c11f183f 100644 --- a/pkgs/tools/package-management/cargo-edit/cargo-edit.nix +++ b/pkgs/tools/package-management/cargo-edit/cargo-edit.nix @@ -2,7 +2,7 @@ { pkgs }: with pkgs; -let kernel = buildPlatform.parsed.kernel.name; +let kernel = stdenv.buildPlatform.parsed.kernel.name; updateFeatures = f: up: functions: builtins.deepSeq f (lib.lists.foldl' (features: fun: fun features) (lib.attrsets.recursiveUpdate f up) functions); mapFeatures = features: map (fun: fun { features = features; }); mkFeatures = feat: lib.lists.foldl (features: featureName: diff --git a/pkgs/tools/package-management/cargo-update/cargo-update.nix b/pkgs/tools/package-management/cargo-update/cargo-update.nix index 83fdaad5bfdb..1bd8aadf4982 100644 --- a/pkgs/tools/package-management/cargo-update/cargo-update.nix +++ b/pkgs/tools/package-management/cargo-update/cargo-update.nix @@ -1,7 +1,7 @@ # Generated by carnix 0.6.6: carnix -o cargo-update.nix --src ./. Cargo.lock --standalone -{ lib, buildPlatform, buildRustCrate, fetchgit }: -let kernel = buildPlatform.parsed.kernel.name; - abi = buildPlatform.parsed.abi.name; +{ lib, stdenv, buildRustCrate, fetchgit }: +let kernel = stdenv.hostPlatform.parsed.kernel.name; + abi = stdenv.hostPlatform.parsed.abi.name; include = includedFiles: src: builtins.filterSource (path: type: lib.lists.any (f: let p = toString (src + ("/" + f)); in diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index c06a4f41afb1..bc07dd457f38 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -2,7 +2,6 @@ , pkgconfig, boehmgc, perlPackages, libsodium, aws-sdk-cpp, brotli, boost , autoreconfHook, autoconf-archive, bison, flex, libxml2, libxslt, docbook5, docbook_xsl_ns , busybox-sandbox-shell -, hostPlatform, buildPlatform , storeDir ? "/nix/store" , stateDir ? "/nix/var" , confDir ? "/etc" @@ -73,8 +72,8 @@ let "--with-sandbox-shell=${sh}/bin/busybox" ] ++ lib.optional ( - hostPlatform != buildPlatform && hostPlatform ? nix && hostPlatform.nix ? system - ) ''--with-system=${hostPlatform.nix.system}'' + stdenv.hostPlatform != stdenv.buildPlatform && stdenv.hostPlatform ? nix && stdenv.hostPlatform.nix ? system + ) ''--with-system=${stdenv.hostPlatform.nix.system}'' # RISC-V support in progress https://github.com/seccomp/libseccomp/pull/50 ++ lib.optional (!libseccomp.meta.available) "--disable-seccomp-sandboxing"; diff --git a/pkgs/tools/text/gnupatch/default.nix b/pkgs/tools/text/gnupatch/default.nix index 0ad2a18236f6..e22850a63f01 100644 --- a/pkgs/tools/text/gnupatch/default.nix +++ b/pkgs/tools/text/gnupatch/default.nix @@ -1,6 +1,5 @@ { stdenv, fetchurl , ed, autoreconfHook -, buildPlatform, hostPlatform }: stdenv.mkDerivation rec { @@ -27,11 +26,11 @@ stdenv.mkDerivation rec { buildInputs = stdenv.lib.optional doCheck ed; nativeBuildInputs = [ autoreconfHook ]; - configureFlags = stdenv.lib.optionals (hostPlatform != buildPlatform) [ + configureFlags = stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "ac_cv_func_strnlen_working=yes" ]; - doCheck = hostPlatform.libc != "musl"; # not cross; + doCheck = stdenv.hostPlatform.libc != "musl"; # not cross; meta = { description = "GNU Patch, a program to apply differences to files"; diff --git a/pkgs/tools/text/html-tidy/default.nix b/pkgs/tools/text/html-tidy/default.nix index ccd927002464..51ce4baa0beb 100644 --- a/pkgs/tools/text/html-tidy/default.nix +++ b/pkgs/tools/text/html-tidy/default.nix @@ -1,6 +1,4 @@ -{ stdenv, fetchFromGitHub, cmake, libxslt -, hostPlatform -}: +{ stdenv, fetchFromGitHub, cmake, libxslt }: stdenv.mkDerivation rec { name = "html-tidy-${version}"; @@ -16,7 +14,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake libxslt/*manpage*/ ]; cmakeFlags = stdenv.lib.optional - (hostPlatform.libc or null == "msvcrt") "-DCMAKE_SYSTEM_NAME=Windows"; + (stdenv.hostPlatform.libc or null == "msvcrt") "-DCMAKE_SYSTEM_NAME=Windows"; # ATM bin/tidy is statically linked, as upstream provides no other option yet. # https://github.com/htacg/tidy-html5/issues/326#issuecomment-160322107 diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 634a3e4c17e4..a84c2e154d92 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -151,7 +151,7 @@ mapAliases ({ libgnome_keyring = libgnome-keyring; # added 2018-02-25 libgnome_keyring3 = libgnome-keyring3; # added 2018-02-25 libgumbo = gumbo; # added 2018-01-21 - libintlOrEmpty = stdenv.lib.optional (!stdenv.isLinux || hostPlatform.libc != "glibc") gettext; # added 2018-03-14 + libintlOrEmpty = stdenv.lib.optional (!stdenv.isLinux || stdenv.hostPlatform.libc != "glibc") gettext; # added 2018-03-14 libjson_rpc_cpp = libjson-rpc-cpp; # added 2017-02-28 libmysql = mysql.connector-c; # added # 2017-12-28, this was a misnomer refering to libmysqlclient librecad2 = librecad; # backwards compatibility alias, added 2015-10 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d6bb0f3cc4e3..c3b783d9d871 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18,7 +18,7 @@ with pkgs; # A stdenv capable of building 32-bit binaries. On x86_64-linux, # it uses GCC compiled with multilib support; on i686-linux, it's # just the plain stdenv. - stdenv_32bit = lowPrio (if hostPlatform.is32bit then stdenv else multiStdenv); + stdenv_32bit = lowPrio (if stdenv.hostPlatform.is32bit then stdenv else multiStdenv); stdenvNoCC = stdenv.override { cc = null; }; @@ -6421,7 +6421,7 @@ with pkgs; cc = gcc; # Remove libcxx/libcxxabi, and add clang for AS if on darwin (it uses # clang's internal assembler). - extraBuildInputs = lib.optional hostPlatform.isDarwin clang.cc; + extraBuildInputs = lib.optional stdenv.hostPlatform.isDarwin clang.cc; }; gcc7Stdenv = overrideCC gccStdenv gcc7; @@ -6478,11 +6478,11 @@ with pkgs; # The GCC used to build libc for the target platform. Normal gccs will be # built with, and use, that cross-compiled libc. - gccCrossStageStatic = assert targetPlatform != buildPlatform; let + gccCrossStageStatic = assert stdenv.targetPlatform != stdenv.hostPlatform; let libcCross1 = - if targetPlatform.libc == "msvcrt" then targetPackages.windows.mingw_w64_headers - else if targetPlatform.libc == "libSystem" then darwin.xcode - else if targetPlatform.libc == "musl" then musl + if stdenv.targetPlatform.libc == "msvcrt" then targetPackages.windows.mingw_w64_headers + else if stdenv.targetPlatform.libc == "libSystem" then darwin.xcode + else if stdenv.targetPlatform.libc == "musl" then musl else null; binutils1 = wrapBintoolsWith { bintools = binutils-unwrapped; @@ -6513,7 +6513,7 @@ with pkgs; # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion profiledCompiler = with stdenv; (!isSunOS && !isDarwin && (isi686 || isx86_64)); - libcCross = if targetPlatform != buildPlatform then libcCross else null; + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; isl = if !stdenv.isDarwin then isl_0_14 else null; cloog = if !stdenv.isDarwin then cloog else null; @@ -6526,7 +6526,7 @@ with pkgs; # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); - libcCross = if targetPlatform != buildPlatform then libcCross else null; + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; isl = if !stdenv.isDarwin then isl_0_11 else null; @@ -6539,7 +6539,7 @@ with pkgs; # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); - libcCross = if targetPlatform != buildPlatform then libcCross else null; + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; isl = if !stdenv.isDarwin then isl_0_14 else null; })); @@ -6550,7 +6550,7 @@ with pkgs; # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); - libcCross = if targetPlatform != buildPlatform then libcCross else null; + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; isl = if !stdenv.isDarwin then isl_0_14 else null; })); @@ -6561,7 +6561,7 @@ with pkgs; # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); - libcCross = if targetPlatform != buildPlatform then libcCross else null; + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; isl = if !stdenv.isDarwin then isl_0_17 else null; })); @@ -6572,7 +6572,7 @@ with pkgs; # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); - libcCross = if targetPlatform != buildPlatform then libcCross else null; + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; isl = if !stdenv.isDarwin then isl_0_17 else null; })); @@ -6583,7 +6583,7 @@ with pkgs; # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); - libcCross = if targetPlatform != buildPlatform then libcCross else null; + libcCross = if stdenv.targetPlatform != stdenv.buildPlatform then libcCross else null; isl = isl_0_17; })); @@ -7284,13 +7284,13 @@ with pkgs; # Others should instead delegate to the next stage's choice with # `targetPackages.stdenv.cc.bintools`. This one is different just to # provide the default choice, avoiding infinite recursion. - bintools ? if targetPlatform.isDarwin then darwin.binutils else binutils + bintools ? if stdenv.targetPlatform.isDarwin then darwin.binutils else binutils , libc ? bintools.libc , ... } @ extraArgs: callPackage ../build-support/cc-wrapper (let self = { - nativeTools = targetPlatform == hostPlatform && stdenv.cc.nativeTools or false; - nativeLibc = targetPlatform == hostPlatform && stdenv.cc.nativeLibc or false; + nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false; + nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false; nativePrefix = stdenv.cc.nativePrefix or ""; noLibc = !self.nativeLibc && (self.libc == null); @@ -7306,12 +7306,12 @@ with pkgs; wrapBintoolsWith = { bintools - , libc ? if targetPlatform != hostPlatform then libcCross else stdenv.cc.libc + , libc ? if stdenv.targetPlatform != stdenv.hostPlatform then libcCross else stdenv.cc.libc , ... } @ extraArgs: callPackage ../build-support/bintools-wrapper (let self = { - nativeTools = targetPlatform == hostPlatform && stdenv.cc.nativeTools or false; - nativeLibc = targetPlatform == hostPlatform && stdenv.cc.nativeLibc or false; + nativeTools = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeTools or false; + nativeLibc = stdenv.targetPlatform == stdenv.hostPlatform && stdenv.cc.nativeLibc or false; nativePrefix = stdenv.cc.nativePrefix or ""; noLibc = (self.libc == null); @@ -7950,7 +7950,7 @@ with pkgs; binutils-unwrapped = callPackage ../development/tools/misc/binutils { # FHS sys dirs presumably only have stuff for the build platform - noSysDirs = (targetPlatform != buildPlatform) || noSysDirs; + noSysDirs = (stdenv.targetPlatform != stdenv.hostPlatform) || noSysDirs; }; binutils = wrapBintoolsWith { bintools = binutils-unwrapped; @@ -8936,8 +8936,8 @@ with pkgs; bicgl = callPackage ../development/libraries/science/biology/bicgl { }; # TODO(@Ericson2314): Build bionic libc from source - bionic = assert hostPlatform.useAndroidPrebuilt; - androidenv."androidndkPkgs_${hostPlatform.ndkVer}".libraries; + bionic = assert stdenv.hostPlatform.useAndroidPrebuilt; + androidenv."androidndkPkgs_${stdenv.hostPlatform.ndkVer}".libraries; bobcat = callPackage ../development/libraries/bobcat { }; @@ -9516,14 +9516,14 @@ with pkgs; else if name == "uclibc" then targetPackages.uclibcCross else if name == "musl" then targetPackages.muslCross or muslCross else if name == "msvcrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64 - else if targetPlatform.useiOSPrebuilt then targetPackages.darwin.iosSdkPkgs.libraries + else if stdenv.targetPlatform.useiOSPrebuilt then targetPackages.darwin.iosSdkPkgs.libraries else if name == "libSystem" then targetPackages.darwin.xcode else throw "Unknown libc"; - libcCross = assert targetPlatform != buildPlatform; libcCrossChooser targetPlatform.libc; + libcCross = assert stdenv.targetPlatform != stdenv.buildPlatform; libcCrossChooser stdenv.targetPlatform.libc; # Only supported on Linux, using glibc - glibcLocales = if hostPlatform.libc == "glibc" then callPackage ../development/libraries/glibc/locales.nix { } else null; + glibcLocales = if stdenv.hostPlatform.libc == "glibc" then callPackage ../development/libraries/glibc/locales.nix { } else null; glibcInfo = callPackage ../development/libraries/glibc/info.nix { }; @@ -9641,7 +9641,7 @@ with pkgs; gnu-config = callPackage ../development/libraries/gnu-config { }; - gnu-efi = if hostPlatform.isEfi + gnu-efi = if stdenv.hostPlatform.isEfi then callPackage ../development/libraries/gnu-efi { } else null; @@ -10587,11 +10587,11 @@ with pkgs; # We also provide `libiconvReal`, which will always be a standalone libiconv, # just in case you want it regardless of platform. libiconv = - if (hostPlatform.libc == "glibc" || hostPlatform.libc == "musl") - then glibcIconv (if hostPlatform != buildPlatform + if (stdenv.hostPlatform.libc == "glibc" || stdenv.hostPlatform.libc == "musl") + then glibcIconv (if stdenv.hostPlatform != stdenv.buildPlatform then libcCross else stdenv.cc.libc) - else if hostPlatform.isDarwin + else if stdenv.hostPlatform.isDarwin then darwin.libiconv else libiconvReal; @@ -10608,7 +10608,7 @@ with pkgs; }; # On non-GNU systems we need GNU Gettext for libintl. - libintl = if hostPlatform.libc != "glibc" then gettext else null; + libintl = if stdenv.hostPlatform.libc != "glibc" then gettext else null; libid3tag = callPackage ../development/libraries/libid3tag { gperf = gperf_3_0; @@ -11251,7 +11251,7 @@ with pkgs; abiVersion = "6"; }; ncurses = - if hostPlatform.useiOSPrebuilt + if stdenv.hostPlatform.useiOSPrebuilt then null else callPackage ../development/libraries/ncurses { }; @@ -14213,7 +14213,6 @@ with pkgs; linuxPackages_custom = { version, src, configfile, allowImportFromDerivation ? true }: recurseIntoAttrs (linuxPackagesFor (pkgs.linuxManualConfig { inherit version src configfile stdenv allowImportFromDerivation; - inherit (stdenv) hostPlatform; })); # This serves as a test for linuxPackages_custom @@ -22301,7 +22300,7 @@ with pkgs; mount wall hostname more sysctl getconf getent locale killall xxd watch; - fts = if hostPlatform.isMusl then netbsd.fts else null; + fts = if stdenv.hostPlatform.isMusl then netbsd.fts else null; inherit (recurseIntoAttrs (callPackages ../os-specific/bsd { })) netbsd; diff --git a/pkgs/top-level/darwin-packages.nix b/pkgs/top-level/darwin-packages.nix index 047eab83bb42..b0c82508c114 100644 --- a/pkgs/top-level/darwin-packages.nix +++ b/pkgs/top-level/darwin-packages.nix @@ -19,7 +19,7 @@ in binutils = pkgs.wrapBintoolsWith { libc = - if pkgs.targetPlatform != pkgs.hostPlatform + if stdenv.targetPlatform != stdenv.hostPlatform then pkgs.libcCross else pkgs.stdenv.cc.libc; bintools = darwin.binutils-unwrapped; diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index bef3c2d0a219..0dd0e8edf17a 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -1,6 +1,5 @@ { buildPackages, pkgs , newScope -, buildPlatform, targetPlatform }: let @@ -61,7 +60,6 @@ in rec { ghc822 = callPackage ../development/compilers/ghc/8.2.2.nix rec { bootPkgs = packages.ghc821Binary; inherit (bootPkgs) hscolour alex happy; - inherit buildPlatform targetPlatform; sphinx = pkgs.python3Packages.sphinx; buildLlvmPackages = buildPackages.llvmPackages_39; llvmPackages = pkgs.llvmPackages_39; diff --git a/pkgs/top-level/splice.nix b/pkgs/top-level/splice.nix index 27e8136cd397..41fdc22d1477 100644 --- a/pkgs/top-level/splice.nix +++ b/pkgs/top-level/splice.nix @@ -27,9 +27,9 @@ let defaultBuildBuildScope = pkgs.buildPackages.buildPackages // pkgs.buildPackages.buildPackages.xorg; defaultBuildHostScope = pkgs.buildPackages // pkgs.buildPackages.xorg; defaultBuildTargetScope = - if pkgs.targetPlatform == pkgs.hostPlatform + if pkgs.stdenv.targetPlatform == pkgs.stdenv.hostPlatform then defaultBuildHostScope - else assert pkgs.hostPlatform == pkgs.buildPlatform; defaultHostTargetScope; + else assert pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform; defaultHostTargetScope; defaultHostHostScope = {}; # unimplemented defaultHostTargetScope = pkgs // pkgs.xorg; defaultTargetTargetScope = pkgs.targetPackages // pkgs.targetPackages.xorg or {}; @@ -114,8 +114,8 @@ let pkgsTargetTarget = defaultTargetTargetScope; } // { # These should never be spliced under any circumstances - inherit (pkgs) pkgs buildPackages targetPackages - buildPlatform targetPlatform hostPlatform; + inherit (pkgs) pkgs buildPackages targetPackages; + inherit (pkgs.stdenv) buildPlatform targetPlatform hostPlatform; }; in diff --git a/pkgs/top-level/unix-tools.nix b/pkgs/top-level/unix-tools.nix index 52c3de3166ff..bc166382a608 100644 --- a/pkgs/top-level/unix-tools.nix +++ b/pkgs/top-level/unix-tools.nix @@ -1,4 +1,4 @@ -{ pkgs, buildEnv, runCommand, hostPlatform, lib, stdenv }: +{ pkgs, buildEnv, runCommand, lib, stdenv }: # These are some unix tools that are commonly included in the /usr/bin # and /usr/sbin directory under more normal distributions. Along with @@ -16,7 +16,7 @@ let version = "1003.1-2008"; singleBinary = cmd: providers: let - provider = providers.${hostPlatform.parsed.kernel.name}; + provider = providers.${stdenv.hostPlatform.parsed.kernel.name}; bin = "${getBin provider}/bin/${cmd}"; manpage = "${getOutput "man" provider}/share/man/man1/${cmd}.1.gz"; in runCommand "${cmd}-${version}" { @@ -59,12 +59,12 @@ let linux = pkgs.utillinux; }; getconf = { - linux = if hostPlatform.libc == "glibc" then pkgs.glibc + linux = if stdenv.hostPlatform.libc == "glibc" then pkgs.glibc else pkgs.netbsd.getconf; darwin = pkgs.darwin.system_cmds; }; getent = { - linux = if hostPlatform.libc == "glibc" then pkgs.glibc + linux = if stdenv.hostPlatform.libc == "glibc" then pkgs.glibc else pkgs.netbsd.getent; darwin = pkgs.netbsd.getent; };