summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2017-06-05 21:53:15 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-06-06 19:49:57 +0100
commit49c255494c1d0704a1c8c428281c81541b05dc3e (patch)
treee25ca64a885b4b2d965828cb6e4a9b25dcc37f5f
parentf8e63dff3eb807b07bd71f0e31f6e0cf18ecdb0c (diff)
downloadopenembedded-core-contrib-49c255494c1d0704a1c8c428281c81541b05dc3e.tar.gz
openembedded-core-contrib-49c255494c1d0704a1c8c428281c81541b05dc3e.tar.bz2
openembedded-core-contrib-49c255494c1d0704a1c8c428281c81541b05dc3e.zip
libunwind: fix build failure on MIPS
Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r--meta/recipes-support/libunwind/libunwind/fix-mips.patch134
-rw-r--r--meta/recipes-support/libunwind/libunwind_1.2.bb1
2 files changed, 135 insertions, 0 deletions
diff --git a/meta/recipes-support/libunwind/libunwind/fix-mips.patch b/meta/recipes-support/libunwind/libunwind/fix-mips.patch
new file mode 100644
index 0000000000..0022237934
--- /dev/null
+++ b/meta/recipes-support/libunwind/libunwind/fix-mips.patch
@@ -0,0 +1,134 @@
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From 5f354cb7b9c84dae006f0ebd8ad7a78d7e2aad0c Mon Sep 17 00:00:00 2001
+From: Dave Watson <davejwatson@fb.com>
+Date: Wed, 25 Jan 2017 16:18:02 -0800
+Subject: [PATCH] mips/tilegx: Add missing unwind_i.h header file
+
+reported-by: John Knight <John.Knight@belkin.com>
+---
+ src/Makefile.am | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 5d874755..7de4c425 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -280,7 +280,7 @@ libunwind_hppa_la_SOURCES_hppa = $(libunwind_la_SOURCES_hppa_common) \
+ hppa/Gresume.c hppa/Gstep.c
+
+ # The list of files that go info libunwind and libunwind-mips:
+-noinst_HEADERS += mips/init.h mips/offsets.h
++noinst_HEADERS += mips/init.h mips/offsets.h mips/unwind_i.h
+ libunwind_la_SOURCES_mips_common = $(libunwind_la_SOURCES_common) \
+ mips/is_fpreg.c mips/regname.c
+
+@@ -299,7 +299,7 @@ libunwind_mips_la_SOURCES_mips = $(libunwind_la_SOURCES_mips_common) \
+ mips/Gis_signal_frame.c mips/Gregs.c mips/Gresume.c mips/Gstep.c
+
+ # The list of files that go info libunwind and libunwind-tilegx:
+-noinst_HEADERS += tilegx/init.h tilegx/offsets.h
++noinst_HEADERS += tilegx/init.h tilegx/offsets.h tilegx/unwind_i.h
+ libunwind_la_SOURCES_tilegx_common = $(libunwind_la_SOURCES_common) \
+ tilegx/is_fpreg.c tilegx/regname.c
+
+diff --git a/src/mips/unwind_i.h b/src/mips/unwind_i.h
+new file mode 100644
+index 0000000..3382dcf
+--- /dev/null
++++ b/src/mips/unwind_i.h
+@@ -0,0 +1,43 @@
++/* libunwind - a platform-independent unwind library
++ Copyright (C) 2008 CodeSourcery
++
++This file is part of libunwind.
++
++Permission is hereby granted, free of charge, to any person obtaining
++a copy of this software and associated documentation files (the
++"Software"), to deal in the Software without restriction, including
++without limitation the rights to use, copy, modify, merge, publish,
++distribute, sublicense, and/or sell copies of the Software, and to
++permit persons to whom the Software is furnished to do so, subject to
++the following conditions:
++
++The above copyright notice and this permission notice shall be
++included in all copies or substantial portions of the Software.
++
++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
++LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
++OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
++WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
++
++#ifndef unwind_i_h
++#define unwind_i_h
++
++#include <stdint.h>
++
++#include <libunwind-mips.h>
++
++#include "libunwind_i.h"
++
++#define mips_lock UNW_OBJ(lock)
++#define mips_local_resume UNW_OBJ(local_resume)
++#define mips_local_addr_space_init UNW_OBJ(local_addr_space_init)
++
++extern int mips_local_resume (unw_addr_space_t as, unw_cursor_t *cursor,
++ void *arg);
++
++extern void mips_local_addr_space_init (void);
++
++#endif /* unwind_i_h */
+diff --git a/src/tilegx/unwind_i.h b/src/tilegx/unwind_i.h
+new file mode 100644
+index 0000000..aac7be3
+--- /dev/null
++++ b/src/tilegx/unwind_i.h
+@@ -0,0 +1,44 @@
++/* libunwind - a platform-independent unwind library
++ Copyright (C) 2008 CodeSourcery
++
++This file is part of libunwind.
++
++Permission is hereby granted, free of charge, to any person obtaining
++a copy of this software and associated documentation files (the
++"Software"), to deal in the Software without restriction, including
++without limitation the rights to use, copy, modify, merge, publish,
++distribute, sublicense, and/or sell copies of the Software, and to
++permit persons to whom the Software is furnished to do so, subject to
++the following conditions:
++
++The above copyright notice and this permission notice shall be
++included in all copies or substantial portions of the Software.
++
++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
++LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
++OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
++WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
++
++#ifndef unwind_i_h
++#define unwind_i_h
++
++#include <memory.h>
++#include <stdint.h>
++
++#include <libunwind-tilegx.h>
++
++#include "libunwind_i.h"
++
++#define tilegx_local_resume UNW_OBJ(local_resume)
++#define tilegx_local_addr_space_init UNW_OBJ(local_addr_space_init)
++
++extern int tilegx_local_resume (unw_addr_space_t as,
++ unw_cursor_t *cursor,
++ void *arg);
++
++extern void tilegx_local_addr_space_init (void);
++
++#endif /* unwind_i_h */
diff --git a/meta/recipes-support/libunwind/libunwind_1.2.bb b/meta/recipes-support/libunwind/libunwind_1.2.bb
index a398d332e2..e598e40c6f 100644
--- a/meta/recipes-support/libunwind/libunwind_1.2.bb
+++ b/meta/recipes-support/libunwind/libunwind_1.2.bb
@@ -11,6 +11,7 @@ SRC_URI = "http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PV
file://0001-add-knobs-to-disable-enable-tests.patch \
file://0001-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch \
file://libunwind-1.1-x32.patch \
+ file://fix-mips.patch \
"
SRC_URI_append_libc-musl = " file://musl-header-conflict.patch"