diff options
Diffstat (limited to 'yocto-poky/meta/recipes-devtools/guile/files')
10 files changed, 371 insertions, 0 deletions
diff --git a/yocto-poky/meta/recipes-devtools/guile/files/arm_aarch64.patch b/yocto-poky/meta/recipes-devtools/guile/files/arm_aarch64.patch new file mode 100644 index 000000000..f1788b62f --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/arm_aarch64.patch @@ -0,0 +1,19 @@ +guile: add aarch64 recognition + +Assume little-endian. + +Upstream-Status: Pending + +Signed-off-by: joe.slater@windriver.com + +--- a/module/system/base/target.scm ++++ b/module/system/base/target.scm +@@ -70,6 +70,8 @@ + ((member cpu '("sparc" "sparc64" "powerpc" "powerpc64" "spu" + "mips" "mips64")) + (endianness big)) ++ ((string-match "^aarch64" cpu) ++ (endianness little)) + ((string-match "^arm.*eb" cpu) + (endianness big)) + ((string-match "^arm.*" cpu) diff --git a/yocto-poky/meta/recipes-devtools/guile/files/arm_endianness.patch b/yocto-poky/meta/recipes-devtools/guile/files/arm_endianness.patch new file mode 100644 index 000000000..ea4328b81 --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/arm_endianness.patch @@ -0,0 +1,23 @@ +Support form ARM endianness + +Fixes Yocto bug# 2729 + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +Upstream-Status: Pending + +Index: guile-2.0.5/module/system/base/target.scm +=================================================================== +--- guile-2.0.5.orig/module/system/base/target.scm 2012-01-24 03:06:06.000000000 -0800 ++++ guile-2.0.5/module/system/base/target.scm 2012-07-12 13:05:44.372364103 -0700 +@@ -70,7 +70,9 @@ + ((member cpu '("sparc" "sparc64" "powerpc" "powerpc64" "spu" + "mips" "mips64")) + (endianness big)) +- ((string-match "^arm.*el" cpu) ++ ((string-match "^arm.*eb" cpu) ++ (endianness big)) ++ ((string-match "^arm.*" cpu) + (endianness little)) + (else + (error "unknown CPU endianness" cpu))))) diff --git a/yocto-poky/meta/recipes-devtools/guile/files/debian/0002-Mark-Unused-modules-are-removed-gc-test-as-unresolve.patch b/yocto-poky/meta/recipes-devtools/guile/files/debian/0002-Mark-Unused-modules-are-removed-gc-test-as-unresolve.patch new file mode 100644 index 000000000..43238a7d2 --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/debian/0002-Mark-Unused-modules-are-removed-gc-test-as-unresolve.patch @@ -0,0 +1,39 @@ +Upstream-Status: Inappropriate [debian patch] + +Signed-Off-by: Nitin A Kamble <nitin.a.kamble@intel.com> + +From e52bfcdbaca5dce498678d8f512381e3e39a4066 Mon Sep 17 00:00:00 2001 +From: Rob Browning <rlb@defaultvalue.org> +Date: Sun, 18 Mar 2012 11:40:55 -0500 +Subject: Mark "Unused modules are removed" gc test as unresolved. + +As per discussion with upstream, mark this test as unresolved since it +may produce false negatives, depending on the behavior/timing of the +garbage collector. +--- + test-suite/tests/gc.test | 11 ++++++----- + 1 files changed, 6 insertions(+), 5 deletions(-) + +diff --git a/test-suite/tests/gc.test b/test-suite/tests/gc.test +index a969752..8c8e13e 100644 +--- a/test-suite/tests/gc.test ++++ b/test-suite/tests/gc.test +@@ -84,11 +84,13 @@ + ;; one gc round. not sure why. + + (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 diff --git a/yocto-poky/meta/recipes-devtools/guile/files/debian/0003-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch b/yocto-poky/meta/recipes-devtools/guile/files/debian/0003-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch new file mode 100644 index 000000000..34be3b96e --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/debian/0003-Mark-mutex-with-owner-not-retained-threads-test-as-u.patch @@ -0,0 +1,33 @@ +Upstream-Status: Inappropriate [debian patch] + +Signed-Off-by: Nitin A Kamble <nitin.a.kamble@intel.com> + +From 848543091d55dddb54a85612155964506d712852 Mon Sep 17 00:00:00 2001 +From: Rob Browning <rlb@defaultvalue.org> +Date: Sun, 18 Mar 2012 13:28:24 -0500 +Subject: Mark "mutex with owner not retained" threads test as unresolved. + +As per discussion with upstream, mark this test as unresolved since it +may produce false negatives, depending on the behavior/timing of the +garbage collector. +--- + test-suite/tests/threads.test | 6 ++++-- + 1 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/test-suite/tests/threads.test b/test-suite/tests/threads.test +index 85a7c38..50899cb 100644 +--- a/test-suite/tests/threads.test ++++ b/test-suite/tests/threads.test +@@ -414,8 +414,10 @@ + + (gc) (gc) + (let ((m (g))) +- (and (mutex? m) +- (eq? (mutex-owner m) (current-thread))))))) ++ (or ++ (and (mutex? m) ++ (eq? (mutex-owner m) (current-thread))) ++ (throw 'unresolved)))))) + + ;; + ;; mutex lock levels diff --git a/yocto-poky/meta/recipes-devtools/guile/files/guile_2.0.6_fix_sed_error.patch b/yocto-poky/meta/recipes-devtools/guile/files/guile_2.0.6_fix_sed_error.patch new file mode 100644 index 000000000..e5dc22637 --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/guile_2.0.6_fix_sed_error.patch @@ -0,0 +1,24 @@ +Upstream-Status: Pending + +This fixes sed issue when prefix has / in it, like /usr/local + +autoreconf error avoided: +| sed: -e expression #1, char 9: unknown option to `s' +| configure.ac:39: error: AC_INIT should be called with package and version arguments + +Signed-Off-by: Nitin A Kamble <nitin.a.kamble@intel.com> +2012/05/01 + +Index: guile-2.0.5/build-aux/git-version-gen +=================================================================== +--- guile-2.0.5.orig/build-aux/git-version-gen ++++ guile-2.0.5/build-aux/git-version-gen +@@ -187,7 +187,7 @@ else + v=UNKNOWN + fi + +-v=`echo "$v" |sed "s/^$prefix//"` ++v=`echo "$v" |sed "s#^$prefix##"` + + # Test whether to append the "-dirty" suffix only if the version + # string we're using came from git. I.e., skip the test if it's "UNKNOWN" diff --git a/yocto-poky/meta/recipes-devtools/guile/files/libguile-Makefile.am-hook.patch b/yocto-poky/meta/recipes-devtools/guile/files/libguile-Makefile.am-hook.patch new file mode 100644 index 000000000..290b9d447 --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/libguile-Makefile.am-hook.patch @@ -0,0 +1,42 @@ +From 9c4e120a7a87db34d22a50883a5a525170b480d7 Mon Sep 17 00:00:00 2001 +From: Robert Yang <liezhi.yang@windriver.com> +Date: Tue, 6 Jan 2015 23:10:51 -0800 +Subject: [PATCH] libguile/Makefile.am: install-data-hook -> install-exec-hook + +It may install such a file: +/usr/lib64/libguile-2.0*-gdb.scm + +This is because when there is no file in the directory: +for f in libguile-2.0*; do + [snip] +done + +The f would be libguile-2.0* itself, use install-exec-hook will fix the +problem since it depends on install-libLTLIBRARIES. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <liezhi.yang@windriver.com> +--- + libguile/Makefile.am | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/libguile/Makefile.am b/libguile/Makefile.am +index 5decd99..52645b7 100644 +--- a/libguile/Makefile.am ++++ b/libguile/Makefile.am +@@ -446,10 +446,8 @@ EXTRA_libguile_@GUILE_EFFECTIVE_VERSION@_la_SOURCES = _scm.h \ + ## delete guile-snarf.awk from the installation bindir, in case it's + ## lingering there due to an earlier guile version not having been + ## wiped out. +-install-exec-hook: ++install-exec-hook: libguile-2.0-gdb.scm + rm -f $(DESTDIR)$(bindir)/guile-snarf.awk +- +-install-data-hook: libguile-2.0-gdb.scm + @$(MKDIR_P) $(DESTDIR)$(libdir) + ## We want to install libguile-2.0-gdb.scm as SOMETHING-gdb.scm. + ## SOMETHING is the full name of the final library. We want to ignore +-- +1.7.9.5 + diff --git a/yocto-poky/meta/recipes-devtools/guile/files/libguile-VM-ASM_MUL-for-ARM-Add-earlyclobber.patch b/yocto-poky/meta/recipes-devtools/guile/files/libguile-VM-ASM_MUL-for-ARM-Add-earlyclobber.patch new file mode 100644 index 000000000..e50059a7e --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/libguile-VM-ASM_MUL-for-ARM-Add-earlyclobber.patch @@ -0,0 +1,43 @@ +From a85c78ea1393985fdb6e6678dea19135c553d341 Mon Sep 17 00:00:00 2001 +From: Mark H Weaver <mhw@netris.org> +Date: Fri, 19 Sep 2014 21:18:09 -0400 +Subject: [PATCH] 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. + +Author: Mark H Weaver <mhw@netris.org> + +Upstream-Status: Backport + +Signed-off-by: Jackie Huang <jackie.huang@windriver.com> +--- + 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)) \ +-- +2.3.5 + diff --git a/yocto-poky/meta/recipes-devtools/guile/files/opensuse/guile-64bit.patch b/yocto-poky/meta/recipes-devtools/guile/files/opensuse/guile-64bit.patch new file mode 100644 index 000000000..d3e312f77 --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/opensuse/guile-64bit.patch @@ -0,0 +1,39 @@ +Upstream-Status: Inappropriate [opensuse patch] + +Signed-Off-by: Nitin A Kamble <nitin.a.kamble@intel.com> + +Index: guile-2.0.3/libguile/hash.c +=================================================================== +--- guile-2.0.3.orig/libguile/hash.c 2011-07-06 15:49:59.000000000 -0700 ++++ guile-2.0.3/libguile/hash.c 2012-01-13 21:49:43.332844884 -0800 +@@ -270,7 +270,7 @@ scm_hasher(SCM obj, unsigned long n, siz + unsigned long + scm_ihashq (SCM obj, unsigned long n) + { +- return (SCM_UNPACK (obj) >> 1) % n; ++ return ((unsigned long) SCM_UNPACK (obj) >> 1) % n; + } + + +@@ -306,7 +306,7 @@ scm_ihashv (SCM obj, unsigned long n) + if (SCM_NUMP(obj)) + return (unsigned long) scm_hasher(obj, n, 10); + else +- return SCM_UNPACK (obj) % n; ++ return (unsigned long) SCM_UNPACK (obj) % n; + } + + +Index: guile-2.0.3/libguile/struct.c +=================================================================== +--- guile-2.0.3.orig/libguile/struct.c 2011-07-06 15:50:00.000000000 -0700 ++++ guile-2.0.3/libguile/struct.c 2012-01-13 21:49:43.332844884 -0800 +@@ -942,7 +942,7 @@ scm_struct_ihashq (SCM obj, unsigned lon + { + /* The length of the hash table should be a relative prime it's not + necessary to shift down the address. */ +- return SCM_UNPACK (obj) % n; ++ return (unsigned long) SCM_UNPACK (obj) % n; + } + + SCM_DEFINE (scm_struct_vtable_name, "struct-vtable-name", 1, 0, 0, diff --git a/yocto-poky/meta/recipes-devtools/guile/files/opensuse/guile-turn-off-gc-test.patch b/yocto-poky/meta/recipes-devtools/guile/files/opensuse/guile-turn-off-gc-test.patch new file mode 100644 index 000000000..e20148628 --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/opensuse/guile-turn-off-gc-test.patch @@ -0,0 +1,49 @@ +Upstream-Status: Inappropriate [opensuse patch] + +Signed-Off-by: Nitin A Kamble <nitin.a.kamble@intel.com> + +See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10096 +why this test is turned off. +Index: guile-2.0.3/test-suite/tests/gc.test +=================================================================== +--- guile-2.0.3.orig/test-suite/tests/gc.test 2011-10-15 09:34:40.000000000 -0700 ++++ guile-2.0.3/test-suite/tests/gc.test 2012-01-13 21:52:10.282540355 -0800 +@@ -65,23 +65,23 @@ + foo))) + + +-(with-test-prefix "gc" +- (pass-if "Unused modules are removed" +- (let* ((guard (make-guardian)) +- (total 1000)) +- +- (for-each (lambda (x) (guard (make-module))) (iota total)) ++;;(with-test-prefix "gc" ++;; (pass-if "Unused modules are removed" ++;; (let* ((guard (make-guardian)) ++;; (total 1000)) ++;; ++;; (for-each (lambda (x) (guard (make-module))) (iota total)) + + ;; Avoid false references to the modules on the stack. +- (stack-cleanup 20) ++;; (stack-cleanup 20) + +- (gc) +- (gc) ;; twice: have to kill the weak vectors. +- (gc) ;; thrice: because the test doesn't succeed with only ++;; (gc) ++;; (gc) ;; twice: have to kill the weak vectors. ++;; (gc) ;; thrice: because the test doesn't succeed with only + ;; one gc round. not sure why. + +- (= (let lp ((i 0)) +- (if (guard) +- (lp (1+ i)) +- i)) +- total)))) ++;; (= (let lp ((i 0)) ++;; (if (guard) ++;; (lp (1+ i)) ++;; i)) ++;; total)))) diff --git a/yocto-poky/meta/recipes-devtools/guile/files/workaround-ice-ssa-corruption.patch b/yocto-poky/meta/recipes-devtools/guile/files/workaround-ice-ssa-corruption.patch new file mode 100644 index 000000000..6c348384a --- /dev/null +++ b/yocto-poky/meta/recipes-devtools/guile/files/workaround-ice-ssa-corruption.patch @@ -0,0 +1,60 @@ +libguile/vm-i-system.c: workaround ice ssa corruption while compiling with option -g -O + +While compiling with option -g -O, there was a ssa corruption: +.. +Unable to coalesce ssa_names 48 and 3476 which are marked as MUST COALESCE. +sp_48(ab) and sp_3476(ab) +guile-2.0.11/libguile/vm-engine.c: In function 'vm_debug_engine': +guile-2.0.11/libguile/vm.c:673:19: internal compiler error: SSA corruption + #define VM_NAME vm_debug_engine + ^ +guile-2.0.11/libguile/vm-engine.c:39:1: note: in expansion of macro 'VM_NAME' + VM_NAME (SCM vm, SCM program, SCM *argv, int nargs) + ^ +Please submit a full bug report, +with preprocessed source if appropriate. +See <http://gcc.gnu.org/bugs.html> for instructions. +... + +Tweak libguile/vm-i-system.c to add boundary value check to workaround it. + +Upstream-Status: Pending + +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> +--- + libguile/vm-i-system.c | 20 ++++++++++++++++---- + 1 file changed, 16 insertions(+), 4 deletions(-) + +diff --git a/libguile/vm-i-system.c b/libguile/vm-i-system.c +--- a/libguile/vm-i-system.c ++++ b/libguile/vm-i-system.c +@@ -625,10 +625,22 @@ VM_DEFINE_INSTRUCTION (47, bind_optionals_shuffle, "bind-optionals/shuffle", 6, + /* now shuffle up, from walk to ntotal */ + { + scm_t_ptrdiff nshuf = sp - walk + 1, i; +- sp = (fp - 1) + ntotal + nshuf; +- CHECK_OVERFLOW (); +- for (i = 0; i < nshuf; i++) +- sp[-i] = walk[nshuf-i-1]; ++ /* check the value of nshuf to workaround ice ssa corruption */ ++ /* while compiling with -O -g */ ++ if (nshuf > 0) ++ { ++ sp = (fp - 1) + ntotal + nshuf; ++ CHECK_OVERFLOW (); ++ for (i = 0; i < nshuf; i++) ++ sp[-i] = walk[nshuf-i-1]; ++ } ++ else ++ { ++ sp = (fp - 1) + ntotal + nshuf; ++ CHECK_OVERFLOW (); ++ for (i = 0; i < nshuf; i++) ++ sp[-i] = walk[nshuf-i-1]; ++ } + } + /* and fill optionals & keyword args with SCM_UNDEFINED */ + while (walk <= (fp - 1) + ntotal) +-- +1.9.1 + |