~ruther/guix-local

36e667c83088b843dc4178444b72fff7596dad80 — Andreas Enge 8 months ago 26bc9be
gnu: Remove nyacc-0.86.

* gnu/packages/mes.scm (nyacc-0.86): Delete variable.
(nyacc-0.99): Copy previously inherited fields.
(nyacc-1.00.2): Add a comment.
* gnu/packages/patches/nyacc-binary-literals.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Unregister patch.

Change-Id: I52629aac6de067ac5107accd83da51b818992afb
3 files changed, 12 insertions(+), 55 deletions(-)

M gnu/local.mk
M gnu/packages/mes.scm
D gnu/packages/patches/nyacc-binary-literals.patch
M gnu/local.mk => gnu/local.mk +0 -1
@@ 1943,7 1943,6 @@ dist_patch_DATA =						\
  %D%/packages/patches/nvi-assume-preserve-path.patch		\
  %D%/packages/patches/nvi-dbpagesize-binpower.patch		\
  %D%/packages/patches/nvi-db4.patch				\
  %D%/packages/patches/nyacc-binary-literals.patch		\
  %D%/packages/patches/obs-modules-location.patch		\
  %D%/packages/patches/ocaml-ctypes-test-oo.patch		\
  %D%/packages/patches/ocaml-multiple-definitions.patch		\

M gnu/packages/mes.scm => gnu/packages/mes.scm +12 -25
@@ 40,32 40,9 @@
  #:use-module (guix packages)
  #:use-module (guix utils))

(define-public nyacc-0.86
  ;; Nyacc used for bootstrap.
  (package
    (name "nyacc")
    (version "0.86.0")
    (source (origin
              (method url-fetch)
              (uri (string-append "mirror://savannah/nyacc/"
                                  name "-" version ".tar.gz"))
              (patches (search-patches "nyacc-binary-literals.patch"))
              (sha256
               (base32
                "0lkd9lyspvhxlfs0496gsllwinh62jk9wij6gpadvx9gwz6yavd9"))))
    (build-system gnu-build-system)
    (native-inputs (list guile-2.2))
    (synopsis "LALR(1) Parser Generator in Guile")
    (description
     "NYACC is an LALR(1) parser generator implemented in Guile.
The syntax and nomenclature should be considered not stable.  It comes with
extensive examples, including parsers for the Javascript and C99 languages.")
    (home-page "https://savannah.nongnu.org/projects/nyacc")
    (license (list gpl3+ lgpl3+))))

(define-public nyacc-0.99
  (package
    (inherit nyacc-0.86)
    (name "nyacc")
    (version "0.99.0")
    (source (origin
              (method url-fetch)


@@ 89,8 66,16 @@ extensive examples, including parsers for the Javascript and C99 languages.")
                    (("^DOCDIR =.*")
                     "DOCDIR = @prefix@/share/doc/$(PACKAGE_TARNAME)\n"))
                  #t))))
    (build-system gnu-build-system)
    (native-inputs (list pkg-config))
    (inputs (list guile-2.2))))
    (inputs (list guile-2.2))
    (synopsis "LALR(1) Parser Generator in Guile")
    (description
     "NYACC is an LALR(1) parser generator implemented in Guile.
The syntax and nomenclature should be considered not stable.  It comes with
extensive examples, including parsers for the Javascript and C99 languages.")
    (home-page "https://savannah.nongnu.org/projects/nyacc")
    (license (list gpl3+ lgpl3+))))

(define-public nyacc-1.08.1
  (package


@@ 120,6 105,8 @@ libraries.  It also provides (partially implemented) compilers based on these
parsers to allow execution with Guile as extension languages.")))

(define-public nyacc-1.00.2
  ;; The source of this package is used for bootstrapping in
  ;; commencement.scm. Otherwise it could be removed.
  (package
    (inherit nyacc-1.08.1)
    (version "1.00.2")

D gnu/packages/patches/nyacc-binary-literals.patch => gnu/packages/patches/nyacc-binary-literals.patch +0 -29
@@ 1,29 0,0 @@
From 6a08014b77bf435f025ecdac08396580b85f159a Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <janneke@gnu.org>
Date: Sat, 8 Sep 2018 20:22:45 +0200
Subject: [PATCH] fix binary literals.

---
 module/nyacc/lex.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/module/nyacc/lex.scm b/module/nyacc/lex.scm
index 2ec9895..b205212 100644
--- a/module/nyacc/lex.scm
+++ b/module/nyacc/lex.scm
@@ -345,10 +345,11 @@
 	  ((char-numeric? ch) (iter chl '$fixed ba 1 ch))
 	  ((char=? #\. ch) (iter (cons ch chl) #f ba 15 (read-char))) 
 	  (else #f)))
-	((10) ;; allow x after 0
+	((10) ;; allow x, b after 0
 	 (cond
 	  ((eof-object? ch) (iter chl ty ba 5 ch))
 	  ((char=? #\x ch) (iter (cons ch chl) ty 16 1 (read-char)))
+          ((char=? #\b ch) (iter (cons ch chl) ty 2 1 (read-char)))
 	  (else (iter chl ty ba 1 ch))))
 	((15) ;; got `.' only
 	 (cond
-- 
2.18.0