<pre style='margin:0'>
Herby Gillot (herbygillot) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/18a906cd0ebc75819764c4e520d8fb6b8cad951d">https://github.com/macports/macports-ports/commit/18a906cd0ebc75819764c4e520d8fb6b8cad951d</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 18a906cd0eb sbcl: fix build on PowerPC
</span>18a906cd0eb is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 18a906cd0ebc75819764c4e520d8fb6b8cad951d
</span>Author: Kirill A. Korinsky <kirill@korins.ky>
AuthorDate: Tue Aug 29 12:33:28 2023 +0200

<span style='display:block; white-space:pre;color:#404040;'>    sbcl: fix build on PowerPC
</span>---
 lang/sbcl/Portfile                                 |  4 +-
 ...1019-Allow-bootstrap-by-SBCL-before-1.1.5.patch | 28 ++++++++++++++
 ...20-ppc-Darwin-fix-build-on-32-bit-systems.patch | 43 ++++++++++++++++++++++
 3 files changed, 74 insertions(+), 1 deletion(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/Portfile b/lang/sbcl/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 5e690d4299a..d73568b0be5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -75,7 +75,9 @@ if {${os.platform} eq "darwin" && ${configure.build_arch} in [list ppc i386]} {
</span>                 1015-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch \
                 1016-Fix-building-by-lisp-without-endian-features.patch \
                 1017-ppc-Darwin-fix-threads-support.patch \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                1018-Darwin-fix-build-without-legacy-support-library.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                1018-Darwin-fix-build-without-legacy-support-library.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                1019-Allow-bootstrap-by-SBCL-before-1.1.5.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                1020-ppc-Darwin-fix-build-on-32-bit-systems.patch
</span> }
 
 distfiles       ${name}-${version}-source${extract.suffix}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1019-Allow-bootstrap-by-SBCL-before-1.1.5.patch b/lang/sbcl/files/1019-Allow-bootstrap-by-SBCL-before-1.1.5.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..231a69ec973
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1019-Allow-bootstrap-by-SBCL-before-1.1.5.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 324ee8931ad357415a85dc731aa72484d29c83e7 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: "Kirill A. Korinsky" <kirill@korins.ky>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Tue, 29 Aug 2023 12:12:50 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] Allow bootstrap by SBCL before 1.1.5
</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;'>+ tools-for-build/canonicalize-whitespace.lisp | 5 +++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 5 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git tools-for-build/canonicalize-whitespace.lisp tools-for-build/canonicalize-whitespace.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f30f80fa3..1776f4040 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- tools-for-build/canonicalize-whitespace.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ tools-for-build/canonicalize-whitespace.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,6 +15,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #+ecl (ext:quit) ; avoids 'Unexpected end of file on #<input file "stdin">.'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++;; The last available build of SBCL for PowerPC is 1.0.47
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++;; and sb-ext:map-directory were introduced at 1.1.5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++(if (not (apropos-list "map-directory" 'sb-ext))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  (quit))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #+sbcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (progn
</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;'>+2.42.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1020-ppc-Darwin-fix-build-on-32-bit-systems.patch b/lang/sbcl/files/1020-ppc-Darwin-fix-build-on-32-bit-systems.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..32f409f863e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1020-ppc-Darwin-fix-build-on-32-bit-systems.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,43 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 4c8282d82278a06fcb5ae8616c47120683dabbfe Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: "Kirill A. Korinsky" <kirill@korins.ky>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Tue, 29 Aug 2023 12:28:38 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] ppc/Darwin: fix build on 32 bit systems
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Commit 2d4525a334c09a68fa1ba2202f280fdae685bff1 makes call
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+`gcbarrier_patch_code` mandatory and defines dummy version for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+unsupported architectures.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PPC contains `lose()` for 32 bit version which simple leads to double
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+symbols which may prevent linking with strict linker which doesn't allow
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+such behaviour like which is used at Darwin.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/runtime/ppc-arch.c | 6 ++----
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 2 insertions(+), 4 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/runtime/ppc-arch.c src/runtime/ppc-arch.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index b0b48bb48..d87149508 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/runtime/ppc-arch.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/runtime/ppc-arch.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -737,9 +737,9 @@ arch_write_linkage_table_entry(int index, void *target_addr, int datap)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   os_flush_icache((os_vm_address_t) reloc_addr, (char*) inst_ptr - reloc_addr);
</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;'>++#ifdef LISP_FEATURE_64_BIT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void gcbarrier_patch_code(void* where, int nbits)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef LISP_FEATURE_64_BIT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     int m_operand = 64 - nbits;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // the M field has a kooky encoding
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     int m_encoded = ((m_operand & 0x1F) << 1) | (m_operand >> 5);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -748,7 +748,5 @@ void gcbarrier_patch_code(void* where, int nbits)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // .... ____ _xxx xxx_ ____ = 0x7E0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     //                  ^ deposit it here, in (BYTE 6 5) of the instruction.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     *pc = (inst & ~0x7E0) | (m_encoded << 5);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    lose("can't patch rldicl in 32-bit"); // illegal instruction
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.42.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span></pre><pre style='margin:0'>

</pre>