gnu: python-babel: Update to 2.7.0.
[guix.git] / gnu / packages / gperf.scm
blobe20c6bd0616cc5517984ef84159a487a5a6d2239
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2012, 2013, 2017 Ludovic Courtès <ludo@gnu.org>
3 ;;;
4 ;;; This file is part of GNU Guix.
5 ;;;
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
10 ;;;
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 ;;; GNU General Public License for more details.
15 ;;;
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
19 (define-module (gnu packages gperf)
20   #:use-module (guix licenses)
21   #:use-module (guix packages)
22   #:use-module (guix download)
23   #:use-module (guix build-system gnu))
25 (define-public gperf
26   (package
27     (name "gperf")
28     (version "3.1")
29     (source
30      (origin
31       (method url-fetch)
32       (uri (string-append "mirror://gnu/gperf/gperf-"
33                           version ".tar.gz"))
34       (sha256
35        (base32
36         "1qispg6i508rq8pkajh26cznwimbnj06wq9sd85vg95v8nwld1aq"))))
37     (build-system gnu-build-system)
38     (arguments '(#:parallel-tests? #f))
39     (home-page "https://www.gnu.org/software/gperf/")
40     (synopsis "Perfect hash function generator")
41     (description
42      "gperf is a perfect hash function generator.  For a given list of
43 strings, it produces a hash function and hash table in C or C++ code.  That
44 the hash function is perfect means that no collisions can exist and that
45 look-ups can be made by single string comparisons.")
46     (license gpl3+)))
48 (define-public gperf-3.0
49   ;; This older version would use 'unsigned int' in its generated lookup
50   ;; functions whereas 3.1 uses 'size_t', which causes breakage such as
51   ;; <https://github.com/wingo/elogind/issues/8>.
52   (package
53     (inherit gperf)
54     (version "3.0.4")
55     (source (origin
56               (method url-fetch)
57               (uri (string-append "mirror://gnu/gperf/gperf-"
58                                   version ".tar.gz"))
59               (sha256
60                (base32
61                 "0gnnm8iqcl52m8iha3sxrzrl9mcyhg7lfrhhqgdn4zj00ji14wbn"))))))