From 34f4ab18bdcac475ab703d00c3ccb989592633e3 Mon Sep 17 00:00:00 2001 From: Nitin A Kamble Date: Fri, 13 Jan 2012 18:19:36 -0800 Subject: guile: new recipe for autogen guile recipe is needed by autogen. Imported & updated the guile-cross-config generation & guile-2.0.pc manipulation code from the meta-oe guile recipe. (From OE-Core rev: 7726884826332387180cd24ebe565cd13a193e13) Signed-off-by: Nitin A Kamble Signed-off-by: Richard Purdie --- .../guile/files/opensuse/guile-64bit.patch | 38 +++++++++++++++++ .../files/opensuse/guile-turn-off-gc-test.patch | 48 ++++++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 meta/recipes-devtools/guile/files/opensuse/guile-64bit.patch create mode 100644 meta/recipes-devtools/guile/files/opensuse/guile-turn-off-gc-test.patch (limited to 'meta/recipes-devtools/guile/files/opensuse') diff --git a/meta/recipes-devtools/guile/files/opensuse/guile-64bit.patch b/meta/recipes-devtools/guile/files/opensuse/guile-64bit.patch new file mode 100644 index 0000000..be3191a --- /dev/null +++ b/meta/recipes-devtools/guile/files/opensuse/guile-64bit.patch @@ -0,0 +1,38 @@ + +Upstream-Status: Inappropriate [opensuse patch] + +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/meta/recipes-devtools/guile/files/opensuse/guile-turn-off-gc-test.patch b/meta/recipes-devtools/guile/files/opensuse/guile-turn-off-gc-test.patch new file mode 100644 index 0000000..ed56694 --- /dev/null +++ b/meta/recipes-devtools/guile/files/opensuse/guile-turn-off-gc-test.patch @@ -0,0 +1,48 @@ + +Upstream-Status: Inappropriate [opensuse patch] + +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)))) -- cgit v1.1