git: 1eeaaa8e0634 - main - www/webkit2-gtk: remove byteRangeSample from PlatformSample

From: Charlie Li <vishwin_at_FreeBSD.org>
Date: Sat, 01 Feb 2025 02:53:32 UTC
The branch main has been updated by vishwin:

URL: https://cgit.FreeBSD.org/ports/commit/?id=1eeaaa8e063450d0eb8f08df33a6ba338c348825

commit 1eeaaa8e063450d0eb8f08df33a6ba338c348825
Author:     Charlie Li <vishwin@FreeBSD.org>
AuthorDate: 2025-02-01 01:58:37 +0000
Commit:     Charlie Li <vishwin@FreeBSD.org>
CommitDate: 2025-02-01 01:58:37 +0000

    www/webkit2-gtk: remove byteRangeSample from PlatformSample
    
    The presence of this union member causes the build to fail with our
    libc++ because version 1 ABI's std::pair does not have a trivial
    copy constructor (see D35327). However this code is only used for
    a deprecated plugin only for macOS, and it along with supporting
    code like this have been removed in the main branch upstream, so
    this should hold in the upcoming 2.48 series. For now, only remove
    byteRangeSample as the complete upstream commit does not apply.
    
    This allows the port to return to using the base system toolchain,
    including libc++, fixing crashes from mangling libc++-built
    dependencies with libstdc++ webkitgtk. While here, remove some
    unused USE_X11 depends to save another PORTREVISION bump.
    
    Reference: https://github.com/WebKit/WebKit/commit/d0527fca8fc20cdda907dfdc293323d7283bd262
    PR: 284378
    Reported by: huanghwh[at]gmail[dot]com
    Tested by: eduardo, shamaz.mazum[at]gmail[dot]com (previous iterations)
---
 www/webkit2-gtk/Makefile                                  |  5 ++---
 .../files/patch-Source_WebCore_platform_MediaSample.h     | 15 +++++++++++++++
 2 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/www/webkit2-gtk/Makefile b/www/webkit2-gtk/Makefile
index ec27b67877c9..e246fcc97cbe 100644
--- a/www/webkit2-gtk/Makefile
+++ b/www/webkit2-gtk/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	webkit
 DISTVERSION=	2.46.5
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	www
 MASTER_SITES=	https://webkitgtk.org/releases/
 PKGNAMESUFFIX=	2-gtk_${FLAVOR}
@@ -52,9 +52,8 @@ USES=		bison cmake compiler:c++23-lang cpe gettext gl gnome gperf \
 USE_GNOME=	cairo gdkpixbuf2 introspection:build libxml2 libxslt
 USE_GL=		egl gbm gl glesv2
 USE_LDCONFIG=	yes
-USE_GCC=	yes
 USE_PERL5=	build
-USE_XORG=	ice x11 xcomposite xdamage xext xrender xt
+USE_XORG=	x11
 
 CPE_VENDOR=	webkitgtk
 CPE_PRODUCT=	webkitgtk
diff --git a/www/webkit2-gtk/files/patch-Source_WebCore_platform_MediaSample.h b/www/webkit2-gtk/files/patch-Source_WebCore_platform_MediaSample.h
new file mode 100644
index 000000000000..fdea480049b4
--- /dev/null
+++ b/www/webkit2-gtk/files/patch-Source_WebCore_platform_MediaSample.h
@@ -0,0 +1,15 @@
+Subset of:
+https://bugs.webkit.org/show_bug.cgi?id=278596
+https://github.com/WebKit/WebKit/pull/32665
+https://commits.webkit.org/282704@main
+
+--- Source/WebCore/platform/MediaSample.h.orig	2024-08-19 06:28:39 UTC
++++ Source/WebCore/platform/MediaSample.h
+@@ -63,7 +63,6 @@ struct PlatformSample {
+         const MockSampleBox* mockSampleBox;
+         CMSampleBufferRef cmSampleBuffer;
+         GstSample* gstSample;
+-        std::pair<MTPluginByteSourceRef, std::reference_wrapper<const TrackInfo>> byteRangeSample;
+     } sample;
+ };
+