diff options
author | Ludovic Courtès <ludo@gnu.org> | 2010-12-12 23:21:35 +0000 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2010-12-12 23:21:35 +0000 |
commit | ef8619b4b2ed2589285f543e7ae409ac8bd07405 (patch) | |
tree | 9800b39af5ae77d7ffdb533f8ad0e30369ab5391 /pkgs | |
parent | 0847b74a2c18f7bc9ba99653d079bcc57f35efd1 (diff) | |
download | nixpkgs-ef8619b4b2ed2589285f543e7ae409ac8bd07405.tar nixpkgs-ef8619b4b2ed2589285f543e7ae409ac8bd07405.tar.gz nixpkgs-ef8619b4b2ed2589285f543e7ae409ac8bd07405.tar.bz2 nixpkgs-ef8619b4b2ed2589285f543e7ae409ac8bd07405.tar.lz nixpkgs-ef8619b4b2ed2589285f543e7ae409ac8bd07405.tar.xz nixpkgs-ef8619b4b2ed2589285f543e7ae409ac8bd07405.tar.zst nixpkgs-ef8619b4b2ed2589285f543e7ae409ac8bd07405.zip |
GNU Parted: Allow cross-GNU builds.
svn path=/nixpkgs/branches/stdenv-updates/; revision=25088
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/tools/misc/parted/default.nix | 22 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 21 |
2 files changed, 34 insertions, 9 deletions
diff --git a/pkgs/tools/misc/parted/default.nix b/pkgs/tools/misc/parted/default.nix index c4061949424..622753e2303 100644 --- a/pkgs/tools/misc/parted/default.nix +++ b/pkgs/tools/misc/parted/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, devicemapper, libuuid, gettext, readline -, utillinuxng, xz }: +, utillinuxng, xz, enableStatic ? false, hurd ? null }: stdenv.mkDerivation rec { name = "parted-2.3"; @@ -9,14 +9,26 @@ stdenv.mkDerivation rec { sha256 = "0sabj81nawcjm8ww34lxg65ka8crv3w2ab4crh8ypw5agg681836"; }; - buildInputs = [ xz libuuid gettext readline libuuid devicemapper ]; + buildNativeInputs = [ xz ]; + buildInputs = [ libuuid ] + ++ stdenv.lib.optional (readline != null) readline + ++ stdenv.lib.optional (gettext != null) gettext + ++ stdenv.lib.optional (devicemapper != null) devicemapper + ++ stdenv.lib.optional (hurd != null) hurd; - configureFlags = "--with-readline"; + configureFlags = + (if (readline != null) + then [ "--with-readline" ] + else [ "--without-readline" ]) + ++ stdenv.lib.optional (devicemapper == null) "--disable-device-mapper" + ++ stdenv.lib.optional enableStatic "--enable-static"; doCheck = true; - # The `t0400-loop-clobber-infloop.sh' test wants `mkswap'. - preCheck = "export PATH=\"${utillinuxng}/sbin:$PATH\""; + preCheck = + stdenv.lib.optionalString doCheck + # The `t0400-loop-clobber-infloop.sh' test wants `mkswap'. + "export PATH=\"${utillinuxng}/sbin:$PATH\""; meta = { description = "GNU Parted, a tool to create, destroy, resize, check, and copy partitions"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3a1ac4010e3..7cb15b9126e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1014,6 +1014,18 @@ let parted = callPackage ../tools/misc/parted { }; + hurdPartedCross = (callPackage ../tools/misc/parted { + # Needs the Hurd's libstore. + hurd = hurdCrossIntermediate; + + # The Hurd wants a libparted.a. + enableStatic = true; + + gettext = null; + readline = null; + devicemapper = null; + }).hostDrv; + patch = gnupatch; pbzip2 = callPackage ../tools/compression/pbzip2 { }; @@ -4588,10 +4600,11 @@ let # intermediate GCC. gccCross = gccCrossStageStatic; - # This intermediate Hurd is only needed to build libpthread, which really - # only needs libihash. - buildTarget = "libihash"; - installTarget = "libihash-install"; + # This intermediate Hurd is only needed to build libpthread, which needs + # libihash, and to build Parted, which needs libstore and + # libshouldbeinlibc. + buildTarget = "libihash libstore libshouldbeinlibc"; + installTarget = "libihash-install libstore-install libshouldbeinlibc-install"; }); hurdHeaders = callPackage ../os-specific/gnu/hurd { |