<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/3f5b41fdb7470cff2d4bc6ce740ffe8946be139c">https://github.com/macports/macports-ports/commit/3f5b41fdb7470cff2d4bc6ce740ffe8946be139c</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 3f5b41fdb74 sbcl: fix buils on 11/arm, enable threads on PPC
</span>3f5b41fdb74 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 3f5b41fdb7470cff2d4bc6ce740ffe8946be139c
</span>Author: Kirill A. Korinsky <kirill@korins.ky>
AuthorDate: Sun Jun 11 23:13:52 2023 +0200
<span style='display:block; white-space:pre;color:#404040;'> sbcl: fix buils on 11/arm, enable threads on PPC
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Also, fixed a bug when SBCL can't use anything from MacPorts with fancy variant.
</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/18905
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/67437
</span>---
lang/sbcl/Portfile | 65 +++++++++-------
lang/sbcl/files/0004-Disable-pdf-manual.patch | 22 ------
...rwin-disable-custom-nanosleep-before-10.6.patch | 46 -----------
...use-libc-nanosleep-before-10.6-and-on-PPC.patch | 67 ++++++++++++++++
...-recovery-support-non-dispatch-semaphores.patch | 28 +++++--
...rwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch | 2 +-
.../1007-x86-Darwin-revert-OS_THREAD_STACK.patch | 2 +-
...-x86-Darwin-fix-build-by-old-preprocessor.patch | 2 +-
...86-Darwin-disable-failing-stat-mode-tests.patch | 2 +-
.../1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch | 2 +-
.../files/1011-x86-Darwin-fix-syntax-typos.patch | 2 +-
...-Revert-Delete-support-for-and-darwin-ppc.patch | 2 +-
...3-ppc-Darwin-Config.ppc-follow-up-changes.patch | 2 +-
...ppc-assem.S-fix-wrong-assembler-code-chun.patch | 2 +-
.../files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch | 6 +-
...ppc-assem-a-minor-fix-to-assembler-syntax.patch | 2 +-
...-building-by-lisp-without-endian-features.patch | 2 +-
...ement-os_tsd_get_direct-for-macOS-before-.patch | 2 +-
.../1019-ppc-Darwin-fix-threads-support.patch | 89 ++++++++++++++++++++++
19 files changed, 231 insertions(+), 116 deletions(-)
<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 c1d6f8b16e3..b1cba60308f 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;'>@@ -12,7 +12,7 @@ name sbcl
</span> # Please bump the revision of math/maxima (and when it exists
# math/maxima-devel) and fricas when this port changes.
version 2.3.5
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 2
</span>
categories lang
license BSD
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -49,7 +49,7 @@ checksums rmd160 95a02d7a489137602ebba333b83bfc1d9eb794be \
</span> # Please do not update it without testing.
if {${os.platform} eq "darwin" && ${configure.build_arch} in [list ppc i386]} {
version 2.3.5
<span style='display:block; white-space:pre;background:#ffe0e0;'>- revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 1
</span> epoch [ expr ${epoch} + 1 ]
checksums rmd160 95a02d7a489137602ebba333b83bfc1d9eb794be \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -61,7 +61,7 @@ if {${os.platform} eq "darwin" && ${configure.build_arch} in [list ppc i386]} {
</span> 1001-x86-Darwin-Revert-x86-darwin-files.patch \
1002-x86-Darwin-Revert-Perform-darwin-related-housekeepin.patch \
1003-x86-Darwin-Remove-mach-exception-handler.patch \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 1004-Darwin-disable-custom-nanosleep-before-10.6.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1004-Darwin-use-libc-nanosleep-before-10.6-and-on-PPC.patch \
</span> 1005-Darwin-recovery-support-non-dispatch-semaphores.patch \
1006-x86-Darwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch \
1007-x86-Darwin-revert-OS_THREAD_STACK.patch \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -75,7 +75,8 @@ if {${os.platform} eq "darwin" && ${configure.build_arch} in [list ppc i386]} {
</span> 1015-ppc-Darwin-Misc-fixes-for-PPC.patch \
1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch \
1017-Fix-building-by-lisp-without-endian-features.patch \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1019-ppc-Darwin-fix-threads-support.patch
</span> }
distfiles ${name}-${version}-source${extract.suffix}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -104,19 +105,15 @@ post-patch {
</span> reinplace "s|/usr/local/lib/${name}|${prefix}/lib/${name}|g" \
${worksrcpath}/doc/sbcl.1
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # Enable legacy support when it required
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set legacy_support_cpp_flags [legacysupport::get_cpp_flags]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set legacy_support_link_flags [legacysupport::get_library_link_flags]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {${legacy_support_cpp_flags} ne "" || ${legacy_support_link_flags} ne ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set config_path ${worksrcpath}/src/runtime
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach f [glob -tails -directory ${config_path} Config.*-darwin] {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ui_debug "Adding LegacySupport into ${f}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set config [open ${config_path}/$f a]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts ${config} "CFLAGS += ${legacy_support_cpp_flags}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts ${config} "DEPEND_FLAGS += ${legacy_support_cpp_flags}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts ${config} "OS_LIBS += ${legacy_support_link_flags}"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- close ${config}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # This is the way to bypass path to MacPorts includes into sbcl.mk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set config_path ${worksrcpath}/src/runtime
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach f [glob -tails -directory ${config_path} Config.*-darwin] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_debug "Adding MacPorts paths into ${f}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set config [open ${config_path}/$f a]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ puts ${config} "CFLAGS += -I${prefix}/include [legacysupport::get_cpp_flags]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ puts ${config} "DEPEND_FLAGS += -I${prefix}/include [legacysupport::get_cpp_flags]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ puts ${config} "OS_LIBS += -L${prefix}/lib [legacysupport::get_library_link_flags]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ close ${config}
</span> }
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -154,22 +151,43 @@ if {${configure.build_arch} eq "i386"} {
</span> --arch=${configure.build_arch}
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin arm 20 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # SBCL 2.3.5 unconditionally switched on FUTEX on all arm macOS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # unfortunately it use an assembler block of code from macOS SDK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # that doesn't work on BigSur and brokes the build.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Error: GC invariant lost, file "thread.c", line 256
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # See: https://github.com/sbcl/sbcl/blob/sbcl-2.3.5/src/runtime/thread.c#L245-L259
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --without-sb-futex
</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;'>+# SBCL enables SIMD only when host CPU supports AVX2 which may not be true for buildbot.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# To make build consistent, let disable it by default and enable via variant.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# See: https://trac.macports.org/ticket/67437
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --without-sb-simd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant simd description {Enable build of SIMD extention, that fails on CPU without AVX2 support.} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.args-replace --without-sb-simd --with-sb-simd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-build {
if {[variant_isset html] || [variant_isset pdf]} {
system -W ${worksrcpath}/doc "INSTALL_ROOT=${destroot}${prefix} sh ${worksrcpath}/doc/make-doc.sh"
}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# NOTE seems that threads never works on PowerPC
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# See: https://github.com/sbcl/sbcl/commit/33a6b2817f3e2a8cf98d162a2b40c50d259295c4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {![variant_isset threads] && ${configure.build_arch} ne "ppc"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![variant_isset threads]} {
</span> default_variants +fancy
}
variant html conflicts pdf description {Installs documentation in HTML and Info formats.} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- patchfiles-append 0004-Disable-pdf-manual.patch
</span> depends_build-append bin:texi2dvi:texinfo
depends_build-append bin:makeinfo:texinfo
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {s|$GNUMAKE html pdf info|$GNUMAKE html info|g} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ doc/make-doc.sh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> }
variant pdf conflicts html description {Installs documentation in PDF, HTML and Info formats. Involves the installation of a TexLive dependency chain, which can dramatically slow down the installation of the SBCL port.} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -186,11 +204,6 @@ variant fancy conflicts threads description {Configure SBCL compilation with all
</span> build.args-append --fancy
# As of version 2.2.6, zstd is used for core compression.
depends_lib-append port:zstd
<span style='display:block; white-space:pre;background:#ffe0e0;'>- post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- "s| OS_LIBS += -lzstd| OS_LIBS += -L${prefix}/lib -lzstd\\\n DEPEND_FLAGS += -I${prefix}/include\\\n CFLAGS += -I${prefix}/include|g" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {*}[glob ${worksrcpath}/src/runtime/Config.*-darwin]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span> }
test.run yes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/0004-Disable-pdf-manual.patch b/lang/sbcl/files/0004-Disable-pdf-manual.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 9569409597d..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/0004-Disable-pdf-manual.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,22 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 5abffa167689977e1236e7489b780194cd67cb21 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: "Kirill A. Korinsky" <kirill@korins.ky>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Tue, 6 Jun 2023 12:09:09 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] Disable pdf manual
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- doc/make-doc.sh | 2 +-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 1 file changed, 1 insertion(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git doc/make-doc.sh doc/make-doc.sh
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index fe8f261cd..e592ac342 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- doc/make-doc.sh
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ doc/make-doc.sh
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -3,4 +3,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- . ../find-gnumake.sh
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- find_gnumake
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--(cd ./manual ; $GNUMAKE html pdf info)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+(cd ./manual ; $GNUMAKE html info)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-2.41.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1004-Darwin-disable-custom-nanosleep-before-10.6.patch b/lang/sbcl/files/1004-Darwin-disable-custom-nanosleep-before-10.6.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 233527fedf8..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1004-Darwin-disable-custom-nanosleep-before-10.6.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,46 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From dfe4b0e8dd8ecae05ea1fd5f115fafb38e02d64c Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: "Kirill A. Korinsky" <kirill@korins.ky>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Tue, 6 Jun 2023 15:15:56 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] Darwin: disable custom nanosleep before 10.6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-See: https://github.com/sbcl/sbcl/commit/6d28b641b659b2be6ad7b329ae09cb592c1162a1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/runtime/darwin-os.c | 4 ++++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/runtime/wrap.c | 2 +-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 2 files changed, 5 insertions(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git src/runtime/darwin-os.c src/runtime/darwin-os.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 6a1b29247..c3be53e05 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/runtime/darwin-os.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/runtime/darwin-os.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -165,6 +165,8 @@ futex_wake(int *lock_word, int n)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1060
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* nanosleep() is not re-entrant on some versions of Darwin,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * reimplement it using the underlying syscalls. */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -222,3 +224,5 @@ sb_nanosleep(time_t sec, int nsec) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git src/runtime/wrap.c src/runtime/wrap.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 8f8999e8a..94daf3fa7 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/runtime/wrap.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/runtime/wrap.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -524,7 +524,7 @@ int s_issock(mode_t mode)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif /* !LISP_FEATURE_WIN32 */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #ifdef LISP_FEATURE_UNIX
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#ifdef LISP_FEATURE_DARWIN
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if defined(LISP_FEATURE_DARWIN) && (__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1060)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* nanosleep() is not re-entrant on some versions of Darwin and is
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * reimplemented using the underlying syscalls.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-2.41.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1004-Darwin-use-libc-nanosleep-before-10.6-and-on-PPC.patch b/lang/sbcl/files/1004-Darwin-use-libc-nanosleep-before-10.6-and-on-PPC.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b116046f94e
</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/1004-Darwin-use-libc-nanosleep-before-10.6-and-on-PPC.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,67 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From b5069d3f04ddf8e04af502cb50a12be85c8df50b 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: Sun, 11 Jun 2023 17:38:19 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] Darwin: use libc nanosleep before 10.6 and on PPC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+See: https://github.com/sbcl/sbcl/commit/6d28b641b659b2be6ad7b329ae09cb592c1162a1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ make-config.sh | 8 +++++---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/runtime/darwin-os.c | 4 ++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/runtime/wrap.c | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 3 files changed, 10 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 make-config.sh make-config.sh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fde800457..eb673a302 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- make-config.sh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ make-config.sh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -628,10 +628,12 @@ case "$sbcl_os" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ darwin)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ printf ' :unix :bsd :darwin :mach-o' >> $ltf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ darwin_version=`uname -r`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ darwin_version_major=${DARWIN_VERSION_MAJOR:-${darwin_version%%.*}}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (( 10 > $darwin_version_major )) || [ $sbcl_arch = "ppc" ]; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ printf ' :use-darwin-nanosleep' >> $ltf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if [ $sbcl_arch = "x86-64" ]; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- darwin_version=`uname -r`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- darwin_version_major=${DARWIN_VERSION_MAJOR:-${darwin_version%%.*}}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (( 8 < $darwin_version_major )); then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ printf ' :inode64' >> $ltf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/runtime/darwin-os.c src/runtime/darwin-os.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6a1b29247..22acca519 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/runtime/darwin-os.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/runtime/darwin-os.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -165,6 +165,8 @@ futex_wake(int *lock_word, int n)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</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;'>++#if !defined(LISP_FEATURE_USE_DARWIN_NANOSLEEP)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* nanosleep() is not re-entrant on some versions of Darwin,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * reimplement it using the underlying syscalls. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -222,3 +224,5 @@ sb_nanosleep(time_t sec, int nsec) {
</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;'>+ }
</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;'>+diff --git src/runtime/wrap.c src/runtime/wrap.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8f8999e8a..52a0a40d3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/runtime/wrap.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/runtime/wrap.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -524,7 +524,7 @@ int s_issock(mode_t mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* !LISP_FEATURE_WIN32 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef LISP_FEATURE_UNIX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef LISP_FEATURE_DARWIN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(LISP_FEATURE_DARWIN) && !defined(LISP_FEATURE_USE_DARWIN_NANOSLEEP)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* nanosleep() is not re-entrant on some versions of Darwin and is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * reimplemented using the underlying syscalls.
</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.41.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/1005-Darwin-recovery-support-non-dispatch-semaphores.patch b/lang/sbcl/files/1005-Darwin-recovery-support-non-dispatch-semaphores.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index e1556c99e68..7e26a77ecaa 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1005-Darwin-recovery-support-non-dispatch-semaphores.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1005-Darwin-recovery-support-non-dispatch-semaphores.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,18 +1,32 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 075983a0dc8a5345c7a97fe5e9606474787a4c93 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 705e06b5ce9ac5cc76e2ef95afc5fd4366796dbd Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Tue, 6 Jun 2023 10:28:45 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sun, 11 Jun 2023 17:46:04 +0200
</span> Subject: [PATCH] Darwin: recovery support non dispatch semaphores
See: https://github.com/sbcl/sbcl/commit/160448fd0485daf69e81f9fe9eeb8515ed01db49
---
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ make-config.sh | 2 +-
</span> src/runtime/darwin-os.c | 56 ++++++++++++++++++++++++++++++++++++++++-
src/runtime/darwin-os.h | 6 ++++-
src/runtime/os-common.c | 2 +-
src/runtime/os.h | 2 +-
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 4 files changed, 62 insertions(+), 4 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 5 files changed, 63 insertions(+), 5 deletions(-)
</span>
<span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git make-config.sh make-config.sh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index eb673a302..58b1fc759 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- make-config.sh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ make-config.sh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -631,7 +631,7 @@ case "$sbcl_os" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ darwin_version=`uname -r`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ darwin_version_major=${DARWIN_VERSION_MAJOR:-${darwin_version%%.*}}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (( 10 > $darwin_version_major )) || [ $sbcl_arch = "ppc" ]; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- printf ' :use-darwin-nanosleep' >> $ltf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ printf ' :use-darwin-nanosleep :use-darwin-posix-semaphores' >> $ltf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if [ $sbcl_arch = "x86-64" ]; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (( 8 < $darwin_version_major )); then
</span> diff --git src/runtime/darwin-os.c src/runtime/darwin-os.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index c3be53e05..d5d4e1d8a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 22acca519..182f01807 100644
</span> --- src/runtime/darwin-os.c
+++ src/runtime/darwin-os.c
@@ -77,7 +77,7 @@ void darwin_init(void)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -84,9 +98,9 @@ index c3be53e05..d5d4e1d8a 100644
</span> +
#endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>- #if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1060
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if !defined(LISP_FEATURE_USE_DARWIN_NANOSLEEP)
</span> diff --git src/runtime/darwin-os.h src/runtime/darwin-os.h
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index f13669fb0..e4257e0ee 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f13669fb0..dfcc9e8ea 100644
</span> --- src/runtime/darwin-os.h
+++ src/runtime/darwin-os.h
@@ -36,10 +36,14 @@ typedef ucontext_t os_context_t;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -94,7 +108,7 @@ index f13669fb0..e4257e0ee 100644
</span> void darwin_init(void);
-#ifdef LISP_FEATURE_SB_THREAD
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if defined(LISP_FEATURE_SB_THREAD) && (__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1060) && !defined(__ppc__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(LISP_FEATURE_SB_THREAD) && !defined(LISP_FEATURE_USE_DARWIN_POSIX_SEMAPHORES)
</span> #define USE_DARWIN_GCD_SEMAPHORES
#include <dispatch/dispatch.h>
typedef dispatch_semaphore_t os_sem_t;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1006-x86-Darwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch b/lang/sbcl/files/1006-x86-Darwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 24d7c4ab0f3..f679ededba5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1006-x86-Darwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1006-x86-Darwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 110ec00e4b96ef38a06a50bf6872bee72362667f Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 375c2b521dc522974d8262e771054b9c97f97144 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:27:10 +0200
Subject: [PATCH] x86/Darwin: mask out O_LARGEFILE in fcntl.1 test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1007-x86-Darwin-revert-OS_THREAD_STACK.patch b/lang/sbcl/files/1007-x86-Darwin-revert-OS_THREAD_STACK.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 7c9f34fc359..ec1e6dc24c0 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1007-x86-Darwin-revert-OS_THREAD_STACK.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1007-x86-Darwin-revert-OS_THREAD_STACK.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 0b28e50803d95089cc7bbf76167766b747244beb Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 1388f06cfd0711973a4b25ecc7611626cb34091e Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:29:33 +0200
Subject: [PATCH] x86/Darwin: revert OS_THREAD_STACK
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1008-x86-Darwin-fix-build-by-old-preprocessor.patch b/lang/sbcl/files/1008-x86-Darwin-fix-build-by-old-preprocessor.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 8e51e554e80..8fb8abc9a65 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1008-x86-Darwin-fix-build-by-old-preprocessor.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1008-x86-Darwin-fix-build-by-old-preprocessor.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From ced6423375970d793e821d6780a977e6a02f2886 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 038d3cf36b5cd2802c7129fc8308e2a384335186 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:30:39 +0200
Subject: [PATCH] x86/Darwin: fix build by old preprocessor
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1009-x86-Darwin-disable-failing-stat-mode-tests.patch b/lang/sbcl/files/1009-x86-Darwin-disable-failing-stat-mode-tests.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 57af14e9b8f..1bc43bb3c35 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1009-x86-Darwin-disable-failing-stat-mode-tests.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1009-x86-Darwin-disable-failing-stat-mode-tests.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 760a82e1d8c626ee01d8bf26d95973f571fd23f8 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 61e2f494d6ab1c4b761f190d4ad727342be6ff0b Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:31:20 +0200
Subject: [PATCH] x86/Darwin: disable failing stat-mode tests
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch b/lang/sbcl/files/1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index f2566aff255..095c6306772 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 4d3a5f8f0ce73d3286167e83b7276fc756a6ad43 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 2e27e5ce3b0db331cd22435b82e1b8e20d5b6ede Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:31:51 +0200
Subject: [PATCH] x86/Darwin: add missed OS_CONTEXT_PC
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1011-x86-Darwin-fix-syntax-typos.patch b/lang/sbcl/files/1011-x86-Darwin-fix-syntax-typos.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 3d1dae14f9c..da1c8ee16a9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1011-x86-Darwin-fix-syntax-typos.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1011-x86-Darwin-fix-syntax-typos.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 56589f747ac979aadef95772ba04e37befeb3309 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 1ec5a4469973fe59cbcb0f663616f4f189322533 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:32:35 +0200
Subject: [PATCH] x86/Darwin: fix syntax typos
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1012-ppc-Darwin-Revert-Delete-support-for-and-darwin-ppc.patch b/lang/sbcl/files/1012-ppc-Darwin-Revert-Delete-support-for-and-darwin-ppc.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 2227e025e9c..b975c3d70d3 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1012-ppc-Darwin-Revert-Delete-support-for-and-darwin-ppc.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1012-ppc-Darwin-Revert-Delete-support-for-and-darwin-ppc.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 21632a4ed2b350a98adb6d3b5759b1244d6057cc Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 320bbe69f03ef2765d7368c3c48655c12ea40eaa Mon Sep 17 00:00:00 2001
</span> From: Sergey Fedorov <vital.had@gmail.com>
Date: Mon, 5 Jun 2023 22:03:43 +0800
Subject: [PATCH] ppc/Darwin: Revert "Delete support for #+(and darwin ppc)"
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1013-ppc-Darwin-Config.ppc-follow-up-changes.patch b/lang/sbcl/files/1013-ppc-Darwin-Config.ppc-follow-up-changes.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 5b2faed900f..24053da2800 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1013-ppc-Darwin-Config.ppc-follow-up-changes.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1013-ppc-Darwin-Config.ppc-follow-up-changes.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 9deb1b90c8d923fdc786127044d8fdf3e0de7f25 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 73bf4a60ff3a14f8db807187cc8c007b06ac747b Mon Sep 17 00:00:00 2001
</span> From: barracuda156 <vital.had@gmail.com>
Date: Mon, 5 Jun 2023 22:29:05 +0800
Subject: [PATCH] ppc/Darwin: Config.ppc: follow up changes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1014-ppc-Darwin-ppc-assem.S-fix-wrong-assembler-code-chun.patch b/lang/sbcl/files/1014-ppc-Darwin-ppc-assem.S-fix-wrong-assembler-code-chun.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index e88b5e70185..8ae49492e41 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1014-ppc-Darwin-ppc-assem.S-fix-wrong-assembler-code-chun.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1014-ppc-Darwin-ppc-assem.S-fix-wrong-assembler-code-chun.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From f495aaffc057d039294e9afd4b68f42ebd82d724 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 6fa5bd61f50e19adc00d134ac7399c70868367d1 Mon Sep 17 00:00:00 2001
</span> From: barracuda156 <vital.had@gmail.com>
Date: Mon, 5 Jun 2023 22:30:34 +0800
Subject: [PATCH] ppc/Darwin: ppc-assem.S: fix wrong assembler code chunk
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch b/lang/sbcl/files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 5393f95e157..6daf3762360 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From d34f8c9a5b31bb05b31ca905bb20a4965dfdb0d1 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 555c637c4ecece8ed3e6c68a483c7798cad82aa6 Mon Sep 17 00:00:00 2001
</span> From: Sergey Fedorov <vital.had@gmail.com>
Date: Mon, 5 Jun 2023 22:51:40 +0800
Subject: [PATCH] ppc/Darwin: Misc fixes for PPC
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -27,10 +27,10 @@ index e556c133a..fc84afe4a 100644
</span> (list "-o" (namestring exefile) (namestring sourcefile)))
:search t
diff --git make-config.sh make-config.sh
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index fde800457..c47669713 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 58b1fc759..c08d99f97 100755
</span> --- make-config.sh
+++ make-config.sh
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -739,8 +739,15 @@ case "$sbcl_arch" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -741,8 +741,15 @@ case "$sbcl_arch" in
</span> $GNUMAKE -C tools-for-build where-is-mcontext -I ../src/runtime
tools-for-build/where-is-mcontext > src/runtime/ppc-linux-mcontext.h || (echo "error running where-is-mcontext"; exit 1)
elif [ "$sbcl_os" = "darwin" ]; then
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch b/lang/sbcl/files/1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index fe6e65f0667..33602bcec1d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 8d2ed16e819e0de4159ecadc6c367a9e86adc7ef Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From fa1e6470b89657f515506b4b07e65fe9c7f3da50 Mon Sep 17 00:00:00 2001
</span> From: barracuda156 <vital.had@gmail.com>
Date: Tue, 6 Jun 2023 16:37:08 +0800
Subject: [PATCH] ppc/Darwin: ppc-assem: a minor fix to assembler syntax
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1017-Fix-building-by-lisp-without-endian-features.patch b/lang/sbcl/files/1017-Fix-building-by-lisp-without-endian-features.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 5884dbb5d07..fe6238d5583 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1017-Fix-building-by-lisp-without-endian-features.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1017-Fix-building-by-lisp-without-endian-features.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 4bc3a52b5ed2e977ca29ea5ac7c3e2bb6801cd41 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 5bcc9c806ac0a8cb61030774b13944f4adc0859c Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Thu, 8 Jun 2023 20:43:29 +0200
Subject: [PATCH] Fix building by lisp without endian features
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch b/lang/sbcl/files/1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 37df0c8f494..c9397ba6002 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 2dac0ee15c5f7c03b49ef9d11d3864e2dc348ab2 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 39b3e6c56f6b3bb7687a2d3552dc20f279d7da22 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Sat, 10 Jun 2023 00:28:06 +0200
Subject: [PATCH] Darwin: implement `os_tsd_get_direct` for macOS before 10.13
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1019-ppc-Darwin-fix-threads-support.patch b/lang/sbcl/files/1019-ppc-Darwin-fix-threads-support.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..a771f8f3fb6
</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-ppc-Darwin-fix-threads-support.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,89 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 6998e9a125e6778330ac7cd4a6d6a0a2ef54ce05 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: Sun, 11 Jun 2023 12:14:51 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] ppc/Darwin: fix threads support
</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;'>+ src/cold/shared.lisp | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/runtime/arch.h | 4 ++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/runtime/ppc-assem.S | 6 +++---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/runtime/ppc-darwin-os.c | 12 ++++++++----
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 4 files changed, 16 insertions(+), 8 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/cold/shared.lisp src/cold/shared.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ae707807e..8c2af3973 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/cold/shared.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/cold/shared.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -308,7 +308,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (pushnew :immobile-code sb-xc:*features*))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (when (target-featurep :64-bit)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (push :compact-symbol sb-xc:*features*))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- (when (target-featurep '(:and :sb-thread (:or (:and :darwin (:not :x86)) :openbsd)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ (when (target-featurep '(:and :sb-thread (:or (:and :darwin (:not (:or :ppc :x86))) :openbsd)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (push :os-thread-stack sb-xc:*features*))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (when (target-featurep '(:and :x86 :int4-breakpoints))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;; 0xCE is a perfectly good 32-bit instruction,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/runtime/arch.h src/runtime/arch.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 26f7f2269..5bb8efe46 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/runtime/arch.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/runtime/arch.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -41,6 +41,10 @@ extern int arch_os_thread_init(struct thread *thread);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(LISP_FEATURE_X86) && defined(LISP_FEATURE_SB_THREAD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern void arch_os_load_ldt(struct thread *thread);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(LISP_FEATURE_PPC) && defined(LISP_FEATURE_SB_THREAD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* pthread_key_t is always unsigned long on PPC/Darwin */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern void *arch_os_thread_getspecific(unsigned long key);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern int arch_os_thread_cleanup(struct thread *thread);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern lispobj funcall0(lispobj function);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/runtime/ppc-assem.S src/runtime/ppc-assem.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d902d6e86..58106058c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/runtime/ppc-assem.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/runtime/ppc-assem.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -347,9 +347,9 @@ x:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Call out to obtain our TLS block. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load(reg_NL0,CSYMBOL(current_thread))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef LISP_FEATURE_DARWIN /* FIXME: should it be lis/ori or lis/addi? */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- lis reg_CFUNC,hi16(CSYMBOL(pthread_getspecific))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- ori reg_CFUNC,reg_CFUNC,lo16(CSYMBOL(pthread_getspecific))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef LISP_FEATURE_DARWIN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ lis reg_CFUNC,hi16(CSYMBOL(arch_os_thread_getspecific))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ori reg_CFUNC,reg_CFUNC,lo16(CSYMBOL(arch_os_thread_getspecific))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lis reg_CFUNC,CSYMBOL(pthread_getspecific)@h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ori reg_CFUNC,reg_CFUNC,CSYMBOL(pthread_getspecific)@l
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/runtime/ppc-darwin-os.c src/runtime/ppc-darwin-os.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9258e273b..781e65250 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/runtime/ppc-darwin-os.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/runtime/ppc-darwin-os.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24,16 +24,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "arch.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "interr.h" /* for declaration of lose */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef LISP_FEATURE_SB_THREAD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#error "Define threading support functions"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int arch_os_thread_init(struct thread *thread) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return 1; /* success */
</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_SB_THREAD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* fix for "ld: absolute address to symbol _pthread_getspecific in a different linkage unit not supported" */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void *arch_os_thread_getspecific(pthread_key_t key) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return pthread_getspecific(key);
</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;'>+ int arch_os_thread_cleanup(struct thread *thread) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return 1; /* success */
</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;'>+ os_context_register_t *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ os_context_register_addr(os_context_t *context, int offset)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.41.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span></pre><pre style='margin:0'>
</pre>