From eb8dc40360f0cfef56fb6947cc817a547d6d9bc6 Mon Sep 17 00:00:00 2001 From: Dave Cobbley Date: Tue, 14 Aug 2018 10:05:37 -0700 Subject: [Subtree] Removing import-layers directory As part of the move to subtrees, need to bring all the import layers content to the top level. Change-Id: I4a163d10898cbc6e11c27f776f60e1a470049d8f Signed-off-by: Dave Cobbley Signed-off-by: Brad Bishop --- .../0001-libffi-Support-musl-x32-build.patch | 30 ++++ ...ps-Use-compiler-internal-define-for-linux.patch | 32 ++++ .../0001-mips-fix-MIPS-softfloat-build-issue.patch | 177 +++++++++++++++++++++ .../recipes-support/libffi/libffi/not-win32.patch | 26 +++ poky/meta/recipes-support/libffi/libffi_3.2.1.bb | 34 ++++ 5 files changed, 299 insertions(+) create mode 100644 poky/meta/recipes-support/libffi/libffi/0001-libffi-Support-musl-x32-build.patch create mode 100644 poky/meta/recipes-support/libffi/libffi/0001-mips-Use-compiler-internal-define-for-linux.patch create mode 100644 poky/meta/recipes-support/libffi/libffi/0001-mips-fix-MIPS-softfloat-build-issue.patch create mode 100644 poky/meta/recipes-support/libffi/libffi/not-win32.patch create mode 100644 poky/meta/recipes-support/libffi/libffi_3.2.1.bb (limited to 'poky/meta/recipes-support/libffi') diff --git a/poky/meta/recipes-support/libffi/libffi/0001-libffi-Support-musl-x32-build.patch b/poky/meta/recipes-support/libffi/libffi/0001-libffi-Support-musl-x32-build.patch new file mode 100644 index 000000000..6b167c842 --- /dev/null +++ b/poky/meta/recipes-support/libffi/libffi/0001-libffi-Support-musl-x32-build.patch @@ -0,0 +1,30 @@ +From 69c3906c85c791716bf650aa36d9361d22acf3fb Mon Sep 17 00:00:00 2001 +From: sweeaun +Date: Thu, 6 Jul 2017 16:32:46 -0700 +Subject: [PATCH] libffi: Support musl x32 build + +Support libffi build with target musl-x32. + +Upstream-Status: Pending + +Signed-off-by: sweeaun +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index a7bf5ee..8ebe99c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -177,7 +177,7 @@ case "$host" in + TARGETDIR=x86 + if test $ac_cv_sizeof_size_t = 4; then + case "$host" in +- *-gnux32) ++ *-gnux32 | *-muslx32) + TARGET=X86_64 + ;; + *) +-- +2.7.4 + diff --git a/poky/meta/recipes-support/libffi/libffi/0001-mips-Use-compiler-internal-define-for-linux.patch b/poky/meta/recipes-support/libffi/libffi/0001-mips-Use-compiler-internal-define-for-linux.patch new file mode 100644 index 000000000..db96e6354 --- /dev/null +++ b/poky/meta/recipes-support/libffi/libffi/0001-mips-Use-compiler-internal-define-for-linux.patch @@ -0,0 +1,32 @@ +From a5efaa96fd934eb245c234a5275fcf62698ef986 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Thu, 2 Apr 2015 21:38:03 -0700 +Subject: [PATCH] mips: Use compiler internal define for linux + +__linux__ is defined by compiler when building for +linux platforms, lets use it + + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + src/mips/ffitarget.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/mips/ffitarget.h b/src/mips/ffitarget.h +index 717d659..6faa358 100644 +--- a/src/mips/ffitarget.h ++++ b/src/mips/ffitarget.h +@@ -32,7 +32,7 @@ + #error "Please do not include ffitarget.h directly into your source. Use ffi.h instead." + #endif + +-#ifdef linux ++#ifdef __linux__ + # include + #elif defined(__rtems__) + /* +-- +2.1.4 + diff --git a/poky/meta/recipes-support/libffi/libffi/0001-mips-fix-MIPS-softfloat-build-issue.patch b/poky/meta/recipes-support/libffi/libffi/0001-mips-fix-MIPS-softfloat-build-issue.patch new file mode 100644 index 000000000..61c9eb31d --- /dev/null +++ b/poky/meta/recipes-support/libffi/libffi/0001-mips-fix-MIPS-softfloat-build-issue.patch @@ -0,0 +1,177 @@ +From 655e82c92d5c3875aee04322f1993d6b0774a7bf Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Mon, 15 Aug 2016 15:00:13 +0800 +Subject: [PATCH] mips: fix MIPS softfloat build issue + +The patch for o32.S is taken from OpenWrt packages repo 3a7a4bf "libffi: +fix MIPS softfloat build issue with current binutils" + +Signed-off-by: Felix Fietkau +Signed-off-by: Yousong Zhou +--- +Upstream-Status: Backport [https://github.com/libffi/libffi/commit/2ded2a4f494165c93293afc14ab0be1243cf8c49] + src/mips/n32.S | 17 +++++++++++++++++ + src/mips/o32.S | 17 +++++++++++++++++ + 2 files changed, 34 insertions(+) + +diff --git a/src/mips/n32.S b/src/mips/n32.S +index c6985d3..8f25994 100644 +--- a/src/mips/n32.S ++++ b/src/mips/n32.S +@@ -107,6 +107,16 @@ loadregs: + + REG_L t6, 3*FFI_SIZEOF_ARG($fp) # load the flags word into t6. + ++#ifdef __mips_soft_float ++ REG_L a0, 0*FFI_SIZEOF_ARG(t9) ++ REG_L a1, 1*FFI_SIZEOF_ARG(t9) ++ REG_L a2, 2*FFI_SIZEOF_ARG(t9) ++ REG_L a3, 3*FFI_SIZEOF_ARG(t9) ++ REG_L a4, 4*FFI_SIZEOF_ARG(t9) ++ REG_L a5, 5*FFI_SIZEOF_ARG(t9) ++ REG_L a6, 6*FFI_SIZEOF_ARG(t9) ++ REG_L a7, 7*FFI_SIZEOF_ARG(t9) ++#else + and t4, t6, ((1< + +Index: libffi-3.2.1/configure.ac +=================================================================== +--- libffi-3.2.1.orig/configure.ac ++++ libffi-3.2.1/configure.ac +@@ -592,7 +592,7 @@ AC_ARG_ENABLE(purify-safety, + + # 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 + toolexecdir="${exec_prefix}"/'$(target_alias)' diff --git a/poky/meta/recipes-support/libffi/libffi_3.2.1.bb b/poky/meta/recipes-support/libffi/libffi_3.2.1.bb new file mode 100644 index 000000000..a0b1fcd16 --- /dev/null +++ b/poky/meta/recipes-support/libffi/libffi_3.2.1.bb @@ -0,0 +1,34 @@ +SUMMARY = "A portable foreign function interface library" +HOMEPAGE = "http://sourceware.org/libffi/" +DESCRIPTION = "The `libffi' library provides a portable, high level programming interface to various calling \ +conventions. This allows a programmer to call any function specified by a call interface description at run \ +time. FFI stands for Foreign Function Interface. A foreign function interface is the popular name for the \ +interface that allows code written in one language to call code written in another language. The `libffi' \ +library really only provides the lowest, machine dependent layer of a fully featured foreign function interface. \ +A layer must exist above `libffi' that handles type conversions for values passed between the two languages." + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3610bb17683a0089ed64055416b2ae1b" + +SRC_URI = "ftp://sourceware.org/pub/libffi/${BP}.tar.gz \ + file://not-win32.patch \ + file://0001-mips-Use-compiler-internal-define-for-linux.patch \ + file://0001-mips-fix-MIPS-softfloat-build-issue.patch \ + file://0001-libffi-Support-musl-x32-build.patch \ + " + +SRC_URI[md5sum] = "83b89587607e3eb65c70d361f13bab43" +SRC_URI[sha256sum] = "d06ebb8e1d9a22d19e38d63fdb83954253f39bedc5d46232a05645685722ca37" + +EXTRA_OECONF += "--disable-builddir" +EXTRA_OEMAKE_class-target = "LIBTOOLFLAGS='--tag=CC'" +inherit autotools texinfo + +FILES_${PN}-dev += "${libdir}/libffi-${PV}" + +# Doesn't compile in MIPS16e mode due to use of hand-written +# assembly +MIPS_INSTRUCTION_SET = "mips" + +BBCLASSEXTEND = "native nativesdk" + -- cgit v1.2.3