summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorJonathan Liu <net147@gmail.com>2015-03-11 13:33:05 +1100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-04-17 22:39:31 +0100
commitbf6f9f44ad99b06969cfebca83be4765110512df (patch)
tree36dfca2714caa356cc659e5374a0453673fc47a7 /meta
parent54e3c922798cac8809465e6628fdd083ae96b038 (diff)
downloadpoky-bf6f9f44ad99b06969cfebca83be4765110512df.tar.gz
libunwind: backport patch to link against libgcc_s intead of libgcc
(From OE-Core rev: 986b46517ed9cd0821821371faab68e92c2d6dab) Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-support/libunwind/libunwind-1.1/Link-libunwind-to-libgcc_s-rather-than-libgcc.patch42
-rw-r--r--meta/recipes-support/libunwind/libunwind_1.1.bb1
2 files changed, 43 insertions, 0 deletions
diff --git a/meta/recipes-support/libunwind/libunwind-1.1/Link-libunwind-to-libgcc_s-rather-than-libgcc.patch b/meta/recipes-support/libunwind/libunwind-1.1/Link-libunwind-to-libgcc_s-rather-than-libgcc.patch
new file mode 100644
index 0000000000..0e55c91b80
--- /dev/null
+++ b/meta/recipes-support/libunwind/libunwind-1.1/Link-libunwind-to-libgcc_s-rather-than-libgcc.patch
@@ -0,0 +1,42 @@
1From 508ca17a7be01d1cc960d9a07d0af4513948fb8d Mon Sep 17 00:00:00 2001
2From: Thierry Reding <treding@nvidia.com>
3Date: Fri, 27 Jun 2014 08:40:33 +0200
4Subject: [PATCH] Link libunwind to libgcc_s rather than libgcc
5
6For some architectures, -lgcc and -lgcc_s are not equivalent. On ARM for
7example, libgcc_s.so.1 contains some symbols needed by libunwind which
8are not present in libgcc.
9
10This causes the following link error when building the X.Org X server
11with libunwind support:
12
13 CCLD Xorg
14 /usr/lib/libunwind.so: undefined reference to `__aeabi_unwind_cpp_pr0'
15 /usr/lib/libunwind.so: undefined reference to `__aeabi_unwind_cpp_pr1'
16
17Linking against libgcc_s explicitly solves this problem.
18
19Upstream-Status: Backport
20
21Signed-off-by: Thierry Reding <treding@nvidia.com>
22Signed-off-by: Jonathan Liu <net147@gmail.com>
23---
24 configure.ac | 2 +-
25 1 file changed, 1 insertion(+), 1 deletion(-)
26
27diff --git a/configure.ac b/configure.ac
28index cffe19b..3beb5f2 100644
29--- a/configure.ac
30+++ b/configure.ac
31@@ -258,7 +258,7 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[#ifndef __INTEL_COMPILER
32
33 if test x$GCC = xyes -a x$intel_compiler != xyes; then
34 CFLAGS="${CFLAGS} -fexceptions -Wall -Wsign-compare"
35- LIBCRTS="-lgcc"
36+ LIBCRTS="-lgcc_s"
37 fi
38 AC_MSG_RESULT([$intel_compiler])
39
40--
412.3.2
42
diff --git a/meta/recipes-support/libunwind/libunwind_1.1.bb b/meta/recipes-support/libunwind/libunwind_1.1.bb
index 20db132688..05dba3b4cd 100644
--- a/meta/recipes-support/libunwind/libunwind_1.1.bb
+++ b/meta/recipes-support/libunwind/libunwind_1.1.bb
@@ -2,6 +2,7 @@ require libunwind.inc
2 2
3SRC_URI += "\ 3SRC_URI += "\
4 file://Fix-test-case-link-failure-on-PowerPC-systems-with-Altivec.patch \ 4 file://Fix-test-case-link-failure-on-PowerPC-systems-with-Altivec.patch \
5 file://Link-libunwind-to-libgcc_s-rather-than-libgcc.patch \
5" 6"
6 7
7SRC_URI[md5sum] = "fb4ea2f6fbbe45bf032cd36e586883ce" 8SRC_URI[md5sum] = "fb4ea2f6fbbe45bf032cd36e586883ce"