From 59e0cfb589d3fb3d2697f26c269bc1ea0324d44b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 18 Jan 2017 16:45:52 +0100 Subject: [PATCH] gperf: bring back 3.0.4 to fix systemd build Systemd has fixed this on master, but I don't want to meddle with the patch that doesn't apply cleanly on our version. --- pkgs/development/tools/misc/gperf/3.0.x.nix | 33 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 35 insertions(+) create mode 100644 pkgs/development/tools/misc/gperf/3.0.x.nix diff --git a/pkgs/development/tools/misc/gperf/3.0.x.nix b/pkgs/development/tools/misc/gperf/3.0.x.nix new file mode 100644 index 000000000000..bfada264d50a --- /dev/null +++ b/pkgs/development/tools/misc/gperf/3.0.x.nix @@ -0,0 +1,33 @@ +{stdenv, fetchurl}: + +stdenv.mkDerivation rec { + name = "gperf-3.0.4"; + + src = fetchurl { + url = "mirror://gnu/gperf/${name}.tar.gz"; + sha256 = "0gnnm8iqcl52m8iha3sxrzrl9mcyhg7lfrhhqgdn4zj00ji14wbn"; + }; + + meta = { + description = "Perfect hash function generator"; + + longDescription = '' + GNU gperf is a perfect hash function generator. For a given + list of strings, it produces a hash function and hash table, in + form of C or C++ code, for looking up a value depending on the + input string. The hash function is perfect, which means that + the hash table has no collisions, and the hash table lookup + needs a single string comparison only. + + GNU gperf is highly customizable. There are options for + generating C or C++ code, for emitting switch statements or + nested ifs instead of a hash table, and for tuning the algorithm + employed by gperf. + ''; + + license = stdenv.lib.licenses.gpl3Plus; + + homepage = http://www.gnu.org/software/gperf/; + platforms = stdenv.lib.platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e1bbb22e06f4..f209201eb2f8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6354,6 +6354,7 @@ in gradle_2_5 = self.gradleGen.gradle_2_5; gperf = callPackage ../development/tools/misc/gperf { }; + gperf_3_0 = callPackage ../development/tools/misc/gperf/3.0.x.nix { }; grail = callPackage ../development/libraries/grail { }; @@ -11723,6 +11724,7 @@ in systemd = callPackage ../os-specific/linux/systemd { utillinux = utillinuxMinimal; # break the cyclic dependency + gperf = gperf_3_0; # fix build until v233 } // { udev.bin = systemd; # ${systemd.udev.bin}/bin/udevadm