gnu: emacs-helm: Update to 3.8.7.
[jackhill/guix/guix.git] / gnu / packages / re2c.scm
CommitLineData
cc1c3977 1;;; GNU Guix --- Functional package management for GNU
7fa1bce1 2;;; Copyright © 2017, 2020 Sergei Trofimovich <slyfox@inbox.ru>
ccbeb7ef 3;;; Copyright © 2021 Sergei Trofimovich <slyich@gmail.com>
6c6c03fa 4;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
cc1c3977
ST
5;;;
6;;; This file is part of GNU Guix.
7;;;
8;;; GNU Guix is free software; you can redistribute it and/or modify it
9;;; under the terms of the GNU General Public License as published by
10;;; the Free Software Foundation; either version 3 of the License, or (at
11;;; your option) any later version.
12;;;
13;;; GNU Guix is distributed in the hope that it will be useful, but
14;;; WITHOUT ANY WARRANTY; without even the implied warranty of
15;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16;;; GNU General Public License for more details.
17;;;
18;;; You should have received a copy of the GNU General Public License
19;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
20
21(define-module (gnu packages re2c)
22 #:use-module (guix licenses)
23 #:use-module (guix packages)
ccbeb7ef 24 #:use-module (gnu packages python)
cc1c3977
ST
25 #:use-module (guix download)
26 #:use-module (guix build-system gnu))
27
28(define-public re2c
29 (package
30 (name "re2c")
ccbeb7ef 31 (version "2.2")
cc1c3977
ST
32 (source (origin
33 (method url-fetch)
34 (uri (string-append "https://github.com/skvadrik/" name
35 "/releases/download/" version "/"
e4892ae3 36 name "-" version ".tar.xz"))
cc1c3977
ST
37 (sha256
38 (base32
ccbeb7ef 39 "1nkbv3bxz1kwwql1pdlnj3lxy5h2vsaif393ivb5b9d8610mxi0g"))))
cc1c3977 40 (build-system gnu-build-system)
1d7be593 41 (home-page "https://re2c.org/")
ccbeb7ef 42 (native-inputs
8394619b 43 (list python)) ; for the test driver
cc1c3977
ST
44 (synopsis "Lexer generator for C/C++")
45 (description
46 "@code{re2c} generates minimalistic hard-coded state machine (as opposed
47to full-featured table-based lexers). Flexible API allows generated code
48to be wired into virtually any environment. Instead of exposing traditional
49@code{yylex()} style API, re2c exposes its internals. Be sure to take a look
50at examples, they cover a lot of real-world cases and shed some light on dark
51corners of re2c API.")
52 (license public-domain)))