summary refs log tree commit diff
path: root/gnu/packages/gperf.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/gperf.scm')
-rw-r--r--gnu/packages/gperf.scm21
1 files changed, 18 insertions, 3 deletions
diff --git a/gnu/packages/gperf.scm b/gnu/packages/gperf.scm
index de596e925e..e20c6bd061 100644
--- a/gnu/packages/gperf.scm
+++ b/gnu/packages/gperf.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2017 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -25,7 +25,7 @@
 (define-public gperf
   (package
     (name "gperf")
-    (version "3.0.4")
+    (version "3.1")
     (source
      (origin
       (method url-fetch)
@@ -33,7 +33,7 @@
                           version ".tar.gz"))
       (sha256
        (base32
-        "0gnnm8iqcl52m8iha3sxrzrl9mcyhg7lfrhhqgdn4zj00ji14wbn"))))
+        "1qispg6i508rq8pkajh26cznwimbnj06wq9sd85vg95v8nwld1aq"))))
     (build-system gnu-build-system)
     (arguments '(#:parallel-tests? #f))
     (home-page "https://www.gnu.org/software/gperf/")
@@ -44,3 +44,18 @@ strings, it produces a hash function and hash table in C or C++ code.  That
 the hash function is perfect means that no collisions can exist and that
 look-ups can be made by single string comparisons.")
     (license gpl3+)))
+
+(define-public gperf-3.0
+  ;; This older version would use 'unsigned int' in its generated lookup
+  ;; functions whereas 3.1 uses 'size_t', which causes breakage such as
+  ;; <https://github.com/wingo/elogind/issues/8>.
+  (package
+    (inherit gperf)
+    (version "3.0.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnu/gperf/gperf-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "0gnnm8iqcl52m8iha3sxrzrl9mcyhg7lfrhhqgdn4zj00ji14wbn"))))))