aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarlo Landmeter <clandmeter@gmail.com>2016-11-03 12:41:53 +0100
committerCarlo Landmeter <clandmeter@gmail.com>2016-11-03 12:42:02 +0100
commit28b3436546a7577cee65c17d93cc9f6691bb3c8e (patch)
tree261742477a5cf8fd5666d072968ae0f0328f5ebe
parent4699a8cb5fe47563f1f3c3b1ddc0ac6c04842dda (diff)
downloadaports-28b3436546a7577cee65c17d93cc9f6691bb3c8e.tar.bz2
aports-28b3436546a7577cee65c17d93cc9f6691bb3c8e.tar.xz
main/guile: upgrade to 2.0.13
-rw-r--r--main/guile/0003-Recognize-more-ARM-targets.patch70
-rw-r--r--main/guile/0008-VM-ASM_MUL-for-ARM-Add-earlyclobber-constraint-to-th.patch37
-rw-r--r--main/guile/0009-VM-Allow-the-C-compiler-to-choose-FP_REG-on-ARM.patch37
-rw-r--r--main/guile/0010-web-Keep-the-default-size-for-the-client-s-in-kernel.patch39
-rw-r--r--main/guile/0011-Fix-shrinking-of-contiguous-bytevectors-as-from-get-.patch48
-rw-r--r--main/guile/0013-Handle-p-in-format-warnings.patch106
-rw-r--r--main/guile/0015-Fix-SCM_SMOB_OBJECT-_-_0_-_1_-_2_-_3_-LOC.patch44
-rw-r--r--main/guile/0016-peval-Handle-optional-argument-inits-that-refer-to-p.patch239
-rw-r--r--main/guile/APKBUILD71
-rw-r--r--main/guile/strtol_l.patch20
10 files changed, 11 insertions, 700 deletions
diff --git a/main/guile/0003-Recognize-more-ARM-targets.patch b/main/guile/0003-Recognize-more-ARM-targets.patch
deleted file mode 100644
index 59fc857f3c..0000000000
--- a/main/guile/0003-Recognize-more-ARM-targets.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From ff888821b2bd221ed74ce9bef8d28d94327450d4 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
-Date: Fri, 4 Jul 2014 17:26:41 +0200
-Subject: Recognize more ARM targets.
-
-Suggested by Dale P. Smith.
-
-* module/system/base/target.scm (cpu-endianness): Add cases for
- "arm.*eb", "^aarch64.*be", and "aarch64". Change "arm" case to
- "arm.*".
- (triplet-pointer-size): Allow underscore as in 'aarch64_be'.
-* test-suite/tests/asm-to-bytecode.test ("cross-compilation")["armeb-unknown-linux-gnu",
- "aarch64-linux-gnu", "aarch64_be-linux-gnu"]: New tests.
-
-Origin: upstream, commit: ffd3e55cfd12a3559621e3130d613d319243512d
-Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=758463
-Added-by: Rob Browning <rlb@defaultvalue.org>
----
- module/system/base/target.scm | 10 +++++++++-
- test-suite/tests/asm-to-bytecode.test | 9 +++++++++
- 2 files changed, 18 insertions(+), 1 deletion(-)
-
-diff --git a/module/system/base/target.scm b/module/system/base/target.scm
-index c74ae67..9d65184 100644
---- a/module/system/base/target.scm
-+++ b/module/system/base/target.scm
-@@ -72,6 +72,14 @@
- (endianness big))
- ((string-match "^arm.*el" cpu)
- (endianness little))
-+ ((string-match "^arm.*eb" cpu)
-+ (endianness big))
-+ ((string-prefix? "arm" cpu) ;ARMs are LE by default
-+ (endianness little))
-+ ((string-match "^aarch64.*be" cpu)
-+ (endianness big))
-+ ((string=? "aarch64" cpu)
-+ (endianness little))
- (else
- (error "unknown CPU endianness" cpu)))))
-
-@@ -95,7 +103,7 @@
- ((string-match "^x86_64-.*-gnux32" triplet) 4) ; x32
-
- ((string-match "64$" cpu) 8)
-- ((string-match "64[lbe][lbe]$" cpu) 8)
-+ ((string-match "64_?[lbe][lbe]$" cpu) 8)
- ((member cpu '("sparc" "powerpc" "mips" "mipsel")) 4)
- ((string-match "^arm.*" cpu) 4)
- (else (error "unknown CPU word size" cpu)))))
-diff --git a/test-suite/tests/asm-to-bytecode.test b/test-suite/tests/asm-to-bytecode.test
-index 6d2f20e..937e990 100644
---- a/test-suite/tests/asm-to-bytecode.test
-+++ b/test-suite/tests/asm-to-bytecode.test
-@@ -205,6 +205,15 @@
- (test-target "x86_64-unknown-linux-gnux32" ; x32 ABI (Debian tuplet)
- (endianness little) 4)
-
-+ (test-target "arm-unknown-linux-androideabi"
-+ (endianness little) 4)
-+ (test-target "armeb-unknown-linux-gnu"
-+ (endianness big) 4)
-+ (test-target "aarch64-linux-gnu"
-+ (endianness little) 8)
-+ (test-target "aarch64_be-linux-gnu"
-+ (endianness big) 8)
-+
- (pass-if-exception "unknown target"
- exception:miscellaneous-error
- (call-with-values (lambda ()
diff --git a/main/guile/0008-VM-ASM_MUL-for-ARM-Add-earlyclobber-constraint-to-th.patch b/main/guile/0008-VM-ASM_MUL-for-ARM-Add-earlyclobber-constraint-to-th.patch
deleted file mode 100644
index c403996a0d..0000000000
--- a/main/guile/0008-VM-ASM_MUL-for-ARM-Add-earlyclobber-constraint-to-th.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 923c3afaeeacce15c22ad90e7f47d3a250c36190 Mon Sep 17 00:00:00 2001
-From: Mark H Weaver <mhw@netris.org>
-Date: Fri, 19 Sep 2014 21:18:09 -0400
-Subject: VM: ASM_MUL for ARM: Add earlyclobber constraint to the SMULL
- outputs.
-
-Reported by Rob Browning <rlb@defaultvalue.org>.
-
-* libguile/vm-i-scheme.c (ASM_MUL)[ARM]: Add earlyclobber (&) constraint
- to the SMULL output registers.
-
-Origin: http://git.savannah.gnu.org/cgit/guile.git/commit/?id=a85c78ea1393985fdb6e6678dea19135c553d341
-Added-by: Rob Browning <rlb@defaultvalue.org>
----
- libguile/vm-i-scheme.c | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/libguile/vm-i-scheme.c b/libguile/vm-i-scheme.c
-index 587aa95..162efab 100644
---- a/libguile/vm-i-scheme.c
-+++ b/libguile/vm-i-scheme.c
-@@ -1,5 +1,4 @@
--/* Copyright (C) 2001, 2009, 2010, 2011, 2012, 2013,
-- * 2014 Free Software Foundation, Inc.
-+/* Copyright (C) 2001, 2009-2014 Free Software Foundation, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
-@@ -363,7 +362,7 @@ VM_DEFINE_FUNCTION (149, ge, "ge?", 2)
- { \
- scm_t_signed_bits rlo, rhi; \
- asm ("smull %0, %1, %2, %3\n" \
-- : "=r" (rlo), "=r" (rhi) \
-+ : "=&r" (rlo), "=&r" (rhi) \
- : "r" (SCM_UNPACK (x) - scm_tc2_int), \
- "r" (SCM_I_INUM (y))); \
- if (SCM_LIKELY (SCM_SRS (rlo, 31) == rhi)) \
diff --git a/main/guile/0009-VM-Allow-the-C-compiler-to-choose-FP_REG-on-ARM.patch b/main/guile/0009-VM-Allow-the-C-compiler-to-choose-FP_REG-on-ARM.patch
deleted file mode 100644
index 103b334558..0000000000
--- a/main/guile/0009-VM-Allow-the-C-compiler-to-choose-FP_REG-on-ARM.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 1ebf3ef7b8318865dc85f5a18be59b6f8e23949f Mon Sep 17 00:00:00 2001
-From: Mark H Weaver <mhw@netris.org>
-Date: Sat, 20 Sep 2014 03:59:51 -0400
-Subject: VM: Allow the C compiler to choose FP_REG on ARM.
-
-Reported by Rob Browning <rlb@defaultvalue.org>.
-
-* libguile/vm-engine.h (IP_REG)[__arm__]: Remove explicit register
- choice ("r7") for FP_REG, which was reported to cause compilation
- failures on ARM.
-
-Origin: http://git.savannah.gnu.org/cgit/guile.git/commit/?id=bed025bd2569b1c033f24d7d9e660e39ebf65cac
-Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=763115
-Added-by: Rob Browning <rlb@defaultvalue.org>
----
- libguile/vm-engine.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/libguile/vm-engine.h b/libguile/vm-engine.h
-index 28cab40..178828c 100644
---- a/libguile/vm-engine.h
-+++ b/libguile/vm-engine.h
-@@ -1,4 +1,4 @@
--/* Copyright (C) 2001, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
-+/* Copyright (C) 2001, 2009-2012, 2014 Free Software Foundation, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
-@@ -81,7 +81,7 @@
- #ifdef __arm__
- #define IP_REG asm("r9")
- #define SP_REG asm("r8")
--#define FP_REG asm("r7")
-+#define FP_REG
- #endif
- #endif
-
diff --git a/main/guile/0010-web-Keep-the-default-size-for-the-client-s-in-kernel.patch b/main/guile/0010-web-Keep-the-default-size-for-the-client-s-in-kernel.patch
deleted file mode 100644
index fd3ec43fa5..0000000000
--- a/main/guile/0010-web-Keep-the-default-size-for-the-client-s-in-kernel.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 4dee57333aa8dd5017f4c45302d40f8f3b900ab6 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
-Date: Fri, 23 May 2014 22:00:21 +0200
-Subject: web: Keep the default size for the client's in-kernel receive buffer.
-
-Fixes <http://bugs.gnu.org/15368>.
-
-* module/web/client.scm (open-socket-for-uri): Remove call to
- 'setsockopt'. Contrary to what the comment said, its effect was to
- shrink the receive buffer from 124 KiB (the default size, per
- /proc/sys/net/core/rmem_default on Linux-based systems) to 12 KiB.
-
-Origin: http://git.savannah.gnu.org/cgit/guile.git/commit/?id=0bb3f946e97424616c1a95f2372e5bc41e8f8174
-Added-by: Rob Browning <rlb@defaultvalue.org>
----
- module/web/client.scm | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/module/web/client.scm b/module/web/client.scm
-index 3f6c45b..070b0c3 100644
---- a/module/web/client.scm
-+++ b/module/web/client.scm
-@@ -1,6 +1,6 @@
- ;;; Web client
-
--;; Copyright (C) 2011, 2012, 2013 Free Software Foundation, Inc.
-+;; Copyright (C) 2011, 2012, 2013, 2014 Free Software Foundation, Inc.
-
- ;; This library is free software; you can redistribute it and/or
- ;; modify it under the terms of the GNU Lesser General Public
-@@ -92,8 +92,6 @@
-
- ;; Buffer input and output on this port.
- (setvbuf s _IOFBF)
-- ;; Enlarge the receive buffer.
-- (setsockopt s SOL_SOCKET SO_RCVBUF (* 12 1024))
- ;; If we're using a proxy, make a note of that.
- (when http-proxy (set-http-proxy-port?! s #t))
- s)
diff --git a/main/guile/0011-Fix-shrinking-of-contiguous-bytevectors-as-from-get-.patch b/main/guile/0011-Fix-shrinking-of-contiguous-bytevectors-as-from-get-.patch
deleted file mode 100644
index 2380d838e7..0000000000
--- a/main/guile/0011-Fix-shrinking-of-contiguous-bytevectors-as-from-get-.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From a1784f281279f6f8b95f75c336786987e77bc84a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
-Date: Wed, 28 May 2014 19:26:45 +0200
-Subject: Fix shrinking of contiguous bytevectors, as from 'get-bytevector-n'.
-
-Fixes <http://bugs.gnu.org/17466>.
-Reported by J Kalbhenn <jkal@posteo.eu>.
-
-* libguile/bytevectors.c (scm_c_shrink_bytevector): When BV is
- contiguous, add use of 'SCM_BYTEVECTOR_SET_CONTENTS'.
-
-Origin: http://git.savannah.gnu.org/cgit/guile.git/commit/?id=1baa2159307c34683e8ede54f38f65010fc594b0
-Added-by: Rob Browning <rlb@defaultvalue.org>
----
- libguile/bytevectors.c | 16 +++++++++++-----
- 1 file changed, 11 insertions(+), 5 deletions(-)
-
-diff --git a/libguile/bytevectors.c b/libguile/bytevectors.c
-index be8b654..b210440 100644
---- a/libguile/bytevectors.c
-+++ b/libguile/bytevectors.c
-@@ -1,4 +1,4 @@
--/* Copyright (C) 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
-+/* Copyright (C) 2009, 2010, 2011, 2012, 2014 Free Software Foundation, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
-@@ -315,10 +315,16 @@ scm_c_shrink_bytevector (SCM bv, size_t c_new_len)
- SCM_BYTEVECTOR_SET_LENGTH (bv, c_new_len);
-
- if (SCM_BYTEVECTOR_CONTIGUOUS_P (bv))
-- new_bv = PTR2SCM (scm_gc_realloc (SCM2PTR (bv),
-- c_len + SCM_BYTEVECTOR_HEADER_BYTES,
-- c_new_len + SCM_BYTEVECTOR_HEADER_BYTES,
-- SCM_GC_BYTEVECTOR));
-+ {
-+ signed char *c_bv;
-+
-+ c_bv = scm_gc_realloc (SCM2PTR (bv),
-+ c_len + SCM_BYTEVECTOR_HEADER_BYTES,
-+ c_new_len + SCM_BYTEVECTOR_HEADER_BYTES,
-+ SCM_GC_BYTEVECTOR);
-+ new_bv = PTR2SCM (c_bv);
-+ SCM_BYTEVECTOR_SET_CONTENTS (new_bv, c_bv + SCM_BYTEVECTOR_HEADER_BYTES);
-+ }
- else
- {
- signed char *c_bv;
diff --git a/main/guile/0013-Handle-p-in-format-warnings.patch b/main/guile/0013-Handle-p-in-format-warnings.patch
deleted file mode 100644
index 1490433f42..0000000000
--- a/main/guile/0013-Handle-p-in-format-warnings.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-From 1366d9ed223c6953df491260ecaeb3b3867006b2 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
-Date: Tue, 26 Aug 2014 23:40:22 +0200
-Subject: Handle ~p in 'format' warnings.
-
-Fixes <http://bugs.gnu.org/18299>.
-Reported by Frank Terbeck <ft@bewatermyfriend.org>.
-
-* module/language/tree-il/analyze.scm (format-string-argument-count):
- Add case for ~p.
-* test-suite/tests/tree-il.test ("warnings")["format"]("~p", "~p, too
- few arguments", "~:p", "~:@p, too many arguments", "~:@p, too few
- arguments"): New tests.
-
-Origin: http://git.savannah.gnu.org/cgit/guile.git/commit/?id=8ac39b38d14f47b6028030fa829f1fe7d0499f21
-Added-by: Rob Browning <rlb@defaultvalue.org>
----
- module/language/tree-il/analyze.scm | 13 ++++++++++-
- test-suite/tests/tree-il.test | 44 +++++++++++++++++++++++++++++++++++++
- 2 files changed, 56 insertions(+), 1 deletion(-)
-
-diff --git a/module/language/tree-il/analyze.scm b/module/language/tree-il/analyze.scm
-index badce9f..ef625d4 100644
---- a/module/language/tree-il/analyze.scm
-+++ b/module/language/tree-il/analyze.scm
-@@ -1,6 +1,7 @@
- ;;; TREE-IL -> GLIL compiler
-
--;; Copyright (C) 2001, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
-+;; Copyright (C) 2001, 2008, 2009, 2010, 2011, 2012,
-+;; 2014 Free Software Foundation, Inc.
-
- ;;;; This library is free software; you can redistribute it and/or
- ;;;; modify it under the terms of the GNU Lesser General Public
-@@ -1273,6 +1274,16 @@ accurate information is missing from a given `tree-il' element."
- conditions end-group
- (+ 1 min-count)
- (+ 1 max-count)))
-+ ((#\p #\P) (let* ((colon? (memq #\: params))
-+ (min-count (if colon?
-+ (max 1 min-count)
-+ (+ 1 min-count))))
-+ (loop (cdr chars) 'literal '()
-+ conditions end-group
-+ min-count
-+ (if colon?
-+ (max max-count min-count)
-+ (+ 1 max-count)))))
- ((#\[)
- (loop chars 'literal '() '()
- (let ((selector (previous-number params))
-diff --git a/test-suite/tests/tree-il.test b/test-suite/tests/tree-il.test
-index 34bc810..f892033 100644
---- a/test-suite/tests/tree-il.test
-+++ b/test-suite/tests/tree-il.test
-@@ -1698,6 +1698,50 @@
- (number? (string-contains (car w)
- "expected 3, got 2")))))
-
-+ (pass-if "~p"
-+ (null? (call-with-warnings
-+ (lambda ()
-+ (compile '(((@ (ice-9 format) format) #f "thing~p" 2))
-+ #:opts %opts-w-format
-+ #:to 'assembly)))))
-+
-+ (pass-if "~p, too few arguments"
-+ (let ((w (call-with-warnings
-+ (lambda ()
-+ (compile '((@ (ice-9 format) format) #f "~p")
-+ #:opts %opts-w-format
-+ #:to 'assembly)))))
-+ (and (= (length w) 1)
-+ (number? (string-contains (car w)
-+ "expected 1, got 0")))))
-+
-+ (pass-if "~:p"
-+ (null? (call-with-warnings
-+ (lambda ()
-+ (compile '(((@ (ice-9 format) format) #f "~d thing~:p" 2))
-+ #:opts %opts-w-format
-+ #:to 'assembly)))))
-+
-+ (pass-if "~:@p, too many arguments"
-+ (let ((w (call-with-warnings
-+ (lambda ()
-+ (compile '((@ (ice-9 format) format) #f "~d pupp~:@p" 5 5)
-+ #:opts %opts-w-format
-+ #:to 'assembly)))))
-+ (and (= (length w) 1)
-+ (number? (string-contains (car w)
-+ "expected 1, got 2")))))
-+
-+ (pass-if "~:@p, too few arguments"
-+ (let ((w (call-with-warnings
-+ (lambda ()
-+ (compile '((@ (ice-9 format) format) #f "pupp~:@p")
-+ #:opts %opts-w-format
-+ #:to 'assembly)))))
-+ (and (= (length w) 1)
-+ (number? (string-contains (car w)
-+ "expected 1, got 0")))))
-+
- (pass-if "~?"
- (null? (call-with-warnings
- (lambda ()
diff --git a/main/guile/0015-Fix-SCM_SMOB_OBJECT-_-_0_-_1_-_2_-_3_-LOC.patch b/main/guile/0015-Fix-SCM_SMOB_OBJECT-_-_0_-_1_-_2_-_3_-LOC.patch
deleted file mode 100644
index 8c82aedd15..0000000000
--- a/main/guile/0015-Fix-SCM_SMOB_OBJECT-_-_0_-_1_-_2_-_3_-LOC.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 129950433fd597c683478430240261161e5ced64 Mon Sep 17 00:00:00 2001
-From: David Kastrup <dak@gnu.org>
-Date: Sat, 20 Sep 2014 05:17:54 -0400
-Subject: Fix SCM_SMOB_OBJECT{_,_0_,_1_,_2_,_3_}LOC.
-
-Fixes <http://bugs.gnu.org/18495>.
-
-* libguile/smob.h (SCM_SMOB_OBJECT_LOC, SCM_SMOB_OBJECT_0_LOC)
- (SCM_SMOB_OBJECT_1_LOC, SCM_SMOB_OBJECT_2_LOC)
- (SCM_SMOB_OBJECT_3_LOC): These elementary API macros have been broken
- by commit 56164dc47f6616b359f0ad23be208f01a77b55fa in 2009.
-
-Signed-off-by: David Kastrup <dak@gnu.org>
-
-Origin: http://git.savannah.gnu.org/cgit/guile.git/commit/?id=8442211ef0029581b35f784489afcf210491fc41)
-Added-by: Rob Browning <rlb@defaultvalue.org>
----
- libguile/smob.h | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/libguile/smob.h b/libguile/smob.h
-index 60abe37..f910a24 100644
---- a/libguile/smob.h
-+++ b/libguile/smob.h
-@@ -156,14 +156,14 @@ scm_new_double_smob (scm_t_bits tc, scm_t_bits data1,
- #define SCM_SET_SMOB_OBJECT_1(x,obj) (SCM_SET_SMOB_OBJECT_N ((x), 1, (obj)))
- #define SCM_SET_SMOB_OBJECT_2(x,obj) (SCM_SET_SMOB_OBJECT_N ((x), 2, (obj)))
- #define SCM_SET_SMOB_OBJECT_3(x,obj) (SCM_SET_SMOB_OBJECT_N ((x), 3, (obj)))
--#define SCM_SMOB_OBJECT_0_LOC(x) (SCM_SMOB_OBJECT_N_LOC ((x), 0)))
--#define SCM_SMOB_OBJECT_1_LOC(x) (SCM_SMOB_OBJECT_N_LOC ((x), 1)))
--#define SCM_SMOB_OBJECT_2_LOC(x) (SCM_SMOB_OBJECT_N_LOC ((x), 2)))
--#define SCM_SMOB_OBJECT_3_LOC(x) (SCM_SMOB_OBJECT_N_LOC ((x), 3)))
-+#define SCM_SMOB_OBJECT_0_LOC(x) (SCM_SMOB_OBJECT_N_LOC ((x), 0))
-+#define SCM_SMOB_OBJECT_1_LOC(x) (SCM_SMOB_OBJECT_N_LOC ((x), 1))
-+#define SCM_SMOB_OBJECT_2_LOC(x) (SCM_SMOB_OBJECT_N_LOC ((x), 2))
-+#define SCM_SMOB_OBJECT_3_LOC(x) (SCM_SMOB_OBJECT_N_LOC ((x), 3))
-
- #define SCM_SMOB_OBJECT(x) (SCM_SMOB_OBJECT_1 (x))
- #define SCM_SET_SMOB_OBJECT(x,obj) (SCM_SET_SMOB_OBJECT_1 ((x), (obj)))
--#define SCM_SMOB_OBJECT_LOC(x) (SCM_SMOB_OBJECT_1_LOC (x)))
-+#define SCM_SMOB_OBJECT_LOC(x) (SCM_SMOB_OBJECT_1_LOC (x))
-
-
- #define SCM_SMOB_APPLY_0(x) (scm_call_0 (x))
diff --git a/main/guile/0016-peval-Handle-optional-argument-inits-that-refer-to-p.patch b/main/guile/0016-peval-Handle-optional-argument-inits-that-refer-to-p.patch
deleted file mode 100644
index c134815c1d..0000000000
--- a/main/guile/0016-peval-Handle-optional-argument-inits-that-refer-to-p.patch
+++ /dev/null
@@ -1,239 +0,0 @@
-From fdc2c9e00af5f2721c4e70180d30f45c15adc65a Mon Sep 17 00:00:00 2001
-From: Mark H Weaver <mhw@netris.org>
-Date: Sun, 28 Sep 2014 12:51:11 -0400
-Subject: peval: Handle optional argument inits that refer to previous
- arguments.
-
-Fixes <http://bugs.gnu.org/17634>.
-Reported by Josep Portella Florit <jpf@primfilat.com>.
-
-* module/language/tree-il/peval.scm (inlined-application): When inlining
- an application whose operator is a lambda expression with optional
- arguments that rely on default initializers, expand into a series of
- nested let expressions, to ensure that previous arguments are in scope
- when the default initializers are evaluated.
-
-* test-suite/tests/peval.test ("partial evaluation"): Add tests.
-
-Origin: http://git.savannah.gnu.org/cgit/guile.git/commit/?id=7a71a45cfd6092402d540e9bc5d2432941a8a336
-Added-by: Rob Browning <rlb@defaultvalue.org>
----
- module/language/tree-il/peval.scm | 94 +++++++++++++++++++++++++++++++--------
- test-suite/tests/peval.test | 86 ++++++++++++++++++++++++++++++++++-
- 2 files changed, 160 insertions(+), 20 deletions(-)
-
-diff --git a/module/language/tree-il/peval.scm b/module/language/tree-il/peval.scm
-index bd92edc..7dfbf6f 100644
---- a/module/language/tree-il/peval.scm
-+++ b/module/language/tree-il/peval.scm
-@@ -1,6 +1,6 @@
- ;;; Tree-IL partial evaluator
-
--;; Copyright (C) 2011, 2012, 2013 Free Software Foundation, Inc.
-+;; Copyright (C) 2011-2014 Free Software Foundation, Inc.
-
- ;;;; This library is free software; you can redistribute it and/or
- ;;;; modify it under the terms of the GNU Lesser General Public
-@@ -1313,24 +1313,80 @@ top-level bindings from ENV and return the resulting expression."
- (nopt (if opt (length opt) 0))
- (key (source-expression proc)))
- (define (inlined-application)
-- (make-let src
-- (append req
-- (or opt '())
-- (if rest (list rest) '()))
-- gensyms
-- (if (> nargs (+ nreq nopt))
-- (append (list-head orig-args (+ nreq nopt))
-- (list
-- (make-application
-- #f
-- (make-primitive-ref #f 'list)
-- (drop orig-args (+ nreq nopt)))))
-- (append orig-args
-- (drop inits (- nargs nreq))
-- (if rest
-- (list (make-const #f '()))
-- '())))
-- body))
-+ (cond
-+ ((= nargs (+ nreq nopt))
-+ (make-let src
-+ (append req
-+ (or opt '())
-+ (if rest (list rest) '()))
-+ gensyms
-+ (append orig-args
-+ (if rest
-+ (list (make-const #f '()))
-+ '()))
-+ body))
-+ ((> nargs (+ nreq nopt))
-+ (make-let src
-+ (append req
-+ (or opt '())
-+ (list rest))
-+ gensyms
-+ (append (take orig-args (+ nreq nopt))
-+ (list (make-application
-+ #f
-+ (make-primitive-ref #f 'list)
-+ (drop orig-args (+ nreq nopt)))))
-+ body))
-+ (else
-+ ;; Here we handle the case where nargs < nreq + nopt,
-+ ;; so the rest argument (if any) will be empty, and
-+ ;; there will be optional arguments that rely on their
-+ ;; default initializers.
-+ ;;
-+ ;; The default initializers of optional arguments
-+ ;; may refer to earlier arguments, so in the general
-+ ;; case we must expand into a series of nested let
-+ ;; expressions.
-+ ;;
-+ ;; In the generated code, the outermost let
-+ ;; expression will bind all arguments provided by
-+ ;; the application's argument list, as well as the
-+ ;; empty rest argument, if any. Each remaining
-+ ;; optional argument that relies on its default
-+ ;; initializer will be bound within an inner let.
-+ ;;
-+ ;; rest-gensyms, rest-vars and rest-inits will have
-+ ;; either 0 or 1 elements. They are oddly named, but
-+ ;; allow simpler code below.
-+ (let*-values
-+ (((non-rest-gensyms rest-gensyms)
-+ (split-at gensyms (+ nreq nopt)))
-+ ((provided-gensyms default-gensyms)
-+ (split-at non-rest-gensyms nargs))
-+ ((provided-vars default-vars)
-+ (split-at (append req opt) nargs))
-+ ((rest-vars)
-+ (if rest (list rest) '()))
-+ ((rest-inits)
-+ (if rest
-+ (list (make-const #f '()))
-+ '()))
-+ ((default-inits)
-+ (drop inits (- nargs nreq))))
-+ (make-let src
-+ (append provided-vars rest-vars)
-+ (append provided-gensyms rest-gensyms)
-+ (append orig-args rest-inits)
-+ (fold-right (lambda (var gensym init body)
-+ (make-let src
-+ (list var)
-+ (list gensym)
-+ (list init)
-+ body))
-+ body
-+ default-vars
-+ default-gensyms
-+ default-inits))))))
-
- (cond
- ((or (< nargs nreq) (and (not rest) (> nargs (+ nreq nopt))))
-diff --git a/test-suite/tests/peval.test b/test-suite/tests/peval.test
-index 5b003d2..2183429 100644
---- a/test-suite/tests/peval.test
-+++ b/test-suite/tests/peval.test
-@@ -1,7 +1,7 @@
- ;;;; tree-il.test --- test suite for compiling tree-il -*- scheme -*-
- ;;;; Andy Wingo <wingo@pobox.com> --- May 2009
- ;;;;
--;;;; Copyright (C) 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
-+;;;; Copyright (C) 2009-2014 Free Software Foundation, Inc.
- ;;;;
- ;;;; This library is free software; you can redistribute it and/or
- ;;;; modify it under the terms of the GNU Lesser General Public
-@@ -411,6 +411,90 @@
- (const 7))
-
- (pass-if-peval
-+ ;; Higher order with optional argument (default uses earlier argument).
-+ ;; <http://bugs.gnu.org/17634>
-+ ((lambda* (f x #:optional (y (+ 3 (car x))))
-+ (+ y (f (* (car x) (cadr x)))))
-+ (lambda (x)
-+ (+ x 1))
-+ '(2 3))
-+ (const 12))
-+
-+ (pass-if-peval
-+ ;; Higher order with optional arguments
-+ ;; (default uses earlier optional argument).
-+ ((lambda* (f x #:optional (y (+ 3 (car x))) (z (+ (cadr x) y)))
-+ (+ y z (f (* (car x) (cadr x)))))
-+ (lambda (x)
-+ (+ x 1))
-+ '(2 3))
-+ (const 20))
-+
-+ (pass-if-peval
-+ ;; Higher order with optional arguments (one caller-supplied value,
-+ ;; one default that uses earlier optional argument).
-+ ((lambda* (f x #:optional (y (+ 3 (car x))) (z (+ (cadr x) y)))
-+ (+ y z (f (* (car x) (cadr x)))))
-+ (lambda (x)
-+ (+ x 1))
-+ '(2 3)
-+ -3)
-+ (const 4))
-+
-+ (pass-if-peval
-+ ;; Higher order with optional arguments (caller-supplied values).
-+ ((lambda* (f x #:optional (y (+ 3 (car x))) (z (+ (cadr x) y)))
-+ (+ y z (f (* (car x) (cadr x)))))
-+ (lambda (x)
-+ (+ x 1))
-+ '(2 3)
-+ -3
-+ 17)
-+ (const 21))
-+
-+ (pass-if-peval
-+ ;; Higher order with optional and rest arguments (one
-+ ;; caller-supplied value, one default that uses earlier optional
-+ ;; argument).
-+ ((lambda* (f x #:optional (y (+ 3 (car x))) (z (+ (cadr x) y))
-+ #:rest r)
-+ (list r (+ y z (f (* (car x) (cadr x))))))
-+ (lambda (x)
-+ (+ x 1))
-+ '(2 3)
-+ -3)
-+ (apply (primitive list) (const ()) (const 4)))
-+
-+ (pass-if-peval
-+ ;; Higher order with optional and rest arguments
-+ ;; (caller-supplied values for optionals).
-+ ((lambda* (f x #:optional (y (+ 3 (car x))) (z (+ (cadr x) y))
-+ #:rest r)
-+ (list r (+ y z (f (* (car x) (cadr x))))))
-+ (lambda (x)
-+ (+ x 1))
-+ '(2 3)
-+ -3
-+ 17)
-+ (apply (primitive list) (const ()) (const 21)))
-+
-+ (pass-if-peval
-+ ;; Higher order with optional and rest arguments
-+ ;; (caller-supplied values for optionals and rest).
-+ ((lambda* (f x #:optional (y (+ 3 (car x))) (z (+ (cadr x) y))
-+ #:rest r)
-+ (list r (+ y z (f (* (car x) (cadr x))))))
-+ (lambda (x)
-+ (+ x 1))
-+ '(2 3)
-+ -3
-+ 17
-+ 8
-+ 3)
-+ (let (r) (_) ((apply (primitive list) (const 8) (const 3)))
-+ (apply (primitive list) (lexical r _) (const 21))))
-+
-+ (pass-if-peval
- ;; Higher order with optional argument (caller-supplied value).
- ((lambda* (f x #:optional (y 0))
- (+ y (f (* (car x) (cadr x)))))
diff --git a/main/guile/APKBUILD b/main/guile/APKBUILD
index d401afd60a..09cc1c1a33 100644
--- a/main/guile/APKBUILD
+++ b/main/guile/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=guile
-pkgver=2.0.11
-pkgrel=2
+pkgver=2.0.13
+pkgrel=0
pkgdesc="Guile is a portable, embeddable Scheme implementation written in C"
url="http://www.gnu.org/software/guile/"
arch="all"
@@ -14,34 +14,12 @@ depends_dev="guile gc-dev"
install=
source="ftp://ftp.gnu.org/pub/gnu/$pkgname/$pkgname-$pkgver.tar.gz
0002-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch
- 0003-Recognize-more-ARM-targets.patch
- 0008-VM-ASM_MUL-for-ARM-Add-earlyclobber-constraint-to-th.patch
- 0009-VM-Allow-the-C-compiler-to-choose-FP_REG-on-ARM.patch
- 0010-web-Keep-the-default-size-for-the-client-s-in-kernel.patch
- 0011-Fix-shrinking-of-contiguous-bytevectors-as-from-get-.patch
- 0013-Handle-p-in-format-warnings.patch
- 0015-Fix-SCM_SMOB_OBJECT-_-_0_-_1_-_2_-_3_-LOC.patch
- 0016-peval-Handle-optional-argument-inits-that-refer-to-p.patch
-
- strtol_l.patch
"
-_builddir="$srcdir"/$pkgname-$pkgver
-prepare() {
- cd "$_builddir"
- update_config_sub || return 1
- for i in $source; do
- case "$i" in
- *.patch)
- msg "Applying $i"
- patch -p1 -i "$srcdir"/$i || return 1
- ;;
- esac
- done
-}
+builddir="$srcdir"/$pkgname-$pkgver
build() {
- cd "$_builddir"
+ cd "$builddir"
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -53,41 +31,14 @@ build() {
}
package() {
- cd "$_builddir"
+ cd "$builddir"
make DESTDIR="$pkgdir" install || return 1
rm "$pkgdir"/usr/lib/charset.alias
}
-md5sums="e532c68c6f17822561e3001136635ddd guile-2.0.11.tar.gz
-00b381cff020d6b43de150a99d08d955 0002-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch
-f140776c944bacc6cc14919f83902696 0003-Recognize-more-ARM-targets.patch
-16b1a41f9cc22b2b177200a6f3961752 0008-VM-ASM_MUL-for-ARM-Add-earlyclobber-constraint-to-th.patch
-25ed9239ec91a1fb78f6c4947125554f 0009-VM-Allow-the-C-compiler-to-choose-FP_REG-on-ARM.patch
-4bed81aa62ff7a4b6b0cf223efce6a5f 0010-web-Keep-the-default-size-for-the-client-s-in-kernel.patch
-36cd7ea5a15ace11c9c37f424baba09d 0011-Fix-shrinking-of-contiguous-bytevectors-as-from-get-.patch
-9e7b0d2d52e22b253ac314c6cb317bb4 0013-Handle-p-in-format-warnings.patch
-9bb62ca4bd913b5ba6a94868a2d33464 0015-Fix-SCM_SMOB_OBJECT-_-_0_-_1_-_2_-_3_-LOC.patch
-04012be1e50736374564b14440e410f6 0016-peval-Handle-optional-argument-inits-that-refer-to-p.patch
-54b76be46ecc9333e2a57cc0906c1927 strtol_l.patch"
-sha256sums="e6786c934346fa2e38e46d8d81a622bb1c16d130153523f6129fcd79ef1fb040 guile-2.0.11.tar.gz
-760355a63be9b756607a03352ceb916dfba02da917fa00c6bc07253d0f7c75f6 0002-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch
-1b438b5b513f6711c098a54944f907e4b4744bfd1b9315fb8bc33c67a1481952 0003-Recognize-more-ARM-targets.patch
-10c710b4e4cba8a99d5f6ca1fd24653f5f67ed6fd3263b551678648713bdc049 0008-VM-ASM_MUL-for-ARM-Add-earlyclobber-constraint-to-th.patch
-9247fdd64b5bc8dc8e3b233156a6b6027c7b06778729773d5c360f16c1f85fd3 0009-VM-Allow-the-C-compiler-to-choose-FP_REG-on-ARM.patch
-36a05b4aee0135897ab1322762931c5ee4ee1e9d153ec46e69c5bc1954552788 0010-web-Keep-the-default-size-for-the-client-s-in-kernel.patch
-b7b3425c807d227dccf0ada653d3edd6d343d6c9d7ee648140bd13812f7776e7 0011-Fix-shrinking-of-contiguous-bytevectors-as-from-get-.patch
-3557178fec43d58c62a505a3199054d4f32da97cfafaa969a8e9b90616bc603f 0013-Handle-p-in-format-warnings.patch
-4ded8227e4b93a5205ddcf43f01e0e8c7684396669192b2e95b2c710573b6395 0015-Fix-SCM_SMOB_OBJECT-_-_0_-_1_-_2_-_3_-LOC.patch
-d28837b89c1653d9addf80573934dc97128a0c464b531f64fc58b1577f60340a 0016-peval-Handle-optional-argument-inits-that-refer-to-p.patch
-2ba49adb27db50f5ec33779ce2f002cafde99a04038ca689bee7d2098296ce33 strtol_l.patch"
-sha512sums="dc1a30d44e6d432fab2407d72385e959af863f6feba6cca5813b4de24c92200c78b44f336d1f4fa8c7b4058dea880982787c69888c91a2236fd2fb1d313137fd guile-2.0.11.tar.gz
-b1c309cc07830ff1741ef88857f8099187b449580e8d57862886abc367ef1accc5a35636d81eee09247f13d3a751cdc8909fdea05368d3d509bd2039ce06d078 0002-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch
-0d3a5fd9ebd34d65f9c5534ea87a161099f4e0d1aae0153226962776ad0b823becd1688fe431c8425968d44377aec5ba2f81865924652125f6356b5f9d993101 0003-Recognize-more-ARM-targets.patch
-b283ac11ca5d01a4ab102258ff896fb3fb6cb053144ea31ae0d43c0229c9b9509c4eadc90d757b232a3c5421f39a83107893a3cd2c06551a4b822ab82f1ba4fc 0008-VM-ASM_MUL-for-ARM-Add-earlyclobber-constraint-to-th.patch
-44ed0295e4f07bec155f14d6d77e6cde36be0517f594c2304d0dc21956bdc5235586a52f1a46ddc5e2bc9106c3cc4cdac14916c6e61aaca7ffa9139dd166e02e 0009-VM-Allow-the-C-compiler-to-choose-FP_REG-on-ARM.patch
-58d0531f5a5a641187e3fadd8fd3951f18751531617f0eb10da59c8b8e7686329a3e1905b888496932daf2be0dd4597231268dee3e3853448e721337ade70b37 0010-web-Keep-the-default-size-for-the-client-s-in-kernel.patch
-3ad38f8ed820751203e263d58b035304d0bb1f8815d4bcd4f4d2e292acc6a2f8c3d2a2287e48520386cd9fc785e179d2f8f1f4b9252bdbba817de06ab5df7ab1 0011-Fix-shrinking-of-contiguous-bytevectors-as-from-get-.patch
-8484e882723d68ea1e658a86c7be5006de1af7d457f7f9a37a99b427460db8420980174efdcaff8fbfa49346ba01252d2e6183c8b5e323bd228d223ed011655b 0013-Handle-p-in-format-warnings.patch
-5f450e57968f2f0592a0de6beaa02db315d668a31a85330e3aa44d87995c82f866828fceb71012c123f5dd3b3b5c3ec944c8011ba09658ad00e8ce1c6f958a87 0015-Fix-SCM_SMOB_OBJECT-_-_0_-_1_-_2_-_3_-LOC.patch
-f55e514534fd1aba547ed8d4350fbeeaef77d634d7f1915a0108244a9bef5afe7074f3292b9f74bdccd0c56cddc60e222e9ccd2519ba337b6f156123e632ec26 0016-peval-Handle-optional-argument-inits-that-refer-to-p.patch
-596efb03c65df98ea9afd932cb67e5b436e35fbf2442630e8a1854818f246b5a24eb920e3502ba28b882f0afb27c5148f1ff509c29baa91a7f37b3ecdc28c000 strtol_l.patch"
+md5sums="dac267e76330176d48583258aeaa7016 guile-2.0.13.tar.gz
+00b381cff020d6b43de150a99d08d955 0002-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch"
+sha256sums="ee8073c4582bb4f06412452fdf5dd185aae607441f1313c824f44bdd668b0bde guile-2.0.13.tar.gz
+760355a63be9b756607a03352ceb916dfba02da917fa00c6bc07253d0f7c75f6 0002-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch"
+sha512sums="79fd5fda5064331eb687934ec3eaf07943f5b23bd05fbce23ab5ee3698864250b33746e33b8f074692b56f7b428dac42ed5d3f5b9dc17d171aa6dfadc1625b00 guile-2.0.13.tar.gz
+b1c309cc07830ff1741ef88857f8099187b449580e8d57862886abc367ef1accc5a35636d81eee09247f13d3a751cdc8909fdea05368d3d509bd2039ce06d078 0002-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch"
diff --git a/main/guile/strtol_l.patch b/main/guile/strtol_l.patch
deleted file mode 100644
index 61f4f331ee..0000000000
--- a/main/guile/strtol_l.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-We dont have strtol_l on musl so the missing configure.ac check is not
-a problem for us. By skipping it we also avoid regenerating configure
-script.
-
-diff --git a/libguile/i18n.c b/libguile/i18n.c
-index f0e3443..17e9eca 100644
---- a/libguile/i18n.c
-+++ b/libguile/i18n.c
-@@ -1373,7 +1373,7 @@ SCM_DEFINE (scm_locale_string_to_integer, "locale-string->integer",
-
- if (c_locale != NULL)
- {
--#ifdef USE_GNU_LOCALE_API
-+#if defined(USE_GNU_LOCALE_API) && defined(HAVE_STRTOL_L)
- c_result = strtol_l (c_str, &c_endptr, c_base, c_locale);
- #else
- RUN_IN_LOCALE_SECTION (c_locale,
---
-2.4.3
-