diff --git a/pkgs/os-specific/gnu/hurd/default.nix b/pkgs/os-specific/gnu/hurd/default.nix index cfd88692ead4..50802d3425bf 100644 --- a/pkgs/os-specific/gnu/hurd/default.nix +++ b/pkgs/os-specific/gnu/hurd/default.nix @@ -1,9 +1,11 @@ { fetchgit, stdenv, autoconf, automake, libtool, texinfo , machHeaders, mig, headersOnly ? true , cross ? null, gccCross ? null, glibcCross ? null +, hurdPartedCross ? null, libuuid ? null , buildTarget ? "all", installTarget ? "install" }: assert (cross != null) -> (gccCross != null); +assert (hurdPartedCross != null) -> (libuuid != null); let # Unfortunately we can't use `master@{DATE}', see @@ -26,12 +28,15 @@ stdenv.mkDerivation ({ }; buildInputs = [ autoconf automake libtool texinfo mig ] + ++ stdenv.lib.optional (hurdPartedCross != null) hurdPartedCross + ++ stdenv.lib.optional (libuuid != null) libuuid ++ stdenv.lib.optional (gccCross != null) gccCross ++ stdenv.lib.optional (glibcCross != null) glibcCross; propagatedBuildInputs = [ machHeaders ]; - configureFlags = stdenv.lib.optionals headersOnly [ "--build=i586-pc-gnu" ]; + configureFlags = stdenv.lib.optionals headersOnly [ "--build=i586-pc-gnu" ] + ++ stdenv.lib.optional (hurdPartedCross != null) [ "--with-parted" ]; preConfigure = "autoreconf -vfi"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7cb15b9126ef..74550f2ce157 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4581,7 +4581,8 @@ let hurdCross = forceBuildDrv(import ../os-specific/gnu/hurd { inherit fetchgit stdenv autoconf libtool texinfo machHeaders - mig glibcCross; + mig glibcCross hurdPartedCross; + libuuid = libuuid.hostDrv; automake = automake111x; headersOnly = false; cross = assert crossSystem != null; crossSystem; @@ -4612,6 +4613,8 @@ let headersOnly = true; gccCross = null; glibcCross = null; + libuuid = null; + hurdPartedCross = null; }; hurdLibpthreadCross = forceBuildDrv(import ../os-specific/gnu/libpthread {