[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
210/210: gnu: mes-boot0: Support Nyacc 0.86.0.
From: |
Jan Nieuwenhuizen |
Subject: |
210/210: gnu: mes-boot0: Support Nyacc 0.86.0. |
Date: |
Sat, 8 Sep 2018 10:36:37 -0400 (EDT) |
janneke pushed a commit to branch wip-bootstrap
in repository guix.
commit ffc12560a04b96e3a1eb0f17b62cfb4fded98976
Author: Jan Nieuwenhuizen <address@hidden>
Date: Sat Sep 8 15:39:28 2018 +0200
gnu: mes-boot0: Support Nyacc 0.86.0.
* gnu/packages/patches/mes-nyacc-0.86.0.patch: New file
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/commencement.scm (mes-boot0): Use it to support Nyacc 0.86.0.
---
gnu/local.mk | 1 +
gnu/packages/commencement.scm | 3 +-
gnu/packages/patches/mes-nyacc-0.86.0.patch | 197 ++++++++++++++++++++++++++++
3 files changed, 200 insertions(+), 1 deletion(-)
diff --git a/gnu/local.mk b/gnu/local.mk
index 1ccdf6d..35dd475 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -954,6 +954,7 @@ dist_patch_DATA =
\
%D%/packages/patches/mcrypt-CVE-2012-4409.patch \
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \
%D%/packages/patches/mcrypt-CVE-2012-4527.patch \
+ %D%/packages/patches/mes-mes-nyacc-0.86.0.patch \
%D%/packages/patches/mesa-skip-disk-cache-test.patch \
%D%/packages/patches/meson-for-build-rpath.patch \
%D%/packages/patches/metabat-fix-compilation.patch \
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 60425fc..ed1585a 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -86,7 +86,7 @@
(define mes-boot0
(let ((version "0.17.1")
- (revision "0")
+ (revision "2")
(commit #f))
(package
(inherit mes)
@@ -99,6 +99,7 @@
(uri (string-append "https://gitlab.com/janneke/mes"
"/-/archive/" commit
"/mes-" commit ".tar.gz"))
+ (patches (search-patches "mes-nyacc-0.86.0.patch"))
(sha256
(base32
"1dfnchrz3fb8x220bz28i6p3ql2xfahk9mzin3vk8lyw45s12r5g")))
diff --git a/gnu/packages/patches/mes-nyacc-0.86.0.patch
b/gnu/packages/patches/mes-nyacc-0.86.0.patch
new file mode 100644
index 0000000..58dfc5a
--- /dev/null
+++ b/gnu/packages/patches/mes-nyacc-0.86.0.patch
@@ -0,0 +1,197 @@
+From 9e610736bf779f3295c1192e748cd19cbbe3be28 Mon Sep 17 00:00:00 2001
+From: Jan Nieuwenhuizen <address@hidden>
+Date: Wed, 5 Sep 2018 20:28:06 +0200
+Subject: [PATCH 1/2] mes: Support Nyacc 0.85.3: Add char-set-copy.
+
+* mes/module/srfi/srfi-14.mes (char-set-copy): New function>
+---
+ mes/module/srfi/srfi-14.mes | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/mes/module/srfi/srfi-14.mes b/mes/module/srfi/srfi-14.mes
+index 0be39b1e..a16d16ce 100644
+--- a/mes/module/srfi/srfi-14.mes
++++ b/mes/module/srfi/srfi-14.mes
+@@ -52,3 +52,6 @@
+
+ (define (char-whitespace? c)
+ (char-set-contains? char-set:whitespace c))
++
++(define (char-set-copy cs)
++ (map identity cs))
+--
+2.18.0
+
+From b952bdf44f11edbfc277600dc35236aae1769b54 Mon Sep 17 00:00:00 2001
+From: Jan Nieuwenhuizen <address@hidden>
+Date: Wed, 5 Sep 2018 22:14:34 +0200
+Subject: [PATCH 2/2] mes: Support Nyacc 0.85.3: Integrate progress.
+
+* mes/module/nyacc/lang/sx-util.mes: New file.
+* mes/module/nyacc/version.mes: New file.
+* mes/module/nyacc/lang/c99/cpp.mes (nyacc): Include them.
+* mes/module/nyacc/lang/c99/parser.mes (nyacc): Include them.
+* module/mescc/preprocess.scm (need-progress): New function.
+(progress): New function.
+(insert-progress-monitors): Use them to Integrate progress.
+---
+ mes/module/mescc/preprocess.mes | 1 +
+ mes/module/nyacc/lang/c99/cpp.mes | 1 +
+ mes/module/nyacc/lang/c99/parser.mes | 1 +
+ mes/module/nyacc/lang/sx-util.mes | 27 +++++++++++++++++++++
+ mes/module/nyacc/version.mes | 26 +++++++++++++++++++++
+ module/mescc/preprocess.scm | 35 ++++++++++++++++++++++++++++
+ 6 files changed, 91 insertions(+)
+ create mode 100644 mes/module/nyacc/lang/sx-util.mes
+ create mode 100644 mes/module/nyacc/version.mes
+
+diff --git a/mes/module/mescc/preprocess.mes b/mes/module/mescc/preprocess.mes
+index c7c5fcaa..022a372c 100644
+--- a/mes/module/mescc/preprocess.mes
++++ b/mes/module/mescc/preprocess.mes
+@@ -24,4 +24,5 @@
+ (mes-use-module (srfi srfi-13))
+ (mes-use-module (srfi srfi-26))
+ (mes-use-module (nyacc lang c99 parser))
++(mes-use-module (nyacc version))
+ (include-from-path "mescc/preprocess.scm")
+diff --git a/mes/module/nyacc/lang/c99/cpp.mes
b/mes/module/nyacc/lang/c99/cpp.mes
+index fad1dc55..b25c4a93 100644
+--- a/mes/module/nyacc/lang/c99/cpp.mes
++++ b/mes/module/nyacc/lang/c99/cpp.mes
+@@ -28,5 +28,6 @@
+
+ (mes-use-module (nyacc parse))
+ (mes-use-module (nyacc lex))
++(mes-use-module (nyacc lang sx-util))
+ (mes-use-module (nyacc lang util))
+ (include-from-path "nyacc/lang/c99/cpp.scm")
+diff --git a/mes/module/nyacc/lang/c99/parser.mes
b/mes/module/nyacc/lang/c99/parser.mes
+index c51552d6..1a9aaf73 100644
+--- a/mes/module/nyacc/lang/c99/parser.mes
++++ b/mes/module/nyacc/lang/c99/parser.mes
+@@ -32,6 +32,7 @@
+
+ (mes-use-module (nyacc lex))
+ (mes-use-module (nyacc parse))
++(mes-use-module (nyacc lang sx-util))
+ (mes-use-module (nyacc lang util))
+ (mes-use-module (nyacc lang c99 cpp))
+
+diff --git a/mes/module/nyacc/lang/sx-util.mes
b/mes/module/nyacc/lang/sx-util.mes
+new file mode 100644
+index 00000000..41ac5b4a
+--- /dev/null
++++ b/mes/module/nyacc/lang/sx-util.mes
+@@ -0,0 +1,27 @@
++;;; -*-scheme-*-
++
++;;; GNU Mes --- Maxwell Equations of Software
++;;; Copyright © 2018 Jan (janneke) Nieuwenhuizen <address@hidden>
++;;;
++;;; This file is part of GNU Mes.
++;;;
++;;; GNU Mes is free software; you can redistribute it and/or modify it
++;;; under the terms of the GNU General Public License as published by
++;;; the Free Software Foundation; either version 3 of the License, or (at
++;;; your option) any later version.
++;;;
++;;; GNU Mes is distributed in the hope that it will be useful, but
++;;; WITHOUT ANY WARRANTY; without even the implied warranty of
++;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++;;; GNU General Public License for more details.
++;;;
++;;; You should have received a copy of the GNU General Public License
++;;; along with GNU Mes. If not, see <http://www.gnu.org/licenses/>.
++
++;;; Commentary:
++
++;;; Code:
++
++(mes-use-module (srfi srfi-1))
++(mes-use-module (srfi srfi-16))
++(include-from-path "nyacc/lang/sx-util.scm")
+diff --git a/mes/module/nyacc/version.mes b/mes/module/nyacc/version.mes
+new file mode 100644
+index 00000000..b9db628e
+--- /dev/null
++++ b/mes/module/nyacc/version.mes
+@@ -0,0 +1,26 @@
++;;; -*-scheme-*-
++
++;;; GNU Mes --- Maxwell Equations of Software
++;;; Copyright © 2018 Jan (janneke) Nieuwenhuizen <address@hidden>
++;;;
++;;; This file is part of GNU Mes.
++;;;
++;;; GNU Mes is free software; you can redistribute it and/or modify it
++;;; under the terms of the GNU General Public License as published by
++;;; the Free Software Foundation; either version 3 of the License, or (at
++;;; your option) any later version.
++;;;
++;;; GNU Mes is distributed in the hope that it will be useful, but
++;;; WITHOUT ANY WARRANTY; without even the implied warranty of
++;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++;;; GNU General Public License for more details.
++;;;
++;;; You should have received a copy of the GNU General Public License
++;;; along with GNU Mes. If not, see <http://www.gnu.org/licenses/>.
++
++;;; Commentary:
++
++;;; Code:
++
++(include-from-path "nyacc/version.scm")
++(display "nyacc version\n")
+diff --git a/module/mescc/preprocess.scm b/module/mescc/preprocess.scm
+index 9e341cba..c2efb32c 100644
+--- a/module/mescc/preprocess.scm
++++ b/module/mescc/preprocess.scm
+@@ -26,9 +26,44 @@
+ #:use-module (srfi srfi-1)
+ #:use-module (srfi srfi-26)
+ #:use-module (nyacc lang c99 parser)
++ #:use-module (nyacc lang c99 parser)
++ #:use-module (nyacc version)
+ #:use-module (mes guile)
+ #:export (c99-input->ast))
+
++(format (current-error-port) "*nyacc-version*=~a\n" *nyacc-version*)
++;; list of which rules you want progress reported
++(define need-progress
++ (assoc-ref
++ '(("0.85.3" (1 2 3))
++ ("0.86.0" (1 2 3)))
++ *nyacc-version*))
++
++(define (progress o)
++ (when (and o (getenv "NYACC_DEBUG"))
++ (display " :" (current-error-port))
++ (display o (current-error-port))
++ (display "\n" (current-error-port))))
++
++(define (insert-progress-monitors act-v len-v)
++ (let ((n (vector-length act-v)))
++ (let loop ((ix 0))
++ (when (< ix n)
++ (if (memq ix need-progress)
++ (vector-set
++ act-v ix
++ (lambda args
++ (progress (list-ref args (1- (vector-ref len-v ix))))
++ (apply (vector-ref act-v ix) args))))
++ (loop (1+ ix))))))
++
++(cond-expand
++ (guile
++ (insert-progress-monitors (@@ (nyacc lang c99 parser) c99-act-v)
++ (@@ (nyacc lang c99 parser) c99-len-v)))
++ (mes
++ (insert-progress-monitors c99-act-v c99-len-v)))
++
+ (define (logf port string . rest)
+ (apply format (cons* port string rest))
+ (force-output port)
+--
+2.18.0
+
- 207/210: gnu: bison-boot0: Remove bootstrap leaks., (continued)
- 207/210: gnu: bison-boot0: Remove bootstrap leaks., Jan Nieuwenhuizen, 2018/09/08
- 181/210: gnu: diffutils-mesboot: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 172/210: copy-linux-headers: Update for glibc-2.16.0., Jan Nieuwenhuizen, 2018/09/08
- 190/210: gnu: gcc-mesboot: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 186/210: gnu: gcc-mesboot0: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 189/210: gnu: make-mesboot: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 194/210: oops: fixup glibc-bootstrap-system-2.16.0.patch name., Jan Nieuwenhuizen, 2018/09/08
- 209/210: gnu: nyacc-boot: Update to 0.86.0., Jan Nieuwenhuizen, 2018/09/08
- 203/210: gnu: glibc-mesboot: Drop obsolete sun rpc support., Jan Nieuwenhuizen, 2018/09/08
- 192/210: gnu: glibc-mesboot: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 210/210: gnu: mes-boot0: Support Nyacc 0.86.0.,
Jan Nieuwenhuizen <=
- 200/210: gnu: findutils-boot0: Remove bootstrap leaks., Jan Nieuwenhuizen, 2018/09/08
- 191/210: gnu: glibc-headers-mesboot: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 195/210: glibc-mesboot: do not validate runpath, Jan Nieuwenhuizen, 2018/09/08
- 184/210: gnu: mesboot-headers: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 197/210: Oops, libstdc++ build fixes WIP, Jan Nieuwenhuizen, 2018/09/08
- 175/210: gnu: glibc-mesboot: Remove %bootstrap-glibc., Jan Nieuwenhuizen, 2018/09/08
- 170/210: gnu: make-mesboot: Update to 3.82., Jan Nieuwenhuizen, 2018/09/08
- 178/210: gnu: tcc-boot0: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 179/210: gnu: tcc-boot: Cleanup., Jan Nieuwenhuizen, 2018/09/08
- 173/210: gnu: Add mesboot-headers., Jan Nieuwenhuizen, 2018/09/08