aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2014-01-21 18:22:21 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-01-21 10:32:31 +0000
commit05d226bee199e9d45f0bb6143d3a78f3f2e93186 (patch)
treec333fea3e29c0d0168ca26573871b0ee091a29bf
parent8141e3f61f12c8901b990496bcf6b76a9db95a57 (diff)
downloadopenembedded-core-contrib-05d226bee199e9d45f0bb6143d3a78f3f2e93186.tar.gz
openembedded-core-contrib-05d226bee199e9d45f0bb6143d3a78f3f2e93186.tar.bz2
openembedded-core-contrib-05d226bee199e9d45f0bb6143d3a78f3f2e93186.zip
guile: don't use the identifier 'noreturn'
Fix the build error of autogen-native which depends on guile-native: ysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:40:24: error: expected ')' before '__attribute__' sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:40:24: error: expected ',' or ';' before ')' token sysroots/x86_64-linux/usr/include/guile/2.0/libguile/error.h:42:27: error: expected ')' before '__attribute__' [YOCTO #5743] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/guile/files/guile_2.0.9_fix_noreturn.patch65
-rw-r--r--meta/recipes-devtools/guile/guile_2.0.9.bb1
2 files changed, 66 insertions, 0 deletions
diff --git a/meta/recipes-devtools/guile/files/guile_2.0.9_fix_noreturn.patch b/meta/recipes-devtools/guile/files/guile_2.0.9_fix_noreturn.patch
new file mode 100644
index 0000000000..3f65dce72c
--- /dev/null
+++ b/meta/recipes-devtools/guile/files/guile_2.0.9_fix_noreturn.patch
@@ -0,0 +1,65 @@
+From 36c40440078c005cd5e239cca487d29f6f60007d Mon Sep 17 00:00:00 2001
+From: Mark H Weaver <mhw@netris.org>
+Date: Mon, 4 Nov 2013 19:41:52 -0500
+Subject: [PATCH] Don't use the identifier 'noreturn'.
+
+Fixes <http://bugs.gnu.org/15798>.
+Reported by Matt Sicker <boards@gmail.com>.
+
+* libguile/__scm.h (SCM_NORETURN): Use ((__noreturn__)) instead of
+ ((noreturn)).
+
+* libguile/throw.h (scm_ithrow): Rename formal parameter from 'noreturn'
+ to 'no_return'.
+
+* libguile/throw.c (scm_ithrow): Rename formal parameter from 'noreturn'
+ to 'no_return'.
+---
+ libguile/__scm.h | 2 +-
+ libguile/throw.c | 2 +-
+ libguile/throw.h | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+Upstream-Status: Backport
+
+diff --git a/libguile/__scm.h b/libguile/__scm.h
+index ed35d53..a0b02b6 100644
+--- a/libguile/__scm.h
++++ b/libguile/__scm.h
+@@ -77,7 +77,7 @@
+ * 1) int foo (char arg) SCM_NORETURN;
+ */
+ #ifdef __GNUC__
+-#define SCM_NORETURN __attribute__ ((noreturn))
++#define SCM_NORETURN __attribute__ ((__noreturn__))
+ #else
+ #define SCM_NORETURN
+ #endif
+diff --git a/libguile/throw.c b/libguile/throw.c
+index 9c29351..7fc9edf 100644
+--- a/libguile/throw.c
++++ b/libguile/throw.c
+@@ -436,7 +436,7 @@ scm_handle_by_throw (void *handler_data SCM_UNUSED, SCM tag, SCM args)
+ }
+
+ SCM
+-scm_ithrow (SCM key, SCM args, int noreturn SCM_UNUSED)
++scm_ithrow (SCM key, SCM args, int no_return SCM_UNUSED)
+ {
+ return scm_throw (key, args);
+ }
+diff --git a/libguile/throw.h b/libguile/throw.h
+index 6cf6790..62592d2 100644
+--- a/libguile/throw.h
++++ b/libguile/throw.h
+@@ -79,7 +79,7 @@ SCM_API int scm_exit_status (SCM args);
+ SCM_API SCM scm_catch_with_pre_unwind_handler (SCM tag, SCM thunk, SCM handler, SCM lazy_handler);
+ SCM_API SCM scm_catch (SCM tag, SCM thunk, SCM handler);
+ SCM_API SCM scm_with_throw_handler (SCM tag, SCM thunk, SCM handler);
+-SCM_API SCM scm_ithrow (SCM key, SCM args, int noreturn);
++SCM_API SCM scm_ithrow (SCM key, SCM args, int no_return);
+
+ SCM_API SCM scm_throw (SCM key, SCM args);
+ SCM_INTERNAL void scm_init_throw (void);
+--
+1.7.2.5
diff --git a/meta/recipes-devtools/guile/guile_2.0.9.bb b/meta/recipes-devtools/guile/guile_2.0.9.bb
index 9845682c0e..e1504bbdfa 100644
--- a/meta/recipes-devtools/guile/guile_2.0.9.bb
+++ b/meta/recipes-devtools/guile/guile_2.0.9.bb
@@ -19,6 +19,7 @@ SRC_URI = "${GNU_MIRROR}/guile/guile-${PV}.tar.xz \
file://opensuse/guile-64bit.patch \
file://guile_2.0.6_fix_sed_error.patch \
file://arm_endianness.patch \
+ file://guile_2.0.9_fix_noreturn.patch \
"
# file://debian/0001-Change-guile-to-guile-X.Y-for-info-pages.patch