summaryrefslogtreecommitdiff
path: root/net-libs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-10-05 23:55:49 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-10-05 23:55:49 +0100
commit232a872b2d1f6ba60d91f3ee05b58a5f2449191c (patch)
treeae15ea04212051e03a43180ad961b257089d637d /net-libs
parent8679463887b182c233b55d8112534d7d7dcde08b (diff)
gentoo auto-resync : 05:10:2023 - 23:55:49
Diffstat (limited to 'net-libs')
-rw-r--r--net-libs/Manifest.gzbin32143 -> 32145 bytes
-rw-r--r--net-libs/srt/Manifest7
-rw-r--r--net-libs/srt/files/1.4.3-always-GNUInstallDirs.patch27
-rw-r--r--net-libs/srt/srt-1.5.1.ebuild2
-rw-r--r--net-libs/srt/srt-1.5.3.ebuild (renamed from net-libs/srt/srt-1.4.3.ebuild)27
-rw-r--r--net-libs/webkit-gtk/Manifest4
-rw-r--r--net-libs/webkit-gtk/webkit-gtk-2.42.1-r410.ebuild259
-rw-r--r--net-libs/webkit-gtk/webkit-gtk-2.42.1-r600.ebuild252
-rw-r--r--net-libs/webkit-gtk/webkit-gtk-2.42.1.ebuild249
9 files changed, 785 insertions, 42 deletions
diff --git a/net-libs/Manifest.gz b/net-libs/Manifest.gz
index 9a8affc5f4dd..cfc05c8a8764 100644
--- a/net-libs/Manifest.gz
+++ b/net-libs/Manifest.gz
Binary files differ
diff --git a/net-libs/srt/Manifest b/net-libs/srt/Manifest
index 891b5cd2b1c0..f1d67d2d62e1 100644
--- a/net-libs/srt/Manifest
+++ b/net-libs/srt/Manifest
@@ -1,6 +1,5 @@
-AUX 1.4.3-always-GNUInstallDirs.patch 885 BLAKE2B 84b6a78b6862d4b2302f087c6215b84a4dbf2cfa3b7388b54c63d7d4919a5af43834df32d56d53db04ea87e2aa4bbf1fcdd531ea1274e1135e360470d0ba7d88 SHA512 e4b42a1fbdd60bb34b08e406b950e892e5e1a8bcd32bde3097e2f044596cd31effa049aa12a70a9bf8482943c91fd68e9ba193dd02121849ac723ba21fd7677d
-DIST srt-1.4.3.tar.gz 1602671 BLAKE2B ed4ec46cab887461f6dccfc2d695fe78a3782f42f4ef6c3ac5ba6e2ea068a7943eb8079c0a448f35864c575009d556363bcfe7d815d0f47a368001a3df478837 SHA512 5cd15fd0c7b324226ab096c1b6c6f81b4ce5600617e1bd2c38985f18d7d551c9a4a09b1e34c7a705c92ae54bb57c5d736ca7eff6e4992e67666aa167e0da855f
DIST srt-1.5.1.tar.gz 1694199 BLAKE2B 4c215ef936100b02b3a5a9aab6e9a715ecdb728517b0648e91f2144bb34a34cb1573c4e6905441a366ea281c9410c2d00d5ebc64144f327f7a115d81038942af SHA512 f3aa1f7773540e2dd31cd19b124eec3c3d830f59c08d953cae01e129a58db7e639bdf94c8a5a678435ae9a1d2402e2c77196fc9c4e75b42aa37d8eafcc16f436
-EBUILD srt-1.4.3.ebuild 1149 BLAKE2B 5aa95e450810b954d4f5dbb36c78abdf974f7a7ed0057dfe300785f4625f7b505415c316034abd5c0052415083ff73a7601b75b598d3b03b9412b433e53de326 SHA512 56708ddf0cd5373620391bffea8069cd7c443e737c3c03dec463fa500706262a51fa105839638a9bf964673263dbc79659e6f40723d7e80068dde6681ff072e7
-EBUILD srt-1.5.1.ebuild 1291 BLAKE2B 759c5f5889abe929a0ba388a284db6a6a79a78c7665881d3121d359b37a7bb91d9f61e0e3fef352877edfe058b1b9746d508edd3b93bb8d922e1bfe1b1363e2b SHA512 c5aa8528b1ffe36da1fbb9014df1b0217af6b1a5f69c0969bc1ca871d8ac723121de102b929dc69c140714c8014aae347321fa0c1378fe7b25962b20debe4cc8
+DIST srt-1.5.3.tar.gz 1706632 BLAKE2B fd053782e58602ccd06690c5785b68ff20531afd890678fbd77660e376887b0886cc020d449e2669672748c3d1a515b56d9fd94670c33d085eadb961220a7431 SHA512 5b576d6fd325515e05074e4568e3b65d1ae265e3e971db6e6242e5138243fc1594df1e3a7d90962385dac38abc34c4c4b0a567439050f8c0ff818b3b3d497efc
+EBUILD srt-1.5.1.ebuild 1290 BLAKE2B 95a612435f3b31dc8ce89b14525ed4132a17cfd58bdefd7ec90e65cdd7a8ac597234ef8e40114d15dded247a7780b67450cc438b8bd5570c5dcb6bab1aa10792 SHA512 222743209282bf0b707d18a23df703fa7ead2a84c7b4244ee8b30952aaead1eefa383e57a6958350c00544e28a046e19b3cd09d156c6eff6b026653f7547b4ab
+EBUILD srt-1.5.3.ebuild 1504 BLAKE2B a23dc829ead9eb6c078394758b8593dc55a16476ba775817081e6b33edb7195ccf9492968e44939d135cff975d368e2ba10517c4c55a140d90d66c673ee134c3 SHA512 bdb617f900ddee9d2cb4515dbfefb2faca78d80074267f48079d653be997da755162dbe9557958dfedd359f76ba13a3f67a05c9895d668441c13bf54e4fd93e5
MISC metadata.xml 430 BLAKE2B cb25cf1d0a35ec35acab5ca8bb8fa3d074531c584a70b93f02765c8636a2908a10484bd8f9268bcaa64a2a2d23a12f87b5829249c484f8357dba3974553c2c20 SHA512 c2b853dc7bcb2883c24f2ec3d14d3589b57f0ac72bc7a5bba1d8ac46747d051aa02e24e9f86f758f5a1855ba4d1e6cdb9750ab7493be4c996d281aa269c1a390
diff --git a/net-libs/srt/files/1.4.3-always-GNUInstallDirs.patch b/net-libs/srt/files/1.4.3-always-GNUInstallDirs.patch
deleted file mode 100644
index f561d789af3f..000000000000
--- a/net-libs/srt/files/1.4.3-always-GNUInstallDirs.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 4036afdcd07083159d66c6e12caa20d6ac6d4926 Mon Sep 17 00:00:00 2001
-From: Mart Raudsepp <leio@gentoo.org>
-Date: Sat, 10 Jul 2021 15:02:35 +0300
-Subject: [PATCH] [build] Always use GNUInstallDirs
-
----
- CMakeLists.txt | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 25f34c8..fe23f90 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -47,9 +47,7 @@ set_if(SYMLINKABLE LINUX OR DARWIN OR BSD OR CYGWIN OR GNU)
- # inside "bin" and "lib64" directories. At least this maintains
- # the current status. Shall this be not desired, override values
- # of CMAKE_INSTALL_BINDIR, CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_INCLUDEDIR.
--if (NOT DEFINED CMAKE_INSTALL_LIBDIR)
-- include(GNUInstallDirs)
--endif()
-+include(GNUInstallDirs)
-
- # The CMAKE_BUILD_TYPE seems not to be always set, weird.
- if (NOT DEFINED ENABLE_DEBUG)
---
-2.32.0
-
diff --git a/net-libs/srt/srt-1.5.1.ebuild b/net-libs/srt/srt-1.5.1.ebuild
index 443c69eb9a49..9a90f0d612da 100644
--- a/net-libs/srt/srt-1.5.1.ebuild
+++ b/net-libs/srt/srt-1.5.1.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == *9999 ]] ; then
inherit git-r3
else
SRC_URI="https://github.com/Haivision/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ppc64 ~riscv -sparc x86 ~ppc-macos ~x64-macos"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv -sparc x86 ~ppc-macos ~x64-macos"
fi
LICENSE="MPL-2.0"
diff --git a/net-libs/srt/srt-1.4.3.ebuild b/net-libs/srt/srt-1.5.3.ebuild
index dfa02328aca0..5f4428d36247 100644
--- a/net-libs/srt/srt-1.4.3.ebuild
+++ b/net-libs/srt/srt-1.5.3.ebuild
@@ -1,7 +1,7 @@
-# Copyright 2018-2022 Gentoo Authors
+# Copyright 2018-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit cmake-multilib
@@ -13,12 +13,13 @@ if [[ ${PV} == *9999 ]] ; then
inherit git-r3
else
SRC_URI="https://github.com/Haivision/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv -sparc x86 ~ppc-macos ~x64-macos"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv -sparc ~x86 ~ppc-macos ~x64-macos"
fi
LICENSE="MPL-2.0"
-SLOT="0/1.4.3"
-IUSE="gnutls"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="gnutls test"
+RESTRICT="!test? ( test )"
RDEPEND="
gnutls? (
@@ -30,20 +31,26 @@ RDEPEND="
)
"
DEPEND="${RDEPEND}"
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}/${PV}-always-GNUInstallDirs.patch"
-)
+BDEPEND="virtual/pkgconfig
+ test? ( >=dev-cpp/gtest-1.10[${MULTILIB_USEDEP}] )"
src_configure() {
local mycmakeargs=(
+ -DUSE_CXX_STD=c++14 # Required for gtest
-DENABLE_STATIC=OFF
+ # Bonding is experimental in 1.5, but works good and doesn't affect anything when not enabled with API calls
+ -DENABLE_BONDING=ON
+ -DENABLE_UNITTESTS=$(usex test)
+ -DENABLE_TESTING=OFF # Not installed developer/testing tools
-DUSE_GNUTLS=$(usex gnutls)
)
cmake-multilib_src_configure
}
+multilib_src_test() {
+ cmake_src_test -j1
+}
+
multilib_src_install() {
cmake_src_install
# remove old upstream temporary compatibility pc
diff --git a/net-libs/webkit-gtk/Manifest b/net-libs/webkit-gtk/Manifest
index 1a723f845566..3fc77007873e 100644
--- a/net-libs/webkit-gtk/Manifest
+++ b/net-libs/webkit-gtk/Manifest
@@ -1,10 +1,14 @@
AUX 2.40.5-Fix-build-failure-when-gstreamer-support-is-disabled.patch 1059 BLAKE2B de9edffeb14808fc7b04339af660343e8faeb599254157cd31cca0ef7b012526c9d27e44fbb8c27881c3836d80b65493081fd314e891cd29af147242b4a863b2 SHA512 b7ece6ebd90cf6c04e26cae1a809d7ec3925405a17b709809648b216426d19bbacdd6810390927622f965c334a220c4614a98fe38514246cf445a415859bd2bd
DIST webkitgtk-2.40.5.tar.xz 40066432 BLAKE2B 67b8f429af8b746a256ca36c335c33ab4fef92a4699b09b87c38e81d56e0da7b5fb20d9e0dbbc32016025e60ca2c6e44d9032c300bfbdc931f4097d5608bb62f SHA512 a8c9f04e971e0464ea39a5d1dacb6251a08c5a851def21bfeb990beebb82d1a2a97e7cfc65ae3ed1f6fe76ac6f6463b1f64a6a2a341d266c381710dd84c4082a
DIST webkitgtk-2.42.0.tar.xz 40917832 BLAKE2B afaaef8482fe81645eee55be86a80fb51eff83dc000ac0dc5981d41810b5c72c59428d8e92a02c04718c0367ac19689501c81764f9603b767d7271ad9cd66075 SHA512 f71627182707f4ab34483a16b74d1519d7234833151ced818e54749f8ecb1f2956cc5d76e09957d07b727155c023e7b75426ad38ee955928fcac9e68d6304e2b
+DIST webkitgtk-2.42.1.tar.xz 38011772 BLAKE2B c6453cf2d15661507df66c5478e7675217b62d9579cf9b9408cb3e4fa1a8405c5c2608edf0960baed62aafa766e6cdbe2f0c07e8fb728d86c111f12d5a816492 SHA512 c7ff45e748a2a3d381db05c7f05b7515d8e4e771e703dab6d153cb32392ff64f63f7d4039701676180abb6fd718153e762ce8ca9aede2ecbe0dc4efde5ed660c
EBUILD webkit-gtk-2.40.5-r410.ebuild 8099 BLAKE2B 944259f71714a4b21081d8bff8e27e394ab708d76ee4d2e5bcb37e2615d127c810b54e9b01c727daa8f18894da049dd4cfa4f5f12a4368d5858d81f9476caff0 SHA512 ab8888a79c9d9b990b5b8c114fd17488a6f7762cab9f12c3f239b38a790011d69782475322f1315bce9fcab97b0496c1e89e5a5c876a770c6987c02f76a96446
EBUILD webkit-gtk-2.40.5-r600.ebuild 7988 BLAKE2B 2f9b8087eb25d576a3c6645b94ead0f39696ebd26456afbdece19b8258d935855fb31f9c7681318e179d5141b2403f643c92d91c62f1455c8959e4b756a83df3 SHA512 577b7b7e10d27075d73936df16f6d0b8014b41f34141ddc23335788bdf6aad87d6525a95b0b7819bab3cf79b544d6ed5e66c3c7e6c8337fb76063f1673ed8e0a
EBUILD webkit-gtk-2.40.5.ebuild 7825 BLAKE2B 08e9ad86b3dca85c4c9a728c4c7b7e0374c732f35949cc9441d1b24e50bae4e5e62602d94e9a4a34a10032ea63ae858487dd514b551a591eb311ef0f2ca1bf12 SHA512 1c4a274afcd91639eaa22862fc01594109b257688dcdc917e80cc71dc198ff3ba55d89a28fc925cc1e02b16c606bdde35f20a5d85e1994d348955cd8bdfc4c6d
EBUILD webkit-gtk-2.42.0-r410.ebuild 7864 BLAKE2B badfeea27811b31e8d47924f80a85c782ce597bf600e15879149a791825cd8a5c8b4d74f529cecd049f2f55ce737c8919d508ab78384ee2a77ae20bb0e52f0ab SHA512 11cbd27a7b7fa2dcd27e2f3c882dd4eb71f08a4e3fa4d43c5e94d0143592117b4b59df29096efc05060a1b32d8331c92e5a799392de26dca551336e000d323fc
EBUILD webkit-gtk-2.42.0-r600.ebuild 7761 BLAKE2B cf7ebd55993bd940d2010e9869b05df7312f6991cbc72b5e7c28287beb1176f6b592ae5641360eb3f6d2d9373df6e8a8adb6b0c833852aeb5e2f946830851490 SHA512 83d6783e92201d17883b44f3e349c313ce6617bb91a512b7cc24f4e8db85ea044e175ccc69af64bb39cd1a11cd08f64bad89b9f85250425b81a26084307384ed
EBUILD webkit-gtk-2.42.0.ebuild 7590 BLAKE2B 789c6146a91ffb4a2e472afaa6bdc72d569dd96374d9f644938ba6498eefb48cd8349ea1ced8d205c08b4b3f978752292610f570ec9244ffe2043d695414d3cb SHA512 4f4523c1d72440bc6929c66149af8a40296fb1e2eb2b7d3c4128b9a161468a6dfbac990f67de248204aa05d1be5b179e708be058a84c7c3843bb7b5876cea8cd
+EBUILD webkit-gtk-2.42.1-r410.ebuild 7864 BLAKE2B badfeea27811b31e8d47924f80a85c782ce597bf600e15879149a791825cd8a5c8b4d74f529cecd049f2f55ce737c8919d508ab78384ee2a77ae20bb0e52f0ab SHA512 11cbd27a7b7fa2dcd27e2f3c882dd4eb71f08a4e3fa4d43c5e94d0143592117b4b59df29096efc05060a1b32d8331c92e5a799392de26dca551336e000d323fc
+EBUILD webkit-gtk-2.42.1-r600.ebuild 7761 BLAKE2B cf7ebd55993bd940d2010e9869b05df7312f6991cbc72b5e7c28287beb1176f6b592ae5641360eb3f6d2d9373df6e8a8adb6b0c833852aeb5e2f946830851490 SHA512 83d6783e92201d17883b44f3e349c313ce6617bb91a512b7cc24f4e8db85ea044e175ccc69af64bb39cd1a11cd08f64bad89b9f85250425b81a26084307384ed
+EBUILD webkit-gtk-2.42.1.ebuild 7590 BLAKE2B 789c6146a91ffb4a2e472afaa6bdc72d569dd96374d9f644938ba6498eefb48cd8349ea1ced8d205c08b4b3f978752292610f570ec9244ffe2043d695414d3cb SHA512 4f4523c1d72440bc6929c66149af8a40296fb1e2eb2b7d3c4128b9a161468a6dfbac990f67de248204aa05d1be5b179e708be058a84c7c3843bb7b5876cea8cd
MISC metadata.xml 774 BLAKE2B 13bbabc7d1fa7b1f8218091a6c575d7e95a80904f1927bf2dff5ce499445a45f15329f0ee29d97b7f3e493d63595a6a8a7f65db808d1c2fbba74b48b94adc7fd SHA512 9032e0d2cf83f1c388ea66cc2b28e9db464f77a35f12dac94308096e6fd309df2080ebfd2d25da4a04e72266e1f68d4d7462657197f4765897570e1ef526148c
diff --git a/net-libs/webkit-gtk/webkit-gtk-2.42.1-r410.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.42.1-r410.ebuild
new file mode 100644
index 000000000000..007034b448c5
--- /dev/null
+++ b/net-libs/webkit-gtk/webkit-gtk-2.42.1-r410.ebuild
@@ -0,0 +1,259 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_REQ_USE="xml(+)"
+PYTHON_COMPAT=( python3_{10..12} )
+USE_RUBY="ruby30 ruby31 ruby32"
+
+inherit check-reqs flag-o-matic gnome2 optfeature python-any-r1 ruby-single toolchain-funcs cmake
+
+MY_P="webkitgtk-${PV}"
+DESCRIPTION="Open source web browser engine"
+HOMEPAGE="https://www.webkitgtk.org"
+SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
+
+LICENSE="LGPL-2+ BSD"
+SLOT="4.1/0" # soname version of libwebkit2gtk-4.1
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+IUSE="aqua avif examples gamepad keyring +gstreamer +introspection pdf +jpeg2k jpegxl +jumbo-build lcms seccomp spell systemd wayland X"
+REQUIRED_USE="|| ( aqua wayland X )"
+
+# Tests do not run when built from tarballs
+# https://bugs.webkit.org/show_bug.cgi?id=215986
+RESTRICT="test"
+
+# Dependencies found at Source/cmake/OptionsGTK.cmake
+# Missing WebRTC support, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is
+# experimental upstream (PRIVATE OFF) and shouldn't be used yet in 2.30
+# >=gst-plugins-opus-1.14.4-r1 for opusparse (required by MSE)
+# TODO: gst-plugins-base[X] is only needed when build configuration ends up
+# with GLX set, but that's a bit automagic too to fix
+# Softblocking webkit-gtk-2.38:4 as we going to use webkit-2.38:4.1's WebKitDriver binary
+RDEPEND="
+ >=x11-libs/cairo-1.16.0[X?]
+ >=media-libs/fontconfig-2.13.0:1.0
+ >=media-libs/freetype-2.9.0:2
+ >=dev-libs/libgcrypt-1.7.0:0=
+ >=x11-libs/gtk+-3.22.0:3[aqua?,introspection?,wayland?,X?]
+ >=media-libs/harfbuzz-1.4.2:=[icu(+)]
+ >=dev-libs/icu-61.2:=
+ media-libs/libjpeg-turbo:0=
+ >=media-libs/libepoxy-1.4.0
+ >=net-libs/libsoup-3.0.8:3.0[introspection?]
+ >=dev-libs/libxml2-2.8.0:2
+ >=media-libs/libpng-1.4:0=
+ dev-db/sqlite:3
+ sys-libs/zlib:0
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ media-libs/libwebp:=
+
+ >=dev-libs/glib-2.70.0:2
+ >=dev-libs/libxslt-1.1.7
+ media-libs/woff2
+ keyring? ( app-crypt/libsecret )
+ introspection? ( >=dev-libs/gobject-introspection-1.59.1:= )
+ dev-libs/libtasn1:=
+ spell? ( >=app-text/enchant-0.22:2 )
+ gstreamer? (
+ >=media-libs/gstreamer-1.20:1.0
+ >=media-libs/gst-plugins-base-1.20:1.0[egl,X?]
+ media-libs/gst-plugins-base:1.0[opengl]
+ >=media-plugins/gst-plugins-opus-1.20:1.0
+ >=media-libs/gst-plugins-bad-1.20:1.0
+ )
+
+ X? (
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXrender
+ x11-libs/libXt
+ )
+
+ dev-libs/hyphen
+ jpeg2k? ( >=media-libs/openjpeg-2.2.0:2= )
+ jpegxl? ( >=media-libs/libjxl-0.7.0 )
+ avif? ( >=media-libs/libavif-0.9.0:= )
+ lcms? ( media-libs/lcms:2 )
+
+ media-libs/mesa
+ media-libs/libglvnd
+ wayland? (
+ >=dev-libs/wayland-1.15
+ >=dev-libs/wayland-protocols-1.15
+ >=gui-libs/libwpe-1.5.0:1.0
+ >=gui-libs/wpebackend-fdo-1.7.0:1.0
+ )
+
+ seccomp? (
+ >=sys-apps/bubblewrap-0.3.1
+ sys-libs/libseccomp
+ sys-apps/xdg-dbus-proxy
+ )
+
+ systemd? ( sys-apps/systemd:= )
+ gamepad? ( >=dev-libs/libmanette-0.2.4 )
+ !<net-libs/webkit-gtk-2.38:4
+"
+DEPEND="${RDEPEND}"
+# Need real bison, not yacc
+BDEPEND="
+ ${PYTHON_DEPS}
+ ${RUBY_DEPS}
+ >=app-accessibility/at-spi2-core-2.5.3
+ dev-util/gdbus-codegen
+ dev-util/glib-utils
+ >=dev-util/gperf-3.0.1
+ dev-util/unifdef
+ >=sys-devel/bison-2.4.3
+ || ( >=sys-devel/gcc-7.3 >=sys-devel/clang-5 )
+ sys-devel/gettext
+ virtual/pkgconfig
+
+ >=dev-lang/perl-5.10
+ virtual/perl-Data-Dumper
+ virtual/perl-Carp
+ virtual/perl-JSON-PP
+"
+
+S="${WORKDIR}/${MY_P}"
+
+CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
+
+# We cannot use PATCHES because src_prepare() calls cmake_src_prepare and
+# gnome2_src_prepare, and both apply ${PATCHES[@]}
+PATCHES=()
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != "binary" ]] ; then
+ if is-flagq "-g*" && ! is-flagq "-g*0" ; then
+ einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
+ check-reqs_pkg_pretend
+ fi
+
+ if ! test-flag-CXX -std=c++17 ; then
+ die "You need at least GCC 7.3.x or Clang >= 5 for C++17-specific compiler flags"
+ fi
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
+ check-reqs_pkg_setup
+ fi
+
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # Respect CC, otherwise fails on prefix #395875
+ tc-export CC
+
+ # It does not compile on alpha without this in LDFLAGS
+ # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
+ use ia64 && append-ldflags "-Wl,--no-as-needed"
+
+ # Sigbuses on SPARC with mcpu and co., bug #???
+ use sparc && filter-flags "-mvis"
+
+ # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
+ use ppc64 && append-flags "-mminimal-toc"
+
+ # Try to use less memory, bug #469942 (see Fedora .spec for reference)
+ # --no-keep-memory doesn't work on ia64, bug #502492
+ if ! use ia64; then
+ append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory")
+ fi
+
+ # Ruby situation is a bit complicated. See bug 513888
+ local rubyimpl
+ local ruby_interpreter=""
+ local RUBY
+ for rubyimpl in ${USE_RUBY}; do
+ if has_version -b "virtual/rubygems[ruby_targets_${rubyimpl}(-)]"; then
+ RUBY="$(type -P ${rubyimpl})"
+ ruby_interpreter="-DRUBY_EXECUTABLE=${RUBY}"
+ fi
+ done
+ # This will rarely occur. Only a couple of corner cases could lead us to
+ # that failure. See bug 513888
+ [[ -z ${ruby_interpreter} ]] && die "No suitable ruby interpreter found"
+ # JavaScriptCore/Scripts/postprocess-asm invokes another Ruby script directly
+ # so it doesn't respect RUBY_EXECUTABLE, bug #771744.
+ sed -i -e "s:#!/usr/bin/env ruby:#!${RUBY}:" $(grep -rl "/usr/bin/env ruby" Source/JavaScriptCore || die) || die
+
+ # TODO: Check Web Audio support
+ # should somehow let user select between them?
+
+ local mycmakeargs=(
+ -DPython_EXECUTABLE="${PYTHON}"
+ ${ruby_interpreter}
+ # If bubblewrap[suid] then portage makes it go-r and cmake find_program fails with that
+ -DBWRAP_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/bwrap
+ -DDBUS_PROXY_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/xdg-dbus-proxy
+ -DPORT=GTK
+ # Source/cmake/WebKitFeatures.cmake
+ -DENABLE_API_TESTS=OFF
+ -DENABLE_BUBBLEWRAP_SANDBOX=$(usex seccomp)
+ -DENABLE_GAMEPAD=$(usex gamepad)
+ -DENABLE_MINIBROWSER=$(usex examples)
+ -DENABLE_PDFJS=$(usex pdf)
+ -DENABLE_GEOLOCATION=ON # Runtime optional (talks over dbus service)
+ -DENABLE_SPELLCHECK=$(usex spell)
+ -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build)
+ -DENABLE_VIDEO=$(usex gstreamer)
+ -DUSE_GSTREAMER_WEBRTC=$(usex gstreamer)
+ -DUSE_GSTREAMER_TRANSCODER=$(usex gstreamer)
+ -DENABLE_WEBDRIVER=ON
+ -DENABLE_WEBGL=ON
+ -DENABLE_WEB_AUDIO=$(usex gstreamer)
+ -DUSE_AVIF=$(usex avif)
+ # Source/cmake/OptionsGTK.cmake
+ -DENABLE_DOCUMENTATION=OFF
+ -DENABLE_INTROSPECTION=$(usex introspection)
+ -DENABLE_JOURNALD_LOG=$(usex systemd)
+ -DENABLE_QUARTZ_TARGET=$(usex aqua)
+ -DENABLE_WAYLAND_TARGET=$(usex wayland)
+ -DENABLE_X11_TARGET=$(usex X)
+ -DUSE_GBM=ON
+ -DUSE_GTK4=OFF
+ -DUSE_JPEGXL=$(usex jpegxl)
+ -DUSE_LCMS=$(usex lcms)
+ -DUSE_LIBHYPHEN=ON
+ -DUSE_LIBSECRET=$(usex keyring)
+ -DUSE_OPENGL_OR_ES=ON
+ -DUSE_OPENJPEG=$(usex jpeg2k)
+ -DUSE_SOUP2=OFF
+ -DUSE_WOFF2=ON
+ )
+
+ # https://bugs.gentoo.org/761238
+ append-cppflags -DNDEBUG
+
+ WK_USE_CCACHE=NO cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ insinto /usr/share/gtk-doc/html
+ # This will install API docs specific to webkit2gtk-4.1
+ doins -r "${S}"/Documentation/{jsc-glib,webkit2gtk,webkit2gtk-web-extension}-${SLOT%/*}
+}
+
+pkg_postinst() {
+ optfeature "geolocation service (used at runtime if available)" "app-misc/geoclue"
+ optfeature "Common Multimedia codecs" "media-plugins/gst-plugins-meta"
+ optfeature "(MPEG-)DASH support" "media-plugins/gst-plugins-dash"
+ optfeature "HTTP-Live-Streaming support" "media-plugins/gst-plugins-hls"
+}
diff --git a/net-libs/webkit-gtk/webkit-gtk-2.42.1-r600.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.42.1-r600.ebuild
new file mode 100644
index 000000000000..c3f8c3afb610
--- /dev/null
+++ b/net-libs/webkit-gtk/webkit-gtk-2.42.1-r600.ebuild
@@ -0,0 +1,252 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_REQ_USE="xml(+)"
+PYTHON_COMPAT=( python3_{10..12} )
+USE_RUBY="ruby30 ruby31 ruby32"
+
+inherit check-reqs flag-o-matic gnome2 optfeature python-any-r1 ruby-single toolchain-funcs cmake
+
+MY_P="webkitgtk-${PV}"
+DESCRIPTION="Open source web browser engine"
+HOMEPAGE="https://www.webkitgtk.org"
+SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
+
+LICENSE="LGPL-2+ BSD"
+SLOT="6/0" # soname version of libwebkit2gtk-6.0
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+IUSE="aqua avif examples gamepad keyring +gstreamer +introspection pdf +jpeg2k jpegxl +jumbo-build lcms seccomp spell systemd wayland X"
+REQUIRED_USE="|| ( aqua wayland X )"
+
+# Tests do not run when built from tarballs
+# https://bugs.webkit.org/show_bug.cgi?id=215986
+RESTRICT="test"
+
+# Dependencies found at Source/cmake/OptionsGTK.cmake
+# Missing WebRTC support, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is
+# experimental upstream (PRIVATE OFF) and shouldn't be used yet in 2.30
+# >=gst-plugins-opus-1.14.4-r1 for opusparse (required by MSE)
+# TODO: gst-plugins-base[X] is only needed when build configuration ends up
+# with GLX set, but that's a bit automagic too to fix
+# Softblocking webkit-gtk-2.38:4 as we going to use webkit-2.38:4.1's WebKitDriver binary
+RDEPEND="
+ >=x11-libs/cairo-1.16.0[X?]
+ >=media-libs/fontconfig-2.13.0:1.0
+ >=media-libs/freetype-2.9.0:2
+ >=dev-libs/libgcrypt-1.7.0:0=
+ >=x11-libs/gtk+-3.22.0:3[aqua?,introspection?,wayland?,X?]
+ >=gui-libs/gtk-4.4.0:4[introspection?]
+ >=media-libs/harfbuzz-1.4.2:=[icu(+)]
+ >=dev-libs/icu-61.2:=
+ media-libs/libjpeg-turbo:0=
+ >=media-libs/libepoxy-1.4.0
+ >=net-libs/libsoup-3.0.8:3.0[introspection?]
+ >=dev-libs/libxml2-2.8.0:2
+ >=media-libs/libpng-1.4:0=
+ dev-db/sqlite:3
+ sys-libs/zlib:0
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ media-libs/libwebp:=
+
+ >=dev-libs/glib-2.70.0:2
+ >=dev-libs/libxslt-1.1.7
+ media-libs/woff2
+ keyring? ( app-crypt/libsecret )
+ introspection? ( >=dev-libs/gobject-introspection-1.59.1:= )
+ dev-libs/libtasn1:=
+ spell? ( >=app-text/enchant-0.22:2 )
+ gstreamer? (
+ >=media-libs/gstreamer-1.20:1.0
+ >=media-libs/gst-plugins-base-1.20:1.0[egl,X?]
+ media-libs/gst-plugins-base:1.0[opengl]
+ >=media-plugins/gst-plugins-opus-1.20:1.0
+ >=media-libs/gst-plugins-bad-1.20:1.0
+ )
+
+ X? (
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXrender
+ x11-libs/libXt
+ )
+
+ dev-libs/hyphen
+ jpeg2k? ( >=media-libs/openjpeg-2.2.0:2= )
+ jpegxl? ( >=media-libs/libjxl-0.7.0 )
+ avif? ( >=media-libs/libavif-0.9.0:= )
+ lcms? ( media-libs/lcms:2 )
+
+ media-libs/mesa
+ media-libs/libglvnd
+ wayland? (
+ >=dev-libs/wayland-1.15
+ >=dev-libs/wayland-protocols-1.15
+ >=gui-libs/libwpe-1.5.0:1.0
+ >=gui-libs/wpebackend-fdo-1.7.0:1.0
+ )
+
+ seccomp? (
+ >=sys-apps/bubblewrap-0.3.1
+ sys-libs/libseccomp
+ sys-apps/xdg-dbus-proxy
+ )
+
+ systemd? ( sys-apps/systemd:= )
+ gamepad? ( >=dev-libs/libmanette-0.2.4 )
+ !<net-libs/webkit-gtk-2.38:4
+"
+DEPEND="${RDEPEND}"
+# Need real bison, not yacc
+BDEPEND="
+ ${PYTHON_DEPS}
+ ${RUBY_DEPS}
+ >=app-accessibility/at-spi2-core-2.5.3
+ dev-util/gdbus-codegen
+ dev-util/glib-utils
+ >=dev-util/gperf-3.0.1
+ dev-util/unifdef
+ >=sys-devel/bison-2.4.3
+ || ( >=sys-devel/gcc-7.3 >=sys-devel/clang-5 )
+ sys-devel/gettext
+ virtual/pkgconfig
+
+ >=dev-lang/perl-5.10
+ virtual/perl-Data-Dumper
+ virtual/perl-Carp
+ virtual/perl-JSON-PP
+"
+
+S="${WORKDIR}/${MY_P}"
+
+CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
+
+# We cannot use PATCHES because src_prepare() calls cmake_src_prepare and
+# gnome2_src_prepare, and both apply ${PATCHES[@]}
+PATCHES=()
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != "binary" ]] ; then
+ if is-flagq "-g*" && ! is-flagq "-g*0" ; then
+ einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
+ check-reqs_pkg_pretend
+ fi
+
+ if ! test-flag-CXX -std=c++17 ; then
+ die "You need at least GCC 7.3.x or Clang >= 5 for C++17-specific compiler flags"
+ fi
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
+ check-reqs_pkg_setup
+ fi
+
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # Respect CC, otherwise fails on prefix #395875
+ tc-export CC
+
+ # It does not compile on alpha without this in LDFLAGS
+ # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
+ use ia64 && append-ldflags "-Wl,--no-as-needed"
+
+ # Sigbuses on SPARC with mcpu and co., bug #???
+ use sparc && filter-flags "-mvis"
+
+ # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
+ use ppc64 && append-flags "-mminimal-toc"
+
+ # Try to use less memory, bug #469942 (see Fedora .spec for reference)
+ # --no-keep-memory doesn't work on ia64, bug #502492
+ if ! use ia64; then
+ append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory")
+ fi
+
+ # Ruby situation is a bit complicated. See bug 513888
+ local rubyimpl
+ local ruby_interpreter=""
+ local RUBY
+ for rubyimpl in ${USE_RUBY}; do
+ if has_version -b "virtual/rubygems[ruby_targets_${rubyimpl}(-)]"; then
+ RUBY="$(type -P ${rubyimpl})"
+ ruby_interpreter="-DRUBY_EXECUTABLE=${RUBY}"
+ fi
+ done
+ # This will rarely occur. Only a couple of corner cases could lead us to
+ # that failure. See bug 513888
+ [[ -z ${ruby_interpreter} ]] && die "No suitable ruby interpreter found"
+ # JavaScriptCore/Scripts/postprocess-asm invokes another Ruby script directly
+ # so it doesn't respect RUBY_EXECUTABLE, bug #771744.
+ sed -i -e "s:#!/usr/bin/env ruby:#!${RUBY}:" $(grep -rl "/usr/bin/env ruby" Source/JavaScriptCore || die) || die
+
+ # TODO: Check Web Audio support
+ # should somehow let user select between them?
+
+ local mycmakeargs=(
+ -DPython_EXECUTABLE="${PYTHON}"
+ ${ruby_interpreter}
+ # If bubblewrap[suid] then portage makes it go-r and cmake find_program fails with that
+ -DBWRAP_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/bwrap
+ -DDBUS_PROXY_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/xdg-dbus-proxy
+ -DPORT=GTK
+ # Source/cmake/WebKitFeatures.cmake
+ -DENABLE_API_TESTS=OFF
+ -DENABLE_BUBBLEWRAP_SANDBOX=$(usex seccomp)
+ -DENABLE_GAMEPAD=$(usex gamepad)
+ -DENABLE_MINIBROWSER=$(usex examples)
+ -DENABLE_PDFJS=$(usex pdf)
+ -DENABLE_GEOLOCATION=ON # Runtime optional (talks over dbus service)
+ -DENABLE_SPELLCHECK=$(usex spell)
+ -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build)
+ -DENABLE_VIDEO=$(usex gstreamer)
+ -DUSE_GSTREAMER_WEBRTC=$(usex gstreamer)
+ -DUSE_GSTREAMER_TRANSCODER=$(usex gstreamer)
+ -DENABLE_WEBDRIVER=OFF # Disable WebDriver for webkit2gtk-5.0 and use the webkit2gtk-4.1
+ -DENABLE_WEBGL=ON
+ -DENABLE_WEB_AUDIO=$(usex gstreamer)
+ -DUSE_AVIF=$(usex avif)
+ # Source/cmake/OptionsGTK.cmake
+ -DENABLE_DOCUMENTATION=OFF
+ -DENABLE_INTROSPECTION=$(usex introspection)
+ -DENABLE_JOURNALD_LOG=$(usex systemd)
+ -DENABLE_QUARTZ_TARGET=$(usex aqua)
+ -DENABLE_WAYLAND_TARGET=$(usex wayland)
+ -DENABLE_X11_TARGET=$(usex X)
+ -DUSE_GBM=ON
+ -DUSE_GTK4=ON # webkit2gtk-6.0
+ -DUSE_JPEGXL=$(usex jpegxl)
+ -DUSE_LCMS=$(usex lcms)
+ -DUSE_LIBHYPHEN=ON
+ -DUSE_LIBSECRET=$(usex keyring)
+ -DUSE_OPENGL_OR_ES=ON
+ -DUSE_OPENJPEG=$(usex jpeg2k)
+ -DUSE_SOUP2=OFF
+ -DUSE_WOFF2=ON
+ )
+
+ # https://bugs.gentoo.org/761238
+ append-cppflags -DNDEBUG
+
+ WK_USE_CCACHE=NO cmake_src_configure
+}
+
+pkg_postinst() {
+ optfeature "geolocation service (used at runtime if available)" "app-misc/geoclue"
+ optfeature "Common Multimedia codecs" "media-plugins/gst-plugins-meta"
+ optfeature "(MPEG-)DASH support" "media-plugins/gst-plugins-dash"
+ optfeature "HTTP-Live-Streaming support" "media-plugins/gst-plugins-hls"
+}
diff --git a/net-libs/webkit-gtk/webkit-gtk-2.42.1.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.42.1.ebuild
new file mode 100644
index 000000000000..ff1b87b91e12
--- /dev/null
+++ b/net-libs/webkit-gtk/webkit-gtk-2.42.1.ebuild
@@ -0,0 +1,249 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_REQ_USE="xml(+)"
+PYTHON_COMPAT=( python3_{10..12} )
+USE_RUBY="ruby30 ruby31 ruby32"
+
+inherit check-reqs flag-o-matic gnome2 optfeature python-any-r1 ruby-single toolchain-funcs cmake
+
+MY_P="webkitgtk-${PV}"
+DESCRIPTION="Open source web browser engine"
+HOMEPAGE="https://www.webkitgtk.org"
+SRC_URI="https://www.webkitgtk.org/releases/${MY_P}.tar.xz"
+
+LICENSE="LGPL-2+ BSD"
+SLOT="4/37" # soname version of libwebkit2gtk-4.0
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+IUSE="aqua avif examples gamepad keyring +gstreamer +introspection pdf +jpeg2k jpegxl +jumbo-build lcms seccomp spell systemd wayland X"
+REQUIRED_USE="|| ( aqua wayland X )"
+
+# Tests do not run when built from tarballs
+# https://bugs.webkit.org/show_bug.cgi?id=215986
+RESTRICT="test"
+
+# Dependencies found at Source/cmake/OptionsGTK.cmake
+# Missing WebRTC support, but ENABLE_MEDIA_STREAM/ENABLE_WEB_RTC is
+# experimental upstream (PRIVATE OFF) and shouldn't be used yet in 2.30
+# >=gst-plugins-opus-1.14.4-r1 for opusparse (required by MSE)
+# TODO: gst-plugins-base[X] is only needed when build configuration ends up
+# with GLX set, but that's a bit automagic too to fix
+RDEPEND="
+ >=x11-libs/cairo-1.16.0[X?]
+ >=media-libs/fontconfig-2.13.0:1.0
+ >=media-libs/freetype-2.9.0:2
+ >=dev-libs/libgcrypt-1.7.0:0=
+ >=x11-libs/gtk+-3.22.0:3[aqua?,introspection?,wayland?,X?]
+ >=media-libs/harfbuzz-1.4.2:=[icu(+)]
+ >=dev-libs/icu-61.2:=
+ media-libs/libjpeg-turbo:0=
+ >=media-libs/libepoxy-1.4.0
+ >=net-libs/libsoup-2.54:2.4[introspection?]
+ >=dev-libs/libxml2-2.8.0:2
+ >=media-libs/libpng-1.4:0=
+ dev-db/sqlite:3
+ sys-libs/zlib:0
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ media-libs/libwebp:=
+
+ >=dev-libs/glib-2.70.0:2
+ >=dev-libs/libxslt-1.1.7
+ media-libs/woff2
+ keyring? ( app-crypt/libsecret )
+ introspection? ( >=dev-libs/gobject-introspection-1.59.1:= )
+ dev-libs/libtasn1:=
+ spell? ( >=app-text/enchant-0.22:2 )
+ gstreamer? (
+ >=media-libs/gstreamer-1.20:1.0
+ >=media-libs/gst-plugins-base-1.20:1.0[egl,X?]
+ media-libs/gst-plugins-base:1.0[opengl]
+ >=media-plugins/gst-plugins-opus-1.20:1.0
+ >=media-libs/gst-plugins-bad-1.20:1.0
+ )
+
+ X? (
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXrender
+ x11-libs/libXt
+ )
+
+ dev-libs/hyphen
+ jpeg2k? ( >=media-libs/openjpeg-2.2.0:2= )
+ jpegxl? ( >=media-libs/libjxl-0.7.0 )
+ avif? ( >=media-libs/libavif-0.9.0:= )
+ lcms? ( media-libs/lcms:2 )
+
+ media-libs/mesa
+ media-libs/libglvnd
+ wayland? (
+ >=dev-libs/wayland-1.15
+ >=dev-libs/wayland-protocols-1.15
+ >=gui-libs/libwpe-1.5.0:1.0
+ >=gui-libs/wpebackend-fdo-1.7.0:1.0
+ )
+
+ seccomp? (
+ >=sys-apps/bubblewrap-0.3.1
+ sys-libs/libseccomp
+ sys-apps/xdg-dbus-proxy
+ )
+
+ systemd? ( sys-apps/systemd:= )
+ gamepad? ( >=dev-libs/libmanette-0.2.4 )
+"
+DEPEND="${RDEPEND}"
+# Need real bison, not yacc
+BDEPEND="
+ ${PYTHON_DEPS}
+ ${RUBY_DEPS}
+ >=app-accessibility/at-spi2-core-2.5.3
+ dev-util/gdbus-codegen
+ dev-util/glib-utils
+ >=dev-util/gperf-3.0.1
+ dev-util/unifdef
+ >=sys-devel/bison-2.4.3
+ || ( >=sys-devel/gcc-7.3 >=sys-devel/clang-5 )
+ sys-devel/gettext
+ virtual/pkgconfig
+
+ >=dev-lang/perl-5.10
+ virtual/perl-Data-Dumper
+ virtual/perl-Carp
+ virtual/perl-JSON-PP
+"
+
+S="${WORKDIR}/${MY_P}"
+
+CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
+
+# We cannot use PATCHES because src_prepare() calls cmake_src_prepare and
+# gnome2_src_prepare, and both apply ${PATCHES[@]}
+PATCHES=()
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != "binary" ]] ; then
+ if is-flagq "-g*" && ! is-flagq "-g*0" ; then
+ einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
+ check-reqs_pkg_pretend
+ fi
+
+ if ! test-flag-CXX -std=c++17 ; then
+ die "You need at least GCC 7.3.x or Clang >= 5 for C++17-specific compiler flags"
+ fi
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
+ check-reqs_pkg_setup
+ fi
+
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # Respect CC, otherwise fails on prefix #395875
+ tc-export CC
+
+ # It does not compile on alpha without this in LDFLAGS
+ # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648761
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # ld segfaults on ia64 with LDFLAGS --as-needed, bug #555504
+ use ia64 && append-ldflags "-Wl,--no-as-needed"
+
+ # Sigbuses on SPARC with mcpu and co., bug #???
+ use sparc && filter-flags "-mvis"
+
+ # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
+ use ppc64 && append-flags "-mminimal-toc"
+
+ # Try to use less memory, bug #469942 (see Fedora .spec for reference)
+ # --no-keep-memory doesn't work on ia64, bug #502492
+ if ! use ia64; then
+ append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory")
+ fi
+
+ # Ruby situation is a bit complicated. See bug 513888
+ local rubyimpl
+ local ruby_interpreter=""
+ local RUBY
+ for rubyimpl in ${USE_RUBY}; do
+ if has_version -b "virtual/rubygems[ruby_targets_${rubyimpl}(-)]"; then
+ RUBY="$(type -P ${rubyimpl})"
+ ruby_interpreter="-DRUBY_EXECUTABLE=${RUBY}"
+ fi
+ done
+ # This will rarely occur. Only a couple of corner cases could lead us to
+ # that failure. See bug 513888
+ [[ -z ${ruby_interpreter} ]] && die "No suitable ruby interpreter found"
+ # JavaScriptCore/Scripts/postprocess-asm invokes another Ruby script directly
+ # so it doesn't respect RUBY_EXECUTABLE, bug #771744.
+ sed -i -e "s:#!/usr/bin/env ruby:#!${RUBY}:" $(grep -rl "/usr/bin/env ruby" Source/JavaScriptCore || die) || die
+
+ # TODO: Check Web Audio support
+ # should somehow let user select between them?
+
+ local mycmakeargs=(
+ -DPython_EXECUTABLE="${PYTHON}"
+ ${ruby_interpreter}
+ # If bubblewrap[suid] then portage makes it go-r and cmake find_program fails with that
+ -DBWRAP_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/bwrap
+ -DDBUS_PROXY_EXECUTABLE:FILEPATH="${EPREFIX}"/usr/bin/xdg-dbus-proxy
+ -DPORT=GTK
+ # Source/cmake/WebKitFeatures.cmake
+ -DENABLE_API_TESTS=OFF
+ -DENABLE_BUBBLEWRAP_SANDBOX=$(usex seccomp)
+ -DENABLE_GAMEPAD=$(usex gamepad)
+ -DENABLE_MINIBROWSER=$(usex examples)
+ -DENABLE_PDFJS=$(usex pdf)
+ -DENABLE_GEOLOCATION=ON # Runtime optional (talks over dbus service)
+ -DENABLE_SPELLCHECK=$(usex spell)
+ -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build)
+ -DENABLE_VIDEO=$(usex gstreamer)
+ -DUSE_GSTREAMER_WEBRTC=$(usex gstreamer)
+ -DUSE_GSTREAMER_TRANSCODER=$(usex gstreamer)
+ -DENABLE_WEBDRIVER=OFF # Disable WebDriver for webkit2gtk-4.0 and use the webkit2gtk-4.1
+ -DENABLE_WEBGL=ON
+ -DENABLE_WEB_AUDIO=$(usex gstreamer)
+ -DUSE_AVIF=$(usex avif)
+ # Source/cmake/OptionsGTK.cmake
+ -DENABLE_DOCUMENTATION=OFF
+ -DENABLE_INTROSPECTION=$(usex introspection)
+ -DENABLE_JOURNALD_LOG=$(usex systemd)
+ -DENABLE_QUARTZ_TARGET=$(usex aqua)
+ -DENABLE_WAYLAND_TARGET=$(usex wayland)
+ -DENABLE_X11_TARGET=$(usex X)
+ -DUSE_GBM=ON
+ -DUSE_GTK4=OFF
+ -DUSE_JPEGXL=$(usex jpegxl)
+ -DUSE_LCMS=$(usex lcms)
+ -DUSE_LIBHYPHEN=ON
+ -DUSE_LIBSECRET=$(usex keyring)
+ -DUSE_OPENGL_OR_ES=ON
+ -DUSE_OPENJPEG=$(usex jpeg2k)
+ -DUSE_SOUP2=ON
+ -DUSE_WOFF2=ON
+ )
+
+ # https://bugs.gentoo.org/761238
+ append-cppflags -DNDEBUG
+
+ WK_USE_CCACHE=NO cmake_src_configure
+}
+
+pkg_postinst() {
+ optfeature "geolocation service (used at runtime if available)" "app-misc/geoclue"
+ optfeature "Common Multimedia codecs" "media-plugins/gst-plugins-meta"
+ optfeature "(MPEG-)DASH support" "media-plugins/gst-plugins-dash"
+ optfeature "HTTP-Live-Streaming support" "media-plugins/gst-plugins-hls"
+}