summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2016-02-04 16:22:50 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-02-04 23:35:26 +0000
commit9ffc1757a1578832463d29f558914c3b489a3782 (patch)
tree49be1c6c451977508a8334f361d55a31ec54d3c6
parent2761396f47bc3bb49dac0005c1ac5d242915cc9b (diff)
downloadopenembedded-core-9ffc1757a1578832463d29f558914c3b489a3782.tar.gz
libffi: ensure sysroot paths are not in libffi.pc
Remove a previous patch and solve the problem in a different way, as the same root cause was causing the absolute sysroot path to appear in libffi.pc. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-gnome/libffi/libffi/fix-libffi.la-location.patch18
-rw-r--r--meta/recipes-gnome/libffi/libffi/not-win32.patch22
-rw-r--r--meta/recipes-gnome/libffi/libffi_3.2.1.bb2
3 files changed, 23 insertions, 19 deletions
diff --git a/meta/recipes-gnome/libffi/libffi/fix-libffi.la-location.patch b/meta/recipes-gnome/libffi/libffi/fix-libffi.la-location.patch
deleted file mode 100644
index 775bffc662..0000000000
--- a/meta/recipes-gnome/libffi/libffi/fix-libffi.la-location.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-
-Upstream-Status: Inappropriate
-
-Signed-off-by: Saul Wold <sgw@linux.intel.com>
-
-Index: libffi-3.0.13/Makefile.am
-===================================================================
---- libffi-3.0.13.orig/Makefile.am
-+++ libffi-3.0.13/Makefile.am
-@@ -98,7 +98,7 @@ FLAGS_TO_PASS = $(AM_MAKEFLAGS)
-
- MAKEOVERRIDES=
-
--toolexeclib_LTLIBRARIES = libffi.la
-+lib_LTLIBRARIES = libffi.la
- noinst_LTLIBRARIES = libffi_convenience.la
-
- libffi_la_SOURCES = src/prep_cif.c src/types.c \
diff --git a/meta/recipes-gnome/libffi/libffi/not-win32.patch b/meta/recipes-gnome/libffi/libffi/not-win32.patch
new file mode 100644
index 0000000000..1e90125edd
--- /dev/null
+++ b/meta/recipes-gnome/libffi/libffi/not-win32.patch
@@ -0,0 +1,22 @@
+libffi's configure assumes that cross-compiled builds are complicated and
+introduces convoluted path manipulation involving gcc search paths to the
+install paths, resulting in paths like -L/usr/lib/../lib/ appearing in
+libffi.pc. When pkg-config is then used to obtain the linker flags for libffi
+it can't tell that this path is on the default search path and returns
+$SYSROOT/usr/lib/../lib which then gets written all over the target sysroot.
+This then means the sstate can't be shared and triggers QA errors.
+
+As this block is generally pointless, disable it.
+
+Upstream-Status: Inappropriate
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+--- a/configure.ac~ 2014-11-12 11:56:51.000000000 +0000
++++ b/configure.ac 2016-02-04 14:02:53.765710532 +0000
+@@ -593,5 +593,5 @@
+ # These variables are only ever used when we cross-build to X86_WIN32.
+ # And we only support this with GCC, so...
+-if test "x$GCC" = "xyes"; then
++if false; then
+ if test -n "$with_cross_host" &&
+ test x"$with_cross_host" != x"no"; then \ No newline at end of file
diff --git a/meta/recipes-gnome/libffi/libffi_3.2.1.bb b/meta/recipes-gnome/libffi/libffi_3.2.1.bb
index fd916caf7e..72e25fb9d5 100644
--- a/meta/recipes-gnome/libffi/libffi_3.2.1.bb
+++ b/meta/recipes-gnome/libffi/libffi_3.2.1.bb
@@ -10,7 +10,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3610bb17683a0089ed64055416b2ae1b"
SRC_URI = "ftp://sourceware.org/pub/libffi/${BP}.tar.gz \
- file://fix-libffi.la-location.patch \
+ file://not-win32.patch \
file://0001-mips-Use-compiler-internal-define-for-linux.patch \
"