diff options
author | John Ericson <Ericson2314@yahoo.com> | 2017-01-24 15:09:56 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-01-24 15:09:56 -0500 |
commit | 5ad696b06763b7c5c6e1aa7ed848a50bff78c8d5 (patch) | |
tree | dd63532ca1ebe23b3c9480a660b00bc76967aae7 /pkgs/os-specific | |
parent | 54df1426721358e21abcb7dc3a787e7df88ce122 (diff) | |
parent | 39fb46f5384bd4d28f1b10580ac9227c4ed36da2 (diff) | |
download | nixlib-5ad696b06763b7c5c6e1aa7ed848a50bff78c8d5.tar nixlib-5ad696b06763b7c5c6e1aa7ed848a50bff78c8d5.tar.gz nixlib-5ad696b06763b7c5c6e1aa7ed848a50bff78c8d5.tar.bz2 nixlib-5ad696b06763b7c5c6e1aa7ed848a50bff78c8d5.tar.lz nixlib-5ad696b06763b7c5c6e1aa7ed848a50bff78c8d5.tar.xz nixlib-5ad696b06763b7c5c6e1aa7ed848a50bff78c8d5.tar.zst nixlib-5ad696b06763b7c5c6e1aa7ed848a50bff78c8d5.zip |
Merge pull request #22107 from Ericson2314/cross-tepid
Somewhat saner cross-compiling through bootstrapping
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r-- | pkgs/os-specific/gnu/default.nix | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/pkgs/os-specific/gnu/default.nix b/pkgs/os-specific/gnu/default.nix index 457b670319e0..247c73e468d0 100644 --- a/pkgs/os-specific/gnu/default.nix +++ b/pkgs/os-specific/gnu/default.nix @@ -3,7 +3,8 @@ args@{ fetchgit, stdenv, autoconf, automake, automake111x, libtool , texinfo, glibcCross, hurdPartedCross, libuuid, samba , gccCrossStageStatic, gccCrossStageFinal -, forceNativeDrv, forceSystem, newScope, platform, config, crossSystem +, forcedNativePackages, forceSystem, newScope, platform, config +, targetPlatform, buildPlatform , overrides ? {} }: with args; @@ -12,25 +13,25 @@ let callPackage = newScope gnu; gnu = { - hurdCross = forceNativeDrv (callPackage ./hurd { + hurdCross = forcedNativePackages.callPackage ./hurd { inherit fetchgit stdenv autoconf libtool texinfo glibcCross hurdPartedCross; inherit (gnu) machHeaders mig; libuuid = libuuid.crossDrv; automake = automake111x; headersOnly = false; - cross = assert crossSystem != null; crossSystem; + cross = assert targetPlatform != buildPlatform; targetPlatform; gccCross = gccCrossStageFinal; - }); + }; - hurdCrossIntermediate = forceNativeDrv (callPackage ./hurd { + hurdCrossIntermediate = forcedNativePackages.callPackage ./hurd { inherit fetchgit stdenv autoconf libtool texinfo glibcCross; inherit (gnu) machHeaders mig; hurdPartedCross = null; libuuid = null; automake = automake111x; headersOnly = false; - cross = assert crossSystem != null; crossSystem; + cross = assert targetPlatform != buildPlatform; targetPlatform; # The "final" GCC needs glibc and the Hurd libraries (libpthread in # particular) so we first need an intermediate Hurd built with the @@ -42,7 +43,7 @@ let # libshouldbeinlibc. buildTarget = "libihash libstore libshouldbeinlibc"; installTarget = "libihash-install libstore-install libshouldbeinlibc-install"; - }); + }; hurdHeaders = callPackage ./hurd { automake = automake111x; @@ -58,13 +59,13 @@ let hurd = null; }; - libpthreadCross = forceNativeDrv (callPackage ./libpthread { + libpthreadCross = forcedNativePackages.callPackage ./libpthread { inherit fetchgit stdenv autoconf automake libtool glibcCross; inherit (gnu) machHeaders hurdHeaders; hurd = gnu.hurdCrossIntermediate; gccCross = gccCrossStageStatic; - cross = assert crossSystem != null; crossSystem; - }); + cross = assert targetPlatform != buildPlatform; targetPlatform; + }; # In theory GNU Mach doesn't have to be cross-compiled. However, since it # has to be built for i586 (it doesn't work on x86_64), one needs a cross |