When upgrading automake, libffi failed to build due to
a makefile error. The error is triggered when using options
we don't really need. Circumvent the issue by changing options
and also improve a few others.

* Rearrange one option.

* Disable internal builddir in the srcdir and disable using gcc
as discovery for multidir arch directories.

* Force static trampolines. Dynamic ones are a security issue.
Now this might break some programs and probably make debugging
using gobject introspection difficult, but otoh, it stops usage
of self modifying code.

* Keep patches. I guess they can both go away, but I don't
see much harm in continuing to use them.

Signed-off-by: Christian Melki <[email protected]>
---
 rules/libffi.make | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/rules/libffi.make b/rules/libffi.make
index 4ccc437d5..f9a6bd397 100644
--- a/rules/libffi.make
+++ b/rules/libffi.make
@@ -33,14 +33,17 @@ LIBFFI_LICENSE_FILES        := \
 LIBFFI_CONF_TOOL := autoconf
 LIBFFI_CONF_OPT := \
        $(CROSS_AUTOCONF_USR) \
+       --disable-builddir \
        --disable-static \
        --enable-portable-binary \
        --disable-pax_emutramp \
-       --disable-debug \
        --disable-docs \
+       --disable-debug \
        --enable-structs \
        --enable-raw-api \
+       --enable-exec-static-tramp \
        --disable-purify-safety \
+       --disable-multi-os-directory \
        --without-gcc-arch
 
 # ----------------------------------------------------------------------------
-- 
2.34.1


Reply via email to