diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2009-05-22 09:42:20 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2009-05-22 09:42:20 +0100 |
commit | e6a3149428ef2d42d9a9df78a19c2e52496f3deb (patch) | |
tree | 368294cd96f741990717234a6819cc60c1b413f6 /meta/packages/gcc/gcc-4.3.3/debian/libjava-sjlj.dpatch | |
parent | f887fcd665505453412a9f2e2508404e6ec4eea8 (diff) | |
download | openembedded-core-e6a3149428ef2d42d9a9df78a19c2e52496f3deb.tar.gz openembedded-core-e6a3149428ef2d42d9a9df78a19c2e52496f3deb.tar.bz2 openembedded-core-e6a3149428ef2d42d9a9df78a19c2e52496f3deb.tar.xz openembedded-core-e6a3149428ef2d42d9a9df78a19c2e52496f3deb.zip |
gcc: Add 4.3.3 and switch to for Moblin
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/packages/gcc/gcc-4.3.3/debian/libjava-sjlj.dpatch')
-rw-r--r-- | meta/packages/gcc/gcc-4.3.3/debian/libjava-sjlj.dpatch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/meta/packages/gcc/gcc-4.3.3/debian/libjava-sjlj.dpatch b/meta/packages/gcc/gcc-4.3.3/debian/libjava-sjlj.dpatch new file mode 100644 index 000000000..95b4673b3 --- /dev/null +++ b/meta/packages/gcc/gcc-4.3.3/debian/libjava-sjlj.dpatch @@ -0,0 +1,65 @@ +#! /bin/sh -e + +# DP: Don't try to use _Unwind_Backtrace on SJLJ targets. +# DP: See bug #387875, #388505, GCC PR 29206. + +dir= +if [ $# -eq 3 -a "$2" = '-d' ]; then + pdir="-d $3" + dir="$3/" +elif [ $# -ne 1 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi +case "$1" in + -patch) + patch $pdir -f --no-backup-if-mismatch -p1 < $0 + #cd ${dir}gcc && autoconf + ;; + -unpatch) + patch $pdir -f --no-backup-if-mismatch -R -p1 < $0 + #rm ${dir}gcc/configure + ;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +esac +exit 0 + +--- + libjava/sysdep/generic/backtrace.h | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +Index: src/libjava/sysdep/generic/backtrace.h +=================================================================== +--- src.orig/libjava/sysdep/generic/backtrace.h 2006-11-06 14:00:32.000000000 -0500 ++++ src/libjava/sysdep/generic/backtrace.h 2006-11-06 14:04:38.000000000 -0500 +@@ -13,6 +13,20 @@ details. */ + + #include <java-stack.h> + ++#ifdef SJLJ_EXCEPTIONS ++ ++#undef _Unwind_GetIPInfo ++#define _Unwind_GetIPInfo(ctx,ip_before_insn) \ ++ (abort (), (void) (ctx), *ip_before_insn = 1, 0) ++ ++#undef _Unwind_GetRegionStart ++#define _Unwind_GetRegionStart(ctx) \ ++ (abort (), (void) (ctx), 0) ++ ++#undef _Unwind_Backtrace ++#define _Unwind_Backtrace(trace_fn,state_ptr) \ ++ (fallback_backtrace (trace_fn, state_ptr)) ++ + /* Unwind through the call stack calling TRACE_FN with STATE for every stack + frame. Returns the reason why the unwinding was stopped. */ + _Unwind_Reason_Code +@@ -20,4 +34,7 @@ fallback_backtrace (_Unwind_Trace_Fn, _J + { + return _URC_NO_REASON; + } ++ ++#endif /* SJLJ_EXCEPTIONS */ ++ + #endif |