<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/25598e65f9196c7ee80ac6ce1fc8022206496d82">https://github.com/macports/macports-ports/commit/25598e65f9196c7ee80ac6ce1fc8022206496d82</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 25598e65f9196c7ee80ac6ce1fc8022206496d82
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Sun Mar 31 06:50:12 2024 +0800
<span style='display:block; white-space:pre;color:#404040;'> gstreamer1: update to 1.24.1
</span>---
gnome/gstreamer1/Portfile | 27 +++--
...s-Fix-gst_macos_main-terminating-whole-pr.patch | 109 +++++++++++++++++++++
2 files changed, 129 insertions(+), 7 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gstreamer1/Portfile b/gnome/gstreamer1/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 09fc6c7a74f..ce1f4086d17 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/gnome/gstreamer1/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gstreamer1/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,16 +1,21 @@
</span> # -*- 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
PortSystem 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup compiler_blacklist_versions 1.0
</span> PortGroup conflicts_build 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup legacysupport 1.1
</span> PortGroup meson 1.0
# https://bugzilla.gnome.org/show_bug.cgi?id=636134
PortGroup muniversal 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# _strnlen
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+legacysupport.newest_darwin_requires_legacy 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> name gstreamer1
set my_name gstreamer
# please only commit stable updates (even numbered releases)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 1.22.9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 1.24.1
</span> revision 0
description GStreamer is a library for constructing graphs of media-handling components.
long_description The applications it supports range from simple Ogg/Vorbis playback, audio/video \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,9 +28,9 @@ master_sites https://gstreamer.freedesktop.org/src/${my_name}/
</span> distname ${my_name}-${version}
use_xz yes
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 462f42568d295759a2cad043f86d908968d465d1 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 1e7124d347e8cdc80f08ec1d370c201be513002af1102bb20e83c5279cb48ebd \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 1797968
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 d9e80c9d6408ff759119c8fa18f89f93ca68a629 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 88fc3629a8cacf7955d8671b2ae867d4a52a07b6948daa25b67feed22f8055ef \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 1848676
</span>
set py_ver 3.12
set py_ver_nodot [string map {. {}} ${py_ver}]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -51,6 +56,13 @@ conflicts_build check
</span> patchfiles patch-gstreamer1-darwin-numcpufix-sysctl.diff \
patch-gst-gst-c-tiger-no-procpidpath.diff
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# Temorary fix until the upstream addresses the breakage.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3437
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 16} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0001-Revert-macos-Fix-gst_macos_main-terminating-whole-pr.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-patch {
reinplace "s|/usr/bin/env python3|${python.bin}|" \
${worksrcpath}/scripts/extract-release-date-from-doap-file.py \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -64,9 +76,10 @@ post-patch {
</span> configure.env-append PERL_PATH=${prefix}/bin/perl
configure.cflags-append -funroll-loops -fstrict-aliasing -fno-common
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[string match "*gcc-4.2" ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.cflags-append -std=c99
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Match blacklist used in gstreamer1-gst-plugins-base
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# error: redefinition of typedef ‘GstHarness’
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *gcc-3.* *gcc-4.* {clang < 212}
</span>
configure.args-append \
-Dexamples=disabled \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gnome/gstreamer1/files/0001-Revert-macos-Fix-gst_macos_main-terminating-whole-pr.patch b/gnome/gstreamer1/files/0001-Revert-macos-Fix-gst_macos_main-terminating-whole-pr.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..d528b8cf03a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gnome/gstreamer1/files/0001-Revert-macos-Fix-gst_macos_main-terminating-whole-pr.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,109 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 374d38961ce21d83ac3fab5fd002b0ed30cdddb5 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: Sun, 31 Mar 2024 05:44:38 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] Revert "macos: Fix gst_macos_main() terminating whole process
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ before returning a value"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+This reverts commit ffdec6bc2b4af5ddc6c52c7a6bff51949426b984.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ subprojects/gstreamer/gst/gstmacos.m | 61 ++--------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 3 insertions(+), 58 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git subprojects/gstreamer/gst/gstmacos.m subprojects/gstreamer/gst/gstmacos.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index dbdb1a70a3..b930bbb0f6 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gst/gstmacos.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gst/gstmacos.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9,37 +9,11 @@ struct _ThreadArgs {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ char **argv;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gpointer user_data;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gboolean is_simple;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- GMutex nsapp_mutex;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- GCond nsapp_cond;
</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;'>+-@interface GstCocoaApplicationDelegate : NSObject <NSApplicationDelegate>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@property (assign) GMutex *nsapp_mutex;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@property (assign) GCond *nsapp_cond;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@implementation GstCocoaApplicationDelegate
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- (void)applicationDidFinishLaunching:(NSNotification *)notification
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_mutex_lock (self.nsapp_mutex);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_cond_signal (self.nsapp_cond);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_mutex_unlock (self.nsapp_mutex);
</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;'>+-@end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gst_thread_func (ThreadArgs *args)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- /* Only proceed once NSApp is running, otherwise we could
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- * attempt to call [NSApp: stop] before it's even started. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_mutex_lock (&args->nsapp_mutex);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- while (![[NSRunningApplication currentApplication] isFinishedLaunching]) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_cond_wait (&args->nsapp_cond, &args->nsapp_mutex);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_mutex_unlock (&args->nsapp_mutex);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (args->is_simple) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ret = ((GstMainFuncSimple) args->main_func) (args->user_data);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -47,20 +21,7 @@ gst_thread_func (ThreadArgs *args)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ret = ((GstMainFunc) args->main_func) (args->argc, args->argv, args->user_data);
</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 a message so we'll break out of the message loop */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- NSEvent *event = [NSEvent otherEventWithType: NSEventTypeApplicationDefined
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- location: NSZeroPoint
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- modifierFlags: 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- timestamp: 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- windowNumber: 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- context: nil
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- subtype: NSEventSubtypeApplicationActivated
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- data1: 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- data2: 0];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- [NSApp postEvent:event atStart:YES];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- [NSApp stop:nil];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ [NSApp terminate: nil];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return ret;
</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;'>+@@ -68,31 +29,15 @@ int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ run_main_with_nsapp (ThreadArgs args)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GThread *gst_thread;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- GstCocoaApplicationDelegate* delegate;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- int result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_mutex_init (&args.nsapp_mutex);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_cond_init (&args.nsapp_cond);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- [NSApplication sharedApplication];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- delegate = [[GstCocoaApplicationDelegate alloc] init];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- delegate.nsapp_mutex = &args.nsapp_mutex;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- delegate.nsapp_cond = &args.nsapp_cond;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- [NSApp setDelegate:delegate];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- /* This lets us show an icon in the dock and correctly focus opened windows */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ [NSApplication sharedApplication];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if ([NSApp activationPolicy] == NSApplicationActivationPolicyProhibited) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [NSApp setActivationPolicy:NSApplicationActivationPolicyAccessory];
</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;'>+ gst_thread = g_thread_new ("macos-gst-thread", (GThreadFunc) gst_thread_func, &args);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [NSApp run];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- result = GPOINTER_TO_INT (g_thread_join (gst_thread));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_mutex_clear (&args.nsapp_mutex);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- g_cond_clear (&args.nsapp_cond);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return GPOINTER_TO_INT (g_thread_join (gst_thread));
</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></pre><pre style='margin:0'>
</pre>