<pre style='margin:0'>
Ken (kencu) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/cca235463eab122aa94b3091f77d41e2ad7db582">https://github.com/macports/macports-ports/commit/cca235463eab122aa94b3091f77d41e2ad7db582</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new cca235463ea libffi: fix build on Intel < darwin11
</span>cca235463ea is described below
<span style='display:block; white-space:pre;color:#808000;'>commit cca235463eab122aa94b3091f77d41e2ad7db582
</span>Author: Ken Cunningham <kencu@macports.org>
AuthorDate: Sat Oct 31 15:07:48 2020 -0700
<span style='display:block; white-space:pre;color:#404040;'> libffi: fix build on Intel < darwin11
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> closes: https://trac.macports.org/ticket/61170
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> no revbump - hasn't been building on intel darwin < 11
</span><span style='display:block; white-space:pre;color:#404040;'> no changes relevant to installions on ppc darwin < 11
</span>---
devel/libffi/Portfile | 7 ++++
...patch-libffi-darwin-powerpc-no-go-closures.diff | 5 +++
.../files/patch-libffi-intel-leopard-sysv.diff | 41 ++++++++++++++++++++++
devel/libffi/files/patch-libffi-tests-gcc42.diff | 29 +++++++++++++++
4 files changed, 82 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libffi/Portfile b/devel/libffi/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 05f2281effd..806aa190857 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/libffi/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libffi/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -25,8 +25,15 @@ checksums rmd160 2cd43b66d792f1bad76df2e19a8411beacfcb8e0 \
</span> sha256 72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056 \
size 1305466
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# committed upstream, see https://github.com/libffi/libffi/pull/583
</span> patchfiles patch-libffi-darwin-powerpc-no-go-closures.diff
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 10 && ![string match *clang* ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://trac.macports.org/ticket/61170
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-libffi-intel-leopard-sysv.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-libffi-tests-gcc42.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # Don't use macports gcc or clang toolchains to build this due to dependency cycles
compiler.blacklist-append macports-*
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libffi/files/patch-libffi-darwin-powerpc-no-go-closures.diff b/devel/libffi/files/patch-libffi-darwin-powerpc-no-go-closures.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 4f9fca83748..6289b0ee76c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/libffi/files/patch-libffi-darwin-powerpc-no-go-closures.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libffi/files/patch-libffi-darwin-powerpc-no-go-closures.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,3 +1,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+kencu@macports.org
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix libffi to build on Darwin PowerPC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+see https://github.com/libffi/libffi/pull/583
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> diff --git src/powerpc/ffi_darwin.c src/powerpc/ffi_darwin.c
index 61a18c4..64bb94d 100644
--- src/powerpc/ffi_darwin.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libffi/files/patch-libffi-intel-leopard-sysv.diff b/devel/libffi/files/patch-libffi-intel-leopard-sysv.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..0309dfda974
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libffi/files/patch-libffi-intel-leopard-sysv.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,41 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+kencu@macports.org
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+This i386 code in libffi has been written now to assume a current darwin assembler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+and .cfi directives. Bootstrapping with gcc-4.2 and the default "gas" assembler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+no longer works. This patch re-enables the build of libffi by reverting the asm change
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+and disabling the unsupported features.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+If important to someone, it might be possible to rebuild libffi with these features
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+re-enabled once a newer toolchain has been installed (clang/ld64/cctools).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://trac.macports.org/ticket/61170
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ./src/x86/sysv.S.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ./src/x86/sysv.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -792,7 +792,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef X86_DARWIN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define COMDAT(X) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- .section __TEXT,__text,coalesced,pure_instructions; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ .section __TEXT,__textcoal_nt,coalesced,pure_instructions; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .weak_definition X; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FFI_HIDDEN(X)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined __ELF__ && !(defined(__sun__) && defined(__svr4__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -820,7 +820,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* __PIC__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Sadly, OSX cctools-as doesn't understand .cfi directives at all. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ EHFrame0:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1120,7 +1120,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .long 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .long 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* __APPLE__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* if 0 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* ifndef _MSC_VER */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* ifdef __i386__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libffi/files/patch-libffi-tests-gcc42.diff b/devel/libffi/files/patch-libffi-tests-gcc42.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b987185fd56
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libffi/files/patch-libffi-tests-gcc42.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,29 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+kencu@macports.org
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Needed to run the test suite with the default toolchain on older darwin systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Removes flags unsupported by gcc-4.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://trac.macports.org/ticket/61170
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ./testsuite/lib/libffi.exp.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ./testsuite/lib/libffi.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -488,7 +488,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "gnu" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set common "-W -Wall -Wno-psabi"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set common "-W -Wall"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if [info exists env(LIBFFI_TEST_OPTIMIZATION)] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set optimizations [ list $env(LIBFFI_TEST_OPTIMIZATION) ]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ./testsuite/libffi.bhaible/bhaible.exp.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ./testsuite/libffi.bhaible/bhaible.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24,7 +24,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # was done in a pretty lazy fashion, and requires the use of compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # flags to disable warnings for now.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if { [string match $compiler_vendor "gnu"] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set warning_options "-Wno-unused-variable -Wno-unused-parameter -Wno-unused-but-set-variable -Wno-uninitialized";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set warning_options "-Wno-unused-variable -Wno-unused-parameter -Wno-uninitialized";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if { [string match $compiler_vendor "microsoft"] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # -wd4996 suggest use of vsprintf_s instead of vsprintf
</span></pre><pre style='margin:0'>
</pre>