kumquat-buildroot/package/libffi/0001-Fix-use-of-compact-eh-frames-on-MIPS.patch
Bernd Kuhls f382de2b0f package/libffi: bump version to 3.4.6
Removed patch 0001 and instead added new configure option
--disable-multi-os-directory which was added upstream:
877ea9bf9a

Removed patch 0003 due to various upstream fixes for mips soft-float
support since its addition in 2016:
https://github.com/libffi/libffi/commits/master/src/mips

Renumbered remaining patch.

Updated license hash due to copyright year bump:
91739a1a91

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
Reviewed-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Tested-by: Adam Duskett <adam.duskett@amarulasolutions.com>
[yann.morin.1998@free.fr: fix check-package]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2024-03-28 20:34:20 +01:00

48 lines
1.6 KiB
Diff

From 31b6b6bc14197cd4183bdbd311fddeb36b5ae100 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
Date: Sat, 19 Sep 2015 22:53:29 +0200
Subject: [PATCH] Fix use of compact eh frames on MIPS
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Newer MIPS toolchains use a different (compact) eh_frame format.
libffi don't like them, so we have to switch to the older format.
This patch add -mno-compact-eh to CFLAGS when compiling for
Mips and compiler support it.
Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
[unfuzz for 3.2.1]
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
[rebased for 3.4.6]
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
configure.ac | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/configure.ac b/configure.ac
index a7bf5ee..36cd0d4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -238,6 +238,16 @@ esac
AM_CONDITIONAL(FFI_EXEC_TRAMPOLINE_TABLE, test x$FFI_EXEC_TRAMPOLINE_TABLE = x1)
AC_SUBST(FFI_EXEC_TRAMPOLINE_TABLE)
+if test x$TARGET = xMIPS; then
+ save_CFLAGS="$CFLAGS"
+ CFLAGS=-mno-compact-eh
+ AC_MSG_CHECKING([whether the C compiler needs -mno-compact-eh])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
+ [AC_MSG_RESULT([yes])]; [save_CFLAGS="$save_CFLAGS -mno-compact-eh"],
+ [AC_MSG_RESULT([no])])
+ CFLAGS="$save_CFLAGS"
+fi
+
if test x$TARGET = xX86_64; then
AC_CACHE_CHECK([toolchain supports unwind section type],
libffi_cv_as_x86_64_unwind_section_type, [
--
2.5.3