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: d0527fca8f
PR: 284378
Reported by: huanghwh[at]gmail[dot]com
Tested by: eduardo, shamaz.mazum[at]gmail[dot]com (previous iterations)
This commit is contained in:
Charlie Li 2025-01-31 20:58:37 -05:00
parent 67f6dad969
commit 1eeaaa8e06
No known key found for this signature in database
GPG key ID: 678F936058415CCA
2 changed files with 17 additions and 3 deletions

View file

@ -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

View file

@ -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;
};