guile: updated to 2.0.6
Some patches (disable_goops_optimizations, fix_cross_compilation) don't seem to be needed anymore. Others (change-install-data-hook, mark-unused-modules) were updated to work on 2.0.6. Tested by building and running guile under QEMU with core-image-sato-sdk and also builing guile on MIPS. (From OE-Core rev: 310f169d3d89f3a4fc6a540974a30c7eb565db3a) Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
a4b1e34848
commit
2db74c67cb
|
@ -22,18 +22,15 @@ Signed-off-by: Song.Li <Song.Li@windriver.com>
|
|||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/meta/Makefile.am b/meta/Makefile.am
|
||||
index f26fc44..e603e5c 100644
|
||||
index a05730d..bd20784 100644
|
||||
--- a/meta/Makefile.am
|
||||
+++ b/meta/Makefile.am
|
||||
@@ -27,7 +27,7 @@ EXTRA_DIST= \
|
||||
@@ -28,7 +28,7 @@ EXTRA_DIST= \
|
||||
guild.in guile-config.in
|
||||
|
||||
# What we now call `guild' used to be known as `guile-tools'.
|
||||
-install-data-hook:
|
||||
+install-exec-hook:
|
||||
cd $(DESTDIR)$(bindir) && rm -f guile-tools$(EXEEXT) && \
|
||||
$(LN_S) guild$(EXEEXT) guile-tools$(EXEEXT)
|
||||
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
guild="`echo $(ECHO_N) guild \
|
||||
| $(SED) -e '$(program_transform_name)'`$(EXEEXT)" ; \
|
||||
guile_tools="`echo $(ECHO_N) guile-tools \
|
||||
|
|
|
@ -15,24 +15,25 @@ garbage collector.
|
|||
1 files changed, 6 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/test-suite/tests/gc.test b/test-suite/tests/gc.test
|
||||
index 97eeb19..58e4936 100644
|
||||
index a969752..8c8e13e 100644
|
||||
--- a/test-suite/tests/gc.test
|
||||
+++ b/test-suite/tests/gc.test
|
||||
@@ -80,11 +80,12 @@
|
||||
(gc) ;; thrice: because the test doesn't succeed with only
|
||||
@@ -84,11 +84,13 @@
|
||||
;; one gc round. not sure why.
|
||||
|
||||
- (= (let lp ((i 0))
|
||||
- (if (guard)
|
||||
- (lp (1+ i))
|
||||
- i))
|
||||
- total)))
|
||||
+ (or (= (let lp ((i 0))
|
||||
+ (if (guard)
|
||||
+ (lp (1+ i))
|
||||
+ i))
|
||||
+ total)
|
||||
+ (throw 'unresolved))))
|
||||
(maybe-gc-flakiness
|
||||
- (= (let lp ((i 0))
|
||||
- (if (guard)
|
||||
- (lp (1+ i))
|
||||
- i))
|
||||
- total))))
|
||||
+ (or (= (let lp ((i 0))
|
||||
+ (if (guard)
|
||||
+ (lp (1+ i))
|
||||
+ i))
|
||||
+ total)
|
||||
+ (throw 'unresolved)))))
|
||||
+
|
||||
|
||||
(pass-if "Lexical vars are collectable"
|
||||
(let ((l (compile
|
||||
|
|
|
@ -1,32 +0,0 @@
|
|||
commit f7d8efc630ce45f5d82aae5b2682d261e5541d5f
|
||||
Author: Andy Wingo <wingo@pobox.com>
|
||||
Date: Sun Apr 15 13:00:30 2012 -0700
|
||||
|
||||
disable optimizations in goops dispatch procedures
|
||||
|
||||
* module/oop/goops/dispatch.scm: Disable peval and cse.
|
||||
|
||||
Upstream-Status: Backported
|
||||
|
||||
diff --git a/module/oop/goops/dispatch.scm b/module/oop/goops/dispatch.scm
|
||||
index e433b86..b12ab15 100644
|
||||
--- a/module/oop/goops/dispatch.scm
|
||||
+++ b/module/oop/goops/dispatch.scm
|
||||
@@ -1,4 +1,4 @@
|
||||
-;;;; Copyright (C) 1999, 2000, 2001, 2003, 2006, 2009 Free Software Foundation, Inc.
|
||||
+;;;; Copyright (C) 1999, 2000, 2001, 2003, 2006, 2009, 2012 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
|
||||
@@ -178,7 +178,9 @@
|
||||
'())
|
||||
(acons gf gf-sym '()))))
|
||||
(define (comp exp vals)
|
||||
- (let ((p ((@ (system base compile) compile) exp #:env *dispatch-module*)))
|
||||
+ (let ((p ((@ (system base compile) compile) exp
|
||||
+ #:env *dispatch-module*
|
||||
+ #:opts '(#:partial-eval? #f #:cse? #f))))
|
||||
(apply p vals)))
|
||||
|
||||
;; kick it.
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
commit f3b312a19d70293d7a3407fc4ef479183edd7cca
|
||||
Author: Ludovic Courtès <ludo@gnu.org>
|
||||
Date: Wed Jun 20 01:11:44 2012 +0200
|
||||
|
||||
Fix cross-compilation of GOOPS-using code.
|
||||
|
||||
Fixes <http://bugs.gnu.org/11645>.
|
||||
Reported by Bogdan A. Marinescu <bogdan.a.marinescu@intel.com>.
|
||||
|
||||
* module/oop/goops/dispatch.scm (compute-dispatch-procedure)[comp]:
|
||||
Wrap `compile' call in (with-target %host-type ...).
|
||||
|
||||
Upstream-Status: Backported
|
||||
|
||||
diff --git a/module/oop/goops/dispatch.scm b/module/oop/goops/dispatch.scm
|
||||
index b12ab15..de5359f 100644
|
||||
--- a/module/oop/goops/dispatch.scm
|
||||
+++ b/module/oop/goops/dispatch.scm
|
||||
@@ -25,6 +25,7 @@
|
||||
#:use-module (oop goops)
|
||||
#:use-module (oop goops util)
|
||||
#:use-module (oop goops compile)
|
||||
+ #:use-module (system base target)
|
||||
#:export (memoize-method!)
|
||||
#:no-backtrace)
|
||||
|
||||
@@ -178,11 +179,15 @@
|
||||
'())
|
||||
(acons gf gf-sym '()))))
|
||||
(define (comp exp vals)
|
||||
- (let ((p ((@ (system base compile) compile) exp
|
||||
- #:env *dispatch-module*
|
||||
- #:opts '(#:partial-eval? #f #:cse? #f))))
|
||||
- (apply p vals)))
|
||||
-
|
||||
+ ;; When cross-compiling Guile itself, the native Guile must generate
|
||||
+ ;; code for the host.
|
||||
+ (with-target %host-type
|
||||
+ (lambda ()
|
||||
+ (let ((p ((@ (system base compile) compile) exp
|
||||
+ #:env *dispatch-module*
|
||||
+ #:opts '(#:partial-eval? #f #:cse? #f))))
|
||||
+ (apply p vals)))))
|
||||
+
|
||||
;; kick it.
|
||||
(scan))
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
ISO C11 removes the specification of gets() from the C language, eglibc 2.16+ removed it
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
Upstream-Status: Pending
|
||||
Index: guile-2.0.5/lib/stdio.in.h
|
||||
===================================================================
|
||||
--- guile-2.0.5.orig/lib/stdio.in.h 2012-01-24 03:06:06.000000000 -0800
|
||||
+++ guile-2.0.5/lib/stdio.in.h 2012-07-04 12:28:15.617108481 -0700
|
||||
@@ -711,11 +711,13 @@
|
||||
_GL_CXXALIAS_SYS (gets, char *, (char *s));
|
||||
# undef gets
|
||||
# endif
|
||||
+# if defined gets
|
||||
_GL_CXXALIASWARN (gets);
|
||||
/* It is very rare that the developer ever has full control of stdin,
|
||||
so any use of gets warrants an unconditional warning. Assume it is
|
||||
always declared, since it is required by C89. */
|
||||
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
|
||||
+# endif
|
||||
#endif
|
||||
|
||||
|
|
@ -17,10 +17,7 @@ SRC_URI = "${GNU_MIRROR}/guile/guile-${PV}.tar.gz \
|
|||
file://debian/0002-Mark-Unused-modules-are-removed-gc-test-as-unresolve.patch \
|
||||
file://debian/0003-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch \
|
||||
file://opensuse/guile-64bit.patch \
|
||||
file://guile_2.0.5_fix_sed_error.patch \
|
||||
file://guile_2.0.5_disable_goops_optimizations.patch \
|
||||
file://guile_2.0.5_fix_cross_compilation.patch \
|
||||
file://remove-gets.patch \
|
||||
file://guile_2.0.6_fix_sed_error.patch \
|
||||
file://arm_endianness.patch \
|
||||
file://change-install-data-hook-to-install-exec-hook-in-gui.patch \
|
||||
"
|
||||
|
@ -28,10 +25,8 @@ SRC_URI = "${GNU_MIRROR}/guile/guile-${PV}.tar.gz \
|
|||
# file://debian/0001-Change-guile-to-guile-X.Y-for-info-pages.patch
|
||||
# file://opensuse/guile-turn-off-gc-test.patch
|
||||
|
||||
SRC_URI[md5sum] = "bcf70d54b44c99cb9acd3f63c5486b4b"
|
||||
SRC_URI[sha256sum] = "2a026ea6cdbc51ca71bcd9787839debfa45ac5db1e26dc00b30ca9b128b10956"
|
||||
|
||||
PR = "r5"
|
||||
SRC_URI[md5sum] = "3438cd4415c0c43ca93a20e845eba7e2"
|
||||
SRC_URI[sha256sum] = "3ece055145a5020dd36b84f5fbccd4b3846a671960dd5ee55931555f03200950"
|
||||
|
||||
inherit autotools gettext
|
||||
BBCLASSEXTEND = "native"
|
Loading…
Reference in New Issue