diff --git a/830.patch b/830.patch deleted file mode 100644 index 62f1d22..0000000 --- a/830.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 38d1c9d783b2c3b2b271e66a712962ffbbf7b9a5 Mon Sep 17 00:00:00 2001 -From: Bill Roberts -Date: Thu, 7 Mar 2024 13:07:29 -0600 -Subject: [PATCH 1/3] bti: add identifier to ffi_closure_SYSV_V_alt - -This was missing BTI_C identifier. - -Old Code: -ffi_closure_SYSV_V_alt: -0000fffff7f70500: ldr x17, [sp, #8] - -Signed-off-by: Bill Roberts ---- - src/aarch64/sysv.S | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/aarch64/sysv.S b/src/aarch64/sysv.S -index fdd0e8b7..ba49aa13 100644 ---- a/src/aarch64/sysv.S -+++ b/src/aarch64/sysv.S -@@ -527,6 +527,7 @@ L(do_closure): - #if defined(FFI_EXEC_STATIC_TRAMP) - .align 4 - CNAME(ffi_closure_SYSV_V_alt): -+ BTI_C - /* See the comments above trampoline_code_table. */ - ldr x17, [sp, #8] /* Load closure in x17 */ - add sp, sp, #16 /* Restore the stack */ -@@ -541,6 +542,7 @@ CNAME(ffi_closure_SYSV_V_alt): - - .align 4 - CNAME(ffi_closure_SYSV_alt): -+ BTI_C - /* See the comments above trampoline_code_table. */ - ldr x17, [sp, #8] /* Load closure in x17 */ - add sp, sp, #16 /* Restore the stack */ - -From da2376df7618356e9ab792a8a3cc17ba02a3108a Mon Sep 17 00:00:00 2001 -From: Bill Roberts -Date: Thu, 7 Mar 2024 13:07:34 -0600 -Subject: [PATCH 2/3] testsuite: fix whitespace in Makefile.am - -Signed-off-by: Bill Roberts ---- - testsuite/Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/testsuite/Makefile.am b/testsuite/Makefile.am -index d286cf7f..6ba98e12 100644 ---- a/testsuite/Makefile.am -+++ b/testsuite/Makefile.am -@@ -8,7 +8,7 @@ CLEANFILES = *.exe core* *.log *.sum - - EXTRA_DIST = config/default.exp emscripten/build.sh emscripten/conftest.py \ - emscripten/node-tests.sh emscripten/test.html emscripten/test_libffi.py \ -- emscripten/build-tests.sh lib/libffi.exp lib/target-libpath.exp \ -+ emscripten/build-tests.sh lib/libffi.exp lib/target-libpath.exp \ - lib/wrapper.exp libffi.bhaible/Makefile libffi.bhaible/README \ - libffi.bhaible/alignof.h libffi.bhaible/bhaible.exp libffi.bhaible/test-call.c \ - libffi.bhaible/test-callback.c libffi.bhaible/testcases.c libffi.call/align_mixed.c \ - -From 243fc9e2a1ebcf60a90652ac1e0bc82a945760a5 Mon Sep 17 00:00:00 2001 -From: Bill Roberts -Date: Thu, 7 Mar 2024 13:03:13 -0600 -Subject: [PATCH 3/3] aarch64: correct comment describing BTI - -The comment is incorrect, BTI is enabled per mapping via mprotect with -PROT_BTI flag set, not per-process. When the loader loads the library, -if the GNU Notes section is missing this, PROT_BTI will not be enabled -for that mapping, but is independent of other mappings. - -Signed-off-by: Bill Roberts ---- - src/aarch64/sysv.S | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/aarch64/sysv.S b/src/aarch64/sysv.S -index ba49aa13..60cfa505 100644 ---- a/src/aarch64/sysv.S -+++ b/src/aarch64/sysv.S -@@ -68,7 +68,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ - #define BTI_J hint #36 - /* - * The ELF Notes section needs to indicate if BTI is supported, as the first ELF loaded that doesn't -- * declare this support disables it for the whole process. -+ * declare this support disables it for memory region containing the loaded library. - */ - # define GNU_PROPERTY_AARCH64_BTI (1 << 0) /* Has Branch Target Identification */ - .text diff --git a/libffi-3.4.6.tar.gz b/libffi-3.4.6.tar.gz deleted file mode 100644 index 86221d1..0000000 --- a/libffi-3.4.6.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b0dea9df23c863a7a50e825440f3ebffabd65df1497108e5d437747843895a4e -size 1391684 diff --git a/libffi-3.5.2.tar.gz b/libffi-3.5.2.tar.gz new file mode 100644 index 0000000..759c57f --- /dev/null +++ b/libffi-3.5.2.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3a3082a23b37c293a4fcd1053147b371f2ff91fa7ea1b2a52e335676bac82dc +size 1423124 diff --git a/libffi.changes b/libffi.changes index 95d6021..53b6099 100644 --- a/libffi.changes +++ b/libffi.changes @@ -1,3 +1,51 @@ +------------------------------------------------------------------- +Thu Sep 4 07:14:03 UTC 2025 - Fridrich Strba + +- Update to 3.5.2 + * Changes + + fix: enable FFI_MMAP_EXEC_WRIT for DragonFly BSD + + Emscripten: Add wasm64 target + + fix: Ensure trampoline file descriptors are closed on exec. + +------------------------------------------------------------------- +Thu Sep 4 07:12:20 UTC 2025 - Fridrich Strba + +- Update to 3.5.1 + * Changes + + Downgrade Autoconf requirement to version 2.68 + + Fix symbol versioning error. + +------------------------------------------------------------------- +Thu Sep 4 07:10:42 UTC 2025 - Fridrich Strba + +- Update to 3.5.0 + * Changes + + Add FFI_VERSION_STRING and FFI_VERSION_NUMBER macros, as well + as ffi_get_version() and ffi_get_version_number() functions. + + Add ffi_get_default_abi() and ffi_get_closure_size() functions. + + Fix closures on powerpc64-linux when statically linking. + + Mark the PA stack as non-executable. + +------------------------------------------------------------------- +Wed Sep 3 11:40:13 UTC 2025 - Fridrich Strba + +- Update to 3.4.8 + * Changes + + aarch64: add PAC to GNU Notes + + MIPS: Dont import asm/sgidefs.h on linux + + Update the Simple Example from the Docs to fix a compile error + + Fix bugs in the x86-64 and x32 target (#887) + + Add the "ABI_ATTR" attribute to called functions (#891) + + powerpc: Add static trampoline support (#894) + + testsuite: add two tests to Makefile.am + +------------------------------------------------------------------- +Wed Mar 19 17:40:33 UTC 2025 - Richard Biener + +- Update to 3.4.7: +- Drop upstreamed patch: + * 830.patch + ------------------------------------------------------------------- Tue Mar 19 15:22:24 UTC 2024 - Guillaume GARDET diff --git a/libffi.spec b/libffi.spec index ee284ff..a8c7f79 100644 --- a/libffi.spec +++ b/libffi.spec @@ -1,7 +1,7 @@ # # spec file for package libffi # -# Copyright (c) 2024 SUSE LLC +# Copyright (c) 2025 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,9 +16,12 @@ # +%ifarch %ix86 +%define _lto_cflags %{nil} +%endif %define libffi_sover 8 Name: libffi -Version: 3.4.6 +Version: 3.5.2 Release: 0 Summary: Foreign Function Interface Library License: MIT @@ -26,8 +29,6 @@ Group: Development/Languages/C and C++ URL: https://sourceware.org/libffi/ Source: https://github.com/libffi/libffi/releases/download/v%{version}/libffi-%{version}.tar.gz Source99: baselibs.conf -# Fix BTI for aarch64 with PR 830 -Patch1: https://github.com/libffi/libffi/pull/830.patch # for make check BuildRequires: dejagnu BuildRequires: expect