;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2015, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
+;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;;
;;; This file is part of GNU Guix.
;;;
(define-public bison
(package
(name "bison")
- (version "3.0.5")
+ (version "3.5.3")
(source
(origin
(method url-fetch)
version ".tar.xz"))
(sha256
(base32
- "0f7kjygrckkx8vas2nm673592jif0a9mw5g8207f6hj6h4pfyp07"))))
+ "1i57hbczvr8674z73775jxdd3y59qggs5lmfd60gmwm5i1gmpy1b"))))
(build-system gnu-build-system)
+ (arguments
+ '(;; Building in parallel on many-core systems may cause an error such as
+ ;; "mv: cannot stat 'examples/c/reccalc/scan.stamp.tmp': No such file or
+ ;; directory". See <https://bugs.gnu.org/36238>.
+ #:parallel-build? #f
+ ;; Similarly, when building tests in parallel, Make may produce this error:
+ ;; "./examples/c/reccalc/scan.l:13:10: fatal error: parse.h: No such file
+ ;; or directory". Full log in <https://bugs.gnu.org/36238>.
+ #:parallel-tests? #f))
(native-inputs `(("perl" ,perl)
;; m4 is not present in PATH when cross-building.
("m4" ,m4)))
(inputs `(("flex" ,flex)))
(propagated-inputs `(("m4" ,m4)))
(home-page "https://www.gnu.org/software/bison/")
- (synopsis "Parser generator")
+ (synopsis "Yacc-compatible parser generator")
(description
"GNU Bison is a general-purpose parser generator. It can build a
deterministic or generalized LR parser from an annotated, context-free
grammar. It is versatile enough to have many applications, from parsers for
-simple tools through complex programming languages.")
+simple tools through complex programming languages.
+
+Bison also provides an implementation of @command{yacc}, as specified by POSIX.")
(license gpl3+)))
+
+(define-public bison-3.6
+ (package
+ (inherit bison)
+ (version "3.6.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/bison/bison-" version ".tar.xz"))
+ (sha256
+ (base32 "0gdpnjh6ra9xa9vj6hzjdf0c04x4pjyy8vssm3qdb7fya4v7knq6"))))))
+
+(define-public bison-3.0
+ (package
+ (inherit bison)
+ (version "3.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/bison/bison-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0f7kjygrckkx8vas2nm673592jif0a9mw5g8207f6hj6h4pfyp07"))))))