<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/d03ce83dacf0f8b2669b7bba0372682079e1c77c">https://github.com/macports/macports-ports/commit/d03ce83dacf0f8b2669b7bba0372682079e1c77c</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 d03ce83dacf libsdl2-powerpc: new port, SDL2 for macOS PowerPC
</span>d03ce83dacf is described below

<span style='display:block; white-space:pre;color:#808000;'>commit d03ce83dacf0f8b2669b7bba0372682079e1c77c
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Mon Mar 18 21:49:16 2024 +0800

<span style='display:block; white-space:pre;color:#404040;'>    libsdl2-powerpc: new port, SDL2 for macOS PowerPC
</span>---
 devel/libsdl2-powerpc/Portfile                     |  93 ++++++++
 .../files/0001-Fixes-for-PowerPC.patch             | 251 +++++++++++++++++++++
 devel/libsdl2-powerpc/files/0002-fix-x11.diff      |  49 ++++
 ...evert-a-commit-that-triggers-ICE-with-GCC.patch |  80 +++++++
 4 files changed, 473 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libsdl2-powerpc/Portfile b/devel/libsdl2-powerpc/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..238e7fc2d76
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libsdl2-powerpc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,93 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           compiler_blacklist_versions 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name                libsdl2-powerpc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts           libsdl2 libsdl2-snowleopard
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        libsdl-org SDL 2.30.1 release-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          devel multimedia
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms           {darwin < 11}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+supported_archs     ppc ppc64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             zlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {@barracuda156 gmail.com:vital.had}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Cross-platform multi-media development API
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    Simple DirectMedia Layer is a cross-platform development library \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    designed to provide low-level access to audio, keyboard, mouse, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    joystick and graphics hardware via OpenGL and Direct3D. This port \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    is aimed at supporting macOS PowerPC and uses X11 backend.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage            https://www.libsdl.org
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from releases
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname            SDL2-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  9a8b7d06bc57b64c62aad1addafbd98d57edddda \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  01215ffbc8cfc4ad165ba7573750f15ddda1f971d5a66e9dcaffd37c587f473a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    7428023
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Mesa dependency needed: https://trac.macports.org/ticket/61943
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:mesa \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xorg-libX11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xorg-libXcursor \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xorg-libXi \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xorg-libXinerama \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xorg-libXrandr \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xorg-libXScrnSaver \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xorg-libXxf86vm \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xrender
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# xorg-server does not build presently on any PowerPC macOS.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_run-append  port:xorg-server-legacy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-libsamplerate \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-dbus \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-esd \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-pulseaudio \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-video-cocoa \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-x11-shared \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --enable-video-x11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --x-includes=${prefix}/include \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --x-libraries=${prefix}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Disable Jack until this is fixed:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61759
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-jack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Should be fixable once this is backported:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105522
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Until then, disable it.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-joystick
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.args          V=1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Disable broken compilers:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist  *clang* *gcc-4.*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Fix-ups for PowerPC systems:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   0001-Fixes-for-PowerPC.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Fix building against Macports X11.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   0002-fix-x11.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# To be dropped once this is backported:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105522
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   0003-hidapi-revert-a-commit-that-triggers-ICE-with-GCC.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Config header hardcodes wrong paths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|@PREFIX@|${prefix}|g" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${worksrcpath}/include/SDL_config_macosx.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${worksrcpath}/src/video/x11/SDL_x11opengl.c
</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;'>+post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set docdir ${prefix}/share/doc/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -d ${destroot}${docdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -m 0644 -W ${worksrcpath} BUGS.txt CREDITS.txt LICENSE.txt \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        README-SDL.txt TODO.txt WhatsNew.txt \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        {*}[glob ${worksrcpath}/docs/*.md] ${destroot}${docdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libsdl2-powerpc/files/0001-Fixes-for-PowerPC.patch b/devel/libsdl2-powerpc/files/0001-Fixes-for-PowerPC.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..8d615756f9f
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libsdl2-powerpc/files/0001-Fixes-for-PowerPC.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,251 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From f868d0416773aa381d2aec22a2446dbcb639a86e Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: barracuda156 <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Fri, 21 Jul 2023 09:10:18 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] Fixes for PowerPC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git include/SDL_config_macosx.h include/SDL_config_macosx.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d7ad6cc71..736c1043d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- include/SDL_config_macosx.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ include/SDL_config_macosx.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- include/SDL_config_macosx.h.orig       2023-07-02 01:04:05.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ include/SDL_config_macosx.h    2023-07-23 05:28:30.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -49,7 +49,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define HAVE_STDIO_H    1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define HAVE_STRING_H   1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define HAVE_SYS_TYPES_H    1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define HAVE_LIBUNWIND_H    1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define HAVE_LIBUNWIND_H    0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* C library functions */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define HAVE_DLOPEN 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -270,7 +270,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SDL_FILESYSTEM_COCOA   1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Enable assembly routines */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef __ppc__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __POWERPC__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SDL_ALTIVEC_BLITTERS    1
</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;'>+diff --git include/SDL_platform.h include/SDL_platform.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d2a7e052d..3127d8cf0 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- include/SDL_platform.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ include/SDL_platform.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -108,9 +108,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* if not compiling for iOS */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef __MACOSX__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define __MACOSX__  1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if MAC_OS_X_VERSION_MIN_REQUIRED < 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# error SDL for Mac OS X only supports deploying on 10.7 and above.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1070 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED < 1050
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# error SDL for Mac OS X only supports deploying on 10.5 and above.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1050 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* TARGET_OS_IPHONE */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* defined(__APPLE__) */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/audio/coreaudio/SDL_coreaudio.m src/audio/coreaudio/SDL_coreaudio.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 974fe8681..600e51bfd 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/audio/coreaudio/SDL_coreaudio.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/audio/coreaudio/SDL_coreaudio.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -31,6 +31,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "SDL_coreaudio.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "../../thread/SDL_systhread.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "AvailabilityMacros.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef MAC_OS_VERSION_12_0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define kAudioObjectPropertyElementMain kAudioObjectPropertyElementMaster
</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;'>+ #define DEBUG_COREAUDIO 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if DEBUG_COREAUDIO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -371,7 +376,7 @@ static void interruption_end(_THIS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static BOOL update_audio_session(_THIS, SDL_bool open, SDL_bool allow_playandrecord)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    @autoreleasepool {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         AVAudioSession *session = [AVAudioSession sharedInstance];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -504,8 +509,8 @@ static BOOL update_audio_session(_THIS, SDL_bool open, SDL_bool allow_playandrec
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 listener.device = NULL;
</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;'>++    [pool release];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return YES;
</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;'>+@@ -1043,7 +1048,7 @@ static int COREAUDIO_OpenDevice(_THIS, const char *devname)
</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;'>+     /* Stop CoreAudio from doing expensive audio rate conversion */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    @autoreleasepool {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         AVAudioSession *session = [AVAudioSession sharedInstance];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         [session setPreferredSampleRate:this->spec.freq error:nil];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         this->spec.freq = (int)session.sampleRate;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1058,7 +1063,7 @@ static int COREAUDIO_OpenDevice(_THIS, const char *devname)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         /* Calling setPreferredOutputNumberOfChannels seems to break audio output on iOS */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* TARGET_OS_TV */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        [pool release];
</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;'>+     /* Setup a AudioStreamBasicDescription with the requested format */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/file/cocoa/SDL_rwopsbundlesupport.m src/file/cocoa/SDL_rwopsbundlesupport.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8d6ec7047..b234681d3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/file/cocoa/SDL_rwopsbundlesupport.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/file/cocoa/SDL_rwopsbundlesupport.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -34,7 +34,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FILE *SDL_OpenFPFromBundleOrFallback(const char *file, const char *mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    @autoreleasepool {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        NSAutoreleasePool* autorelease_pool = [[NSAutoreleasePool alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         FILE *fp = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         NSFileManager *file_manager;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         NSString *resource_path;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -58,8 +58,8 @@ FILE *SDL_OpenFPFromBundleOrFallback(const char *file, const char *mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             fp = fopen(file, mode);
</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;'>++        [autorelease_pool drain];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return fp;
</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 /* __APPLE__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/filesystem/cocoa/SDL_sysfilesystem.m src/filesystem/cocoa/SDL_sysfilesystem.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 94ee7830e..822ced47c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/filesystem/cocoa/SDL_sysfilesystem.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/filesystem/cocoa/SDL_sysfilesystem.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -35,7 +35,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ char *SDL_GetBasePath(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    @autoreleasepool {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         NSBundle *bundle = [NSBundle mainBundle];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         const char *baseType = [[[bundle infoDictionary] objectForKey:@"SDL_FILESYSTEM_BASE_DIR_TYPE"] UTF8String];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         const char *base = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -63,13 +63,13 @@ char *SDL_GetBasePath(void)
</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;'>++        [pool release];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return retval;
</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;'>+ char *SDL_GetPrefPath(const char *org, const char *app)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    @autoreleasepool {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         char *retval = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         NSArray *array;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -130,8 +130,8 @@ char *SDL_GetPrefPath(const char *org, const char *app)
</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;'>++        [pool release];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return retval;
</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 /* SDL_FILESYSTEM_COCOA */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/hidapi/ios/hid.m src/hidapi/ios/hid.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8ebfdbe72..c1e2e2295 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/hidapi/ios/hid.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/hidapi/ios/hid.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -834,7 +834,8 @@ int HID_API_EXPORT hid_set_nonblocking(hid_device *dev, int nonblock)
</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;'>+ struct hid_device_info  HID_API_EXPORT *hid_enumerate(unsigned short vendor_id, unsigned short product_id)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{ @autoreleasepool {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   struct hid_device_info *root = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const char *hint = SDL_GetHint(SDL_HINT_HIDAPI_IGNORE_DEVICES);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -884,8 +885,9 @@ struct hid_device_info  HID_API_EXPORT *hid_enumerate(unsigned short vendor_id,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   device_info->manufacturer_string = wcsdup( L"Valve Corporation" );
</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;'>++  [pool release];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return root;
</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;'>+ int HID_API_EXPORT_CALL hid_get_manufacturer_string(hid_device *dev, wchar_t *string, size_t maxlen)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/locale/macosx/SDL_syslocale.m src/locale/macosx/SDL_syslocale.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 3a0e5db9e..b79b55456 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/locale/macosx/SDL_syslocale.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/locale/macosx/SDL_syslocale.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -26,7 +26,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void SDL_SYS_GetPreferredLocales(char *buf, size_t buflen)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    @autoreleasepool {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         NSArray *languages = NSLocale.preferredLanguages;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         size_t numlangs = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         size_t i;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -71,7 +71,7 @@ void SDL_SYS_GetPreferredLocales(char *buf, size_t buflen)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 buflen--;
</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;'>++    [pool release];
</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;'>+ /* vi: set ts=4 sw=4 expandtab: */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/misc/macosx/SDL_sysurl.m src/misc/macosx/SDL_sysurl.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 657c8f520..369e5dd48 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/misc/macosx/SDL_sysurl.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/misc/macosx/SDL_sysurl.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,12 +25,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int SDL_SYS_OpenURL(const char *url)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    @autoreleasepool {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         CFURLRef cfurl = CFURLCreateWithBytes(NULL, (const UInt8 *)url, SDL_strlen(url), kCFStringEncodingUTF8, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         OSStatus status = LSOpenCFURLRef(cfurl, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         CFRelease(cfurl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        [pool release];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return status == noErr ? 0 : -1;
</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;'>+ /* vi: set ts=4 sw=4 expandtab: */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/power/uikit/SDL_syspower.m src/power/uikit/SDL_syspower.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5b9076b57..fe6aa70e5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/power/uikit/SDL_syspower.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/power/uikit/SDL_syspower.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -59,7 +59,7 @@ SDL_bool SDL_GetPowerInfo_UIKit(SDL_PowerState *state, int *seconds, int *percen
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     *seconds = -1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     *percent = -1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else  /* TARGET_OS_TV */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    @autoreleasepool {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         UIDevice *uidev = [UIDevice currentDevice];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (!SDL_UIKitLastPowerInfoQuery) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -97,9 +97,9 @@ SDL_bool SDL_GetPowerInfo_UIKit(SDL_PowerState *state, int *seconds, int *percen
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         const float level = uidev.batteryLevel;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         *percent = ((level < 0.0f) ? -1 : ((int)((level * 100) + 0.5f)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* TARGET_OS_TV */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    [pool release];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return SDL_TRUE; /* always the definitive answer on iOS. */
</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;color:#808080;'>diff --git a/devel/libsdl2-powerpc/files/0002-fix-x11.diff b/devel/libsdl2-powerpc/files/0002-fix-x11.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..92b09aa46b7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libsdl2-powerpc/files/0002-fix-x11.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,49 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- include/SDL_config_macosx.h    2023-07-02 01:04:05.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ include/SDL_config_macosx.h    2023-07-23 05:28:30.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -182,14 +182,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SDL_TIMER_UNIX  1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Enable various video drivers */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__POWERPC__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SDL_VIDEO_DRIVER_COCOA  1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SDL_VIDEO_DRIVER_DUMMY  1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#undef SDL_VIDEO_DRIVER_X11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/opt/X11/lib/libX11.6.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/opt/X11/lib/libXext.6.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "/opt/X11/lib/libXi.6.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/opt/X11/lib/libXrandr.2.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "/opt/X11/lib/libXss.1.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SDL_VIDEO_DRIVER_X11    1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SDL_VIDEO_DRIVER_X11_DYNAMIC "@PREFIX@/lib/libX11.6.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "@PREFIX@/lib/libXext.6.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "@PREFIX@/lib/libXi.6.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "@PREFIX@/lib/libXrandr.2.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "@PREFIX@/lib/libXss.1.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SDL_VIDEO_DRIVER_X11_XDBE 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SDL_VIDEO_DRIVER_X11_XRANDR 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SDL_VIDEO_DRIVER_X11_XSCRNSAVER 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/video/x11/SDL_x11opengl.c  2023-07-02 01:04:05.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/video/x11/SDL_x11opengl.c  2023-07-23 07:49:24.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -40,7 +40,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define DEFAULT_OPENGL  "libGL.so"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__MACOSX__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define DEFAULT_OPENGL  "/opt/X11/lib/libGL.1.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DEFAULT_OPENGL  "@PREFIX@/lib/libGL.1.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__QNXNTO__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define DEFAULT_OPENGL  "libGL.so.3"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -468,7 +469,9 @@
</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;'>+     if (context) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__POWERPC__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         _this->gl_data->glXMakeCurrent(display, None, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         _this->gl_data->glXDestroyContext(display, context);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (prev_ctx && prev_drawable) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             _this->gl_data->glXMakeCurrent(display, prev_drawable, prev_ctx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/libsdl2-powerpc/files/0003-hidapi-revert-a-commit-that-triggers-ICE-with-GCC.patch b/devel/libsdl2-powerpc/files/0003-hidapi-revert-a-commit-that-triggers-ICE-with-GCC.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..ab79b521ed4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/libsdl2-powerpc/files/0003-hidapi-revert-a-commit-that-triggers-ICE-with-GCC.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,80 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 16bd927c93c4eab33cd0eec4489ce74b9b414d1a Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: barracuda156 <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Wed, 19 Jul 2023 12:25:40 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] hidapi: revert a commit that triggers ICE with GCC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105522
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Breaking commit: https://github.com/libsdl-org/SDL/commit/db60b27188d275f1bb711bac5e7a9f0295c64b12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/hidapi/mac/hid.c | 20 ++++++++++++++++++--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 18 insertions(+), 2 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/hidapi/mac/hid.c src/hidapi/mac/hid.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ec7ffaf16..6c9e8dd2e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/hidapi/mac/hid.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/hidapi/mac/hid.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -33,7 +33,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "../hidapi/hidapi.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __clang__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define VALVE_USB_VID             0x28DE
</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;'>+ /* Barrier implementation because Mac OSX doesn't have pthread_barrier.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  It also doesn't have clock_gettime(). So much for POSIX and SUSv2.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -398,6 +400,7 @@ static void hid_device_removal_callback(void *context, IOReturn result,
</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;'>++#ifdef __clang__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static CFDictionaryRef
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ create_usage_match(const UInt32 page, const UInt32 usage, int *okay)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -444,10 +447,12 @@ create_vendor_match(const UInt32 vendor, int *okay)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return retval;
</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;'>+ /* Initialize the IOHIDManager. Return 0 for success and -1 for failure. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int init_hid_manager(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __clang__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int okay = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const void *vals[] = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           (void *) create_usage_match(kHIDPage_GenericDesktop, kHIDUsage_GD_Joystick, &okay),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -464,20 +469,31 @@ static int init_hid_manager(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   CFRelease((CFTypeRef) vals[i]);
</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;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Initialize all the HID Manager Objects */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hid_mgr = IOHIDManagerCreate(kCFAllocatorDefault, kIOHIDOptionsTypeNone);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (hid_mgr) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          IOHIDManagerSetDeviceMatchingMultiple(hid_mgr, matchingArray);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef __clang__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          IOHIDManagerSetDeviceMatching(hid_mgr, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        IOHIDManagerSetDeviceMatchingMultiple(hid_mgr, matchingArray);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           IOHIDManagerScheduleWithRunLoop(hid_mgr, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           IOHIDManagerRegisterDeviceRemovalCallback(hid_mgr, hid_device_removal_callback, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef __clang__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return 0;
</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;'>+-  
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef __clang__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return -1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (matchingArray != NULL) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           CFRelease(matchingArray);
</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;'>+   return hid_mgr ? 0 : -1;
</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;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Initialize the IOHIDManager if necessary. This is the public function, and
</span></pre><pre style='margin:0'>

</pre>