diff options
author | Ludovic Courtès <ludo@gnu.org> | 2013-03-21 13:08:19 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2013-03-21 13:08:38 +0100 |
commit | d69e680035775ada41ff043a07652d79cf1a8fd7 (patch) | |
tree | 659d67e183f1bd7beb85b117cf01253078d6e7fa /pkgs/development/libraries/glibc | |
parent | 899367760726d33e883d7428acffff72db3a0c02 (diff) | |
download | nixlib-d69e680035775ada41ff043a07652d79cf1a8fd7.tar nixlib-d69e680035775ada41ff043a07652d79cf1a8fd7.tar.gz nixlib-d69e680035775ada41ff043a07652d79cf1a8fd7.tar.bz2 nixlib-d69e680035775ada41ff043a07652d79cf1a8fd7.tar.lz nixlib-d69e680035775ada41ff043a07652d79cf1a8fd7.tar.xz nixlib-d69e680035775ada41ff043a07652d79cf1a8fd7.tar.zst nixlib-d69e680035775ada41ff043a07652d79cf1a8fd7.zip |
glibc 2.17: Reinstate support for cross-GNU builds.
Diffstat (limited to 'pkgs/development/libraries/glibc')
-rw-r--r-- | pkgs/development/libraries/glibc/2.17/common.nix | 22 | ||||
-rw-r--r-- | pkgs/development/libraries/glibc/2.17/default.nix | 8 |
2 files changed, 20 insertions, 10 deletions
diff --git a/pkgs/development/libraries/glibc/2.17/common.nix b/pkgs/development/libraries/glibc/2.17/common.nix index 3006ff490136..fb4083066de5 100644 --- a/pkgs/development/libraries/glibc/2.17/common.nix +++ b/pkgs/development/libraries/glibc/2.17/common.nix @@ -3,7 +3,7 @@ cross: -{ name, fetchurl, stdenv, installLocales ? false +{ name, fetchurl, fetchgit ? null, stdenv, installLocales ? false , gccCross ? null, kernelHeaders ? null , machHeaders ? null, hurdHeaders ? null, libpthreadHeaders ? null , mig ? null @@ -118,16 +118,26 @@ stdenv.mkDerivation ({ # Remove the `gccCross' attribute so that the *native* glibc store path # doesn't depend on whether `gccCross' is null or not. -// (removeAttrs args [ "gccCross" "fetchurl" ]) // +// (removeAttrs args [ "gccCross" "fetchurl" "fetchgit" ]) // { name = name + "-${version}" + stdenv.lib.optionalString (cross != null) "-${cross.config}"; - src = fetchurl { - url = "mirror://gnu/glibc/glibc-${version}.tar.gz"; - sha256 = "0ym3zk9ii64279wgw7pw9xkbxczy2ci7ka6mnfs05rhlainhicm3"; - }; + src = + if hurdHeaders != null + then fetchgit { + # Shamefully the "official" glibc won't build on GNU, so use the one + # maintained by the Hurd folks, `tschwinge/Roger_Whittaker' branch. + # See <http://www.gnu.org/software/hurd/source_repositories/glibc.html>. + url = "git://git.sv.gnu.org/hurd/glibc.git"; + sha256 = "cecec9dd5a2bafc875c56b058b6d7628a22b250b53747513dec304f31ffdb82d"; + rev = "d3cdecf18e6550b0984a42b43ed48c5fb26501e1"; + } + else fetchurl { + url = "mirror://gnu/glibc/glibc-${version}.tar.gz"; + sha256 = "0ym3zk9ii64279wgw7pw9xkbxczy2ci7ka6mnfs05rhlainhicm3"; + }; # Remove absolute paths from `configure' & co.; build out-of-tree. preConfigure = '' diff --git a/pkgs/development/libraries/glibc/2.17/default.nix b/pkgs/development/libraries/glibc/2.17/default.nix index 0a0752570f32..1985790e9a1f 100644 --- a/pkgs/development/libraries/glibc/2.17/default.nix +++ b/pkgs/development/libraries/glibc/2.17/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, kernelHeaders +{ stdenv, fetchurl, fetchgit, kernelHeaders , machHeaders ? null, hurdHeaders ? null, libpthreadHeaders ? null , mig ? null , installLocales ? true @@ -18,8 +18,8 @@ in + stdenv.lib.optionalString (hurdHeaders != null) "-hurd" + stdenv.lib.optionalString debugSymbols "-debug"; - inherit fetchurl stdenv kernelHeaders installLocales profilingLibraries - gccCross; + inherit fetchurl fetchgit stdenv kernelHeaders installLocales + profilingLibraries gccCross; builder = ./builder.sh; @@ -56,7 +56,7 @@ in (if hurdHeaders != null then rec { - inherit machHeaders hurdHeaders libpthreadHeaders mig; + inherit machHeaders hurdHeaders libpthreadHeaders mig fetchgit; propagatedBuildInputs = [ machHeaders hurdHeaders libpthreadHeaders ]; |