From 38ecaf88ae0891dd2d7f2bdd9a7acdcd45835724 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 4 Dec 2024 02:07:22 +0000 Subject: gentoo auto-resync : 04:12:2024 - 02:07:22 --- net-libs/Manifest.gz | Bin 30692 -> 30693 bytes net-libs/webkit-gtk/Manifest | 8 +- net-libs/webkit-gtk/webkit-gtk-2.46.3-r410.ebuild | 256 -------------------- net-libs/webkit-gtk/webkit-gtk-2.46.3-r600.ebuild | 275 ---------------------- net-libs/webkit-gtk/webkit-gtk-2.46.3.ebuild | 256 -------------------- net-libs/webkit-gtk/webkit-gtk-2.46.4-r410.ebuild | 253 ++++++++++++++++++++ net-libs/webkit-gtk/webkit-gtk-2.46.4-r600.ebuild | 272 +++++++++++++++++++++ net-libs/webkit-gtk/webkit-gtk-2.46.4.ebuild | 253 ++++++++++++++++++++ 8 files changed, 782 insertions(+), 791 deletions(-) delete mode 100644 net-libs/webkit-gtk/webkit-gtk-2.46.3-r410.ebuild delete mode 100644 net-libs/webkit-gtk/webkit-gtk-2.46.3-r600.ebuild delete mode 100644 net-libs/webkit-gtk/webkit-gtk-2.46.3.ebuild create mode 100644 net-libs/webkit-gtk/webkit-gtk-2.46.4-r410.ebuild create mode 100644 net-libs/webkit-gtk/webkit-gtk-2.46.4-r600.ebuild create mode 100644 net-libs/webkit-gtk/webkit-gtk-2.46.4.ebuild (limited to 'net-libs') diff --git a/net-libs/Manifest.gz b/net-libs/Manifest.gz index 625db163943c..04040345ff49 100644 Binary files a/net-libs/Manifest.gz and b/net-libs/Manifest.gz differ diff --git a/net-libs/webkit-gtk/Manifest b/net-libs/webkit-gtk/Manifest index b3d2590c8e68..691279811b3a 100644 --- a/net-libs/webkit-gtk/Manifest +++ b/net-libs/webkit-gtk/Manifest @@ -1,11 +1,11 @@ AUX 2.44.1-non-unified-build-fixes.patch 11799 BLAKE2B 6928f61428c4bc6594a46f7427e644143b071c39cc7405b143d693f956631519860efd958dd928f55c1e6139334966fd6bb92e42594c7b7b9b11236d5b0154f2 SHA512 c3ee1b48bebe8c6e504b6d15277b67261cceffa9790a212972f2d0ffd32d68c60c96373a2fecc0af9c6400114ecc84130bb23d81d03e08473b60eaadc3df9802 AUX 2.44.4-fix-icu76.1.patch 1215 BLAKE2B 0d4aa869b52eb6579ff58421982e80f02077e064988b30887af9d7da5a1c31bb652fdc406fbfe4e0895cd4c4e0e67b2cc4e363e8d8c60aac5d5683808fd52080 SHA512 356051853ce56e040aed620a6cb68dba75c2387ed396cfea85c2fcd5e51998a31ea2e2eca5305d9aa99b66f6f8ea7e8983851c77ca654a97ec3b3ecce8bd651c DIST webkitgtk-2.44.4.tar.xz 35858056 BLAKE2B 9e3d016bfb2b4e80d2ebeda95e75f8ec8b909b41b17a879d3e1119ed66e3bf4d590a22ed814bb1572dac8d8a8838bb37b5ab1372121b276e02ee8925f6c5b00c SHA512 037ef6a9faca68b68dc62927a475134450493129043ea6cc03595cd4a684d590f80a1e9c3ed40a9176874ba43fc9efbc5065a264dfe131ebd72e272756612db9 -DIST webkitgtk-2.46.3.tar.xz 42820196 BLAKE2B 5a842aaece518bc5754dac0da53a169b1438f6811f55978de4718ddf89d603d56c5c3615386af3a5e921feacb0c843383077acc688b4d33cd75d426760559028 SHA512 efec6e92bbea3379cf3bd1aff7d91aee3f028dcd1bcfbe7120d5ded30ada1541469fc5cd7897cb375e03a55e59d268f915c2a35345a84192b14971ac4339719f +DIST webkitgtk-2.46.4.tar.xz 42899016 BLAKE2B df837d4acf53fc404e0ed4de074756c9585238cb8696f4627a7c720bc8d9bff7483ae19b41f564044ebe4bfc8ce0a8673c3773a8f2fe8cea689c214f62f4a645 SHA512 9f3967524ef2ca3242609d4e49e773d33bb944f109a6fbf30d2cc3179eb563df59044b2bc627bcdc9991e09e9d3041b9dc5c22c857227385508ada6276829e29 EBUILD webkit-gtk-2.44.4-r410.ebuild 7909 BLAKE2B 2c547c9f14882583fdf020a450dc84d1584205ba4d659b07fde44cc2c21916ae37ec64db77148261dd700ec07d203d3322f97e864dc87bacd3688846c482116c SHA512 1ea30d126cc5ca5d57dd5a101572dd0f570121a0a3dd002c36c87e8ce977063ad2ec9d6a2e84fb9d1ba319f54bb882f2d423155311d3fdf1ecd1db5f605c1b4c EBUILD webkit-gtk-2.44.4-r600.ebuild 8650 BLAKE2B 91c5240a65bd29376f36d56783b600159722b1f0686d69ed2ad9551d8872e9495f59a5e38203a0c279527e643948048f35ee7f08edf0993bae519e229d14d71c SHA512 7a8904c9755d768021f8840db35f0658de9580257df0b62b92d5a6d995c80fe1aaf976059c6232d3cdf12957aa48e02708d25ce6eab40d6f5049023b880c02dd EBUILD webkit-gtk-2.44.4.ebuild 7757 BLAKE2B 94f79a2ac9f8f1b3f95297c50af5aa155604ef670e7600d7e567cb5971fc509efd9e07a9fd892010b2bd7332912a17407031d658cd2ba393678ebf5b7c7c2e42 SHA512 b8cdbf26b732b669da0ec5c5feb7fb708f27dc285792dca74aef3bf49d4b0d774b8d6d79603c65a564deae345e0c40b5d6f106225463cab6c4e5f3ea3813db26 -EBUILD webkit-gtk-2.46.3-r410.ebuild 7919 BLAKE2B 2184ede439fad929e3210a84ceaa50019ebaf99f14c9e4c697c7bf67fb5e34decc1453ee1dcdcfde6efadc8b99b6f16eaf981d31cb371c2b895ef3f477f10647 SHA512 add9e7898da3c417e3d6801a94853f88dcb623e1b3b1fd44e4516b363469050b061e7cf1d802db7535bfaa20770bc7926aba32ad7439a585192326955edc676d -EBUILD webkit-gtk-2.46.3-r600.ebuild 8663 BLAKE2B ca728af856acdecdb8bfa042420fd25b7b5d501e2c12a7e6e0fbf62b5aec94e6d70e1da60d00eb71ece946a559e1446193cef7c3c6b5345589c16bd0f91a3cd7 SHA512 48fc46c562719dd09e67399fc8bf6a85c85593bdebaf11823ee63b3e03cf9796fe0291cf2de675d6fa8d75d04efe39998a6f7a8d04483596dddbfd5a220552f5 -EBUILD webkit-gtk-2.46.3.ebuild 7917 BLAKE2B 226eec726458c3caf8bd3b5ac39bc3ceb0a4c029d3d56fd4e5a7d91412a2f35e8f51c188306d7f7e9140a7a5f1dc1140ef23de8a86f515769c839a070b813e36 SHA512 20f33cd66032101556af742f2f799b0a743d1466d1cfdbe188436442fcb33b1e47c9540a46ed372502a5ba7d10e3cf502cb3cf6aabf9c55d7ccd2c186fad5d14 +EBUILD webkit-gtk-2.46.4-r410.ebuild 7889 BLAKE2B cb0185fe6b0673f4aaa8945074cd3b5fe201c9a503ed598959e73a8c376eb09813f8a57eed48095543c752dbb3b24db5d1ae3b83cf9001d2b56bcf007690a48a SHA512 a12f811a13585cf3fd310ef44640568ff5ee82a732abd184ea44223e83d4ad9913096e749d3e6d4d07fcfc90892c706070f93a5d678972d994291f1053a0bd7c +EBUILD webkit-gtk-2.46.4-r600.ebuild 8633 BLAKE2B 4fe3419ab32227661c6020a32342c33678b28368a2c9157c918606a06a66c0ddbdd53afdaf4d50a9a85f4c5f399889f3f52f5495aa9b955a0649e479cb721e16 SHA512 d20a153affcd8536dc65f4cf60feb3e97665a6841127b34dbb7347399e8f41e83fc3b9d298ed604e3183a5ac6659a36a3c3ee3b8486ad3e0adf538ff814fa026 +EBUILD webkit-gtk-2.46.4.ebuild 7887 BLAKE2B 88453c06f882ee8fb025368da72030a2f78b25d03c9e6887b816ecd7614c3bd2ae192141104611da61b4aa64d383ad4cf0ae9b43b888bc9b1e30384db06ab991 SHA512 c7e2792e511c879bfe6dcb7a5dc039511f4daf809132089a284eb970fddf7103edfb71314e1c957f9aee729f54e8a89bd8d2b9fc687b7e3ba3ced5bd2bde26ca MISC metadata.xml 615 BLAKE2B 5527ca0439e337193601d221df1b5f9b85c6f4ea0b0867fe8ac0548307672de45fe956fe61c0044b778644c8079271eba565854ab041ce45738dd98a9b3db39e SHA512 4681816de7821ede7c252e62a4cb29ee5c6e88f1799972a7325b40ed1998f9462835ca38c42dc65eeac4c0bcb0d672593af857fcf442cced865bdfdefe063eb1 diff --git a/net-libs/webkit-gtk/webkit-gtk-2.46.3-r410.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.46.3-r410.ebuild deleted file mode 100644 index 2488477b384b..000000000000 --- a/net-libs/webkit-gtk/webkit-gtk-2.46.3-r410.ebuild +++ /dev/null @@ -1,256 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -PYTHON_REQ_USE="xml(+)" -PYTHON_COMPAT=( python3_{10..13} ) -USE_RUBY="ruby31 ruby32 ruby33" - -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" - -S="${WORKDIR}/${MY_P}" - -LICENSE="LGPL-2+ BSD" -SLOT="4.1/0" # soname version of libwebkit2gtk-4.1 -KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64" - -IUSE="aqua avif examples gamepad keyring +gstreamer +introspection pdf 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 can be found in Source/cmake/OptionsGTK.cmake. -# -# * Missing WebRTC support, but ENABLE_WEB_RTC is experimental upstream. -# -# * media-libs/mesa dep is for libgbm -# -# * >=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 -# -# * Cairo is only needed on big-endian systems, where Skia is not officially -# supported (the build system will choose a backend for you). We could probably -# hard-code a list of BE arches here, to avoid the extra dependency? But I am -# holding out hope that this might actually get fixed before we need to do that. -# -# * dev-util/sysprof-capture is disabled because it was a new dependency in 2.46 -# and we don't need any more new problems. -# -RDEPEND=" - app-accessibility/at-spi2-core:2 - dev-db/sqlite:3 - dev-libs/glib:2 - dev-libs/hyphen - dev-libs/icu:= - dev-libs/libgcrypt:0= - dev-libs/libtasn1:= - dev-libs/libxml2:2 - dev-libs/libxslt - media-libs/fontconfig:1.0 - media-libs/freetype:2 - media-libs/harfbuzz:=[icu(+)] - media-libs/libjpeg-turbo:0= - media-libs/libepoxy[egl(+)] - media-libs/libglvnd - media-libs/libpng:0= - media-libs/libwebp:= - media-libs/mesa - media-libs/woff2 - net-libs/libsoup:3.0[introspection?] - sys-libs/zlib:0 - x11-libs/cairo[X?] - x11-libs/gtk+:3[aqua?,introspection?,wayland?,X?] - x11-libs/libdrm - avif? ( media-libs/libavif:= ) - gamepad? ( dev-libs/libmanette ) - gstreamer? ( - media-libs/gstreamer:1.0 - media-libs/gst-plugins-base:1.0[egl,opengl,X?] - media-plugins/gst-plugins-opus:1.0 - media-libs/gst-plugins-bad:1.0 - ) - introspection? ( dev-libs/gobject-introspection:= ) - jpegxl? ( media-libs/libjxl:= ) - keyring? ( app-crypt/libsecret ) - lcms? ( media-libs/lcms:2 ) - seccomp? ( - sys-apps/bubblewrap - sys-libs/libseccomp - sys-apps/xdg-dbus-proxy - ) - spell? ( app-text/enchant:2 ) - systemd? ( sys-apps/systemd:= ) - X? ( x11-libs/libX11 ) - wayland? ( - dev-libs/wayland - dev-libs/wayland-protocols - ) -" -DEPEND="${RDEPEND}" -# Need real bison, not yacc -BDEPEND=" - ${PYTHON_DEPS} - ${RUBY_DEPS} - app-accessibility/at-spi2-core - dev-lang/perl - dev-util/gdbus-codegen - dev-util/glib-utils - dev-util/gperf - dev-util/unifdef - sys-devel/bison - sys-devel/gettext - virtual/perl-Data-Dumper - virtual/perl-Carp - virtual/perl-JSON-PP - virtual/pkgconfig - wayland? ( dev-util/wayland-scanner ) -" - -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 - - if ! tc-is-clang ; then - ewarn "Upstream recommends that Clang be used to compile WebkitGTK:" - ewarn " https://webkitgtk.org/2024/10/04/webkitgtk-2.46.html" - 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 - - # https://bugs.gentoo.org/943213 - eapply "${FILESDIR}"/2.44.4-fix-icu76.1.patch -} - -src_configure() { - # Respect CC, otherwise fails on prefix #395875 - tc-export CC - - # ODR violations (bug #915230, https://bugs.webkit.org/show_bug.cgi?id=233007) - filter-lto - - # 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" - - # 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) - append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory") - - # 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_GEOLOCATION=ON # Runtime optional (talks over dbus service) - -DENABLE_MINIBROWSER=$(usex examples) - -DENABLE_PDFJS=$(usex pdf) - -DENABLE_SPELLCHECK=$(usex spell) - -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build) - -DENABLE_VIDEO=$(usex gstreamer) - -DENABLE_WEB_AUDIO=$(usex gstreamer) - -DENABLE_WEB_CODECS=$(usex gstreamer) # https://bugs.webkit.org/show_bug.cgi?id=269147 - -DENABLE_WEBDRIVER=OFF - -DENABLE_WEBGL=ON - -DUSE_AVIF=$(usex avif) - -DUSE_GSTREAMER_WEBRTC=$(usex gstreamer) - -DUSE_GSTREAMER_TRANSCODER=$(usex gstreamer) - # 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_LIBBACKTRACE=OFF - -DUSE_LIBDRM=ON - -DUSE_LIBHYPHEN=ON - -DUSE_LIBSECRET=$(usex keyring) - -DUSE_SOUP2=OFF - -DUSE_SYSPROF_CAPTURE=OFF - -DUSE_WOFF2=ON - ) - - # Temporary workaround for bug 938162 (upstream bug 271371). - use riscv && mycmakeargs+=( -DENABLE_JIT=OFF ) - - # 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 "VAAPI encoding support" "media-libs/gst-plugins-bad[vaapi]" - optfeature "MPEG-DASH support" "media-plugins/gst-plugins-dash" - optfeature "HTTP live streaming (HLS) support" "media-plugins/gst-plugins-hls" -} diff --git a/net-libs/webkit-gtk/webkit-gtk-2.46.3-r600.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.46.3-r600.ebuild deleted file mode 100644 index 04eed1fc6220..000000000000 --- a/net-libs/webkit-gtk/webkit-gtk-2.46.3-r600.ebuild +++ /dev/null @@ -1,275 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -PYTHON_REQ_USE="xml(+)" -PYTHON_COMPAT=( python3_{10..13} ) -USE_RUBY="ruby31 ruby32 ruby33" - -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" - -S="${WORKDIR}/${MY_P}" - -LICENSE="LGPL-2+ BSD" -SLOT="6/0" # soname version of libwebkit2gtk-6.0 -KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64" - -IUSE="aqua avif examples gamepad keyring +gstreamer +introspection pdf 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 can be found in Source/cmake/OptionsGTK.cmake. -# -# * Missing WebRTC support, but ENABLE_WEB_RTC is experimental upstream. -# -# * media-libs/mesa dep is for libgbm -# -# * >=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 = 5 for C++17-specific compiler flags" - fi - - if ! tc-is-clang ; then - ewarn "Upstream recommends that Clang be used to compile WebkitGTK:" - ewarn " https://webkitgtk.org/2024/10/04/webkitgtk-2.46.html" - 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 - - # https://bugs.gentoo.org/943213 - eapply "${FILESDIR}"/2.44.4-fix-icu76.1.patch -} - -src_configure() { - # Respect CC, otherwise fails on prefix #395875 - tc-export CC - - # ODR violations (bug #915230, https://bugs.webkit.org/show_bug.cgi?id=233007) - filter-lto - - # 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" - - # 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) - append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory") - - # 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_GEOLOCATION=ON # Runtime optional (talks over dbus service) - -DENABLE_MINIBROWSER=$(usex examples) - -DENABLE_PDFJS=$(usex pdf) - -DENABLE_SPELLCHECK=$(usex spell) - -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build) - -DENABLE_VIDEO=$(usex gstreamer) - -DENABLE_WEB_AUDIO=$(usex gstreamer) - -DENABLE_WEB_CODECS=$(usex gstreamer) # https://bugs.webkit.org/show_bug.cgi?id=269147 - -DENABLE_WEBDRIVER=ON - -DENABLE_WEBGL=ON - -DUSE_AVIF=$(usex avif) - -DUSE_GSTREAMER_WEBRTC=$(usex gstreamer) - -DUSE_GSTREAMER_TRANSCODER=$(usex gstreamer) - # 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_LIBBACKTRACE=OFF - -DUSE_LIBDRM=ON - -DUSE_LIBHYPHEN=ON - -DUSE_LIBSECRET=$(usex keyring) - -DUSE_SOUP2=OFF - -DUSE_SYSPROF_CAPTURE=OFF - -DUSE_WOFF2=ON - ) - - # Temporary workaround for bug 938162 (upstream bug 271371). - use riscv && mycmakeargs+=( -DENABLE_JIT=OFF ) - - # 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-6.0 - doins -r "${S}"/Documentation/{jsc-glib,webkitgtk,webkitgtk-web-process-extension}-6.0 -} - -pkg_postinst() { - optfeature "geolocation service (used at runtime if available)" "app-misc/geoclue" - optfeature "Common Multimedia codecs" "media-plugins/gst-plugins-meta" - optfeature "VAAPI encoding support" "media-libs/gst-plugins-bad[vaapi]" - optfeature "MPEG-DASH support" "media-plugins/gst-plugins-dash" - optfeature "HTTP live streaming (HLS) support" "media-plugins/gst-plugins-hls" -} diff --git a/net-libs/webkit-gtk/webkit-gtk-2.46.3.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.46.3.ebuild deleted file mode 100644 index a782608f410c..000000000000 --- a/net-libs/webkit-gtk/webkit-gtk-2.46.3.ebuild +++ /dev/null @@ -1,256 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -PYTHON_REQ_USE="xml(+)" -PYTHON_COMPAT=( python3_{10..13} ) -USE_RUBY="ruby31 ruby32 ruby33" - -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" - -S="${WORKDIR}/${MY_P}" - -LICENSE="LGPL-2+ BSD" -SLOT="4/37" # soname version of libwebkit2gtk-4.0 -KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64" - -IUSE="aqua avif examples gamepad keyring +gstreamer +introspection pdf 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 can be found in Source/cmake/OptionsGTK.cmake. -# -# * Missing WebRTC support, but ENABLE_WEB_RTC is experimental upstream. -# -# * media-libs/mesa dep is for libgbm -# -# * >=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 -# -# * Cairo is only needed on big-endian systems, where Skia is not officially -# supported (the build system will choose a backend for you). We could probably -# hard-code a list of BE arches here, to avoid the extra dependency? But I am -# holding out hope that this might actually get fixed before we need to do that. -# -# * dev-util/sysprof-capture is disabled because it was a new dependency in 2.46 -# and we don't need any more new problems. -# -RDEPEND=" - app-accessibility/at-spi2-core:2 - dev-db/sqlite:3 - dev-libs/glib:2 - dev-libs/hyphen - dev-libs/icu:= - dev-libs/libgcrypt:0= - dev-libs/libtasn1:= - dev-libs/libxml2:2 - dev-libs/libxslt - media-libs/fontconfig:1.0 - media-libs/freetype:2 - media-libs/harfbuzz:=[icu(+)] - media-libs/libjpeg-turbo:0= - media-libs/libepoxy[egl(+)] - media-libs/libglvnd - media-libs/libpng:0= - media-libs/libwebp:= - media-libs/mesa - media-libs/woff2 - net-libs/libsoup:2.4[introspection?] - sys-libs/zlib:0 - x11-libs/cairo[X?] - x11-libs/gtk+:3[aqua?,introspection?,wayland?,X?] - x11-libs/libdrm - avif? ( media-libs/libavif:= ) - gamepad? ( dev-libs/libmanette ) - gstreamer? ( - media-libs/gstreamer:1.0 - media-libs/gst-plugins-base:1.0[egl,opengl,X?] - media-plugins/gst-plugins-opus:1.0 - media-libs/gst-plugins-bad:1.0 - ) - introspection? ( dev-libs/gobject-introspection:= ) - jpegxl? ( media-libs/libjxl:= ) - keyring? ( app-crypt/libsecret ) - lcms? ( media-libs/lcms:2 ) - seccomp? ( - sys-apps/bubblewrap - sys-libs/libseccomp - sys-apps/xdg-dbus-proxy - ) - spell? ( app-text/enchant:2 ) - systemd? ( sys-apps/systemd:= ) - X? ( x11-libs/libX11 ) - wayland? ( - dev-libs/wayland - dev-libs/wayland-protocols - ) -" -DEPEND="${RDEPEND}" -# Need real bison, not yacc -BDEPEND=" - ${PYTHON_DEPS} - ${RUBY_DEPS} - app-accessibility/at-spi2-core - dev-lang/perl - dev-util/gdbus-codegen - dev-util/glib-utils - dev-util/gperf - dev-util/unifdef - sys-devel/bison - sys-devel/gettext - virtual/perl-Data-Dumper - virtual/perl-Carp - virtual/perl-JSON-PP - virtual/pkgconfig - wayland? ( dev-util/wayland-scanner ) -" - -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 - - if ! tc-is-clang ; then - ewarn "Upstream recommends that Clang be used to compile WebkitGTK:" - ewarn " https://webkitgtk.org/2024/10/04/webkitgtk-2.46.html" - 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 - - # https://bugs.gentoo.org/943213 - eapply "${FILESDIR}"/2.44.4-fix-icu76.1.patch -} - -src_configure() { - # Respect CC, otherwise fails on prefix #395875 - tc-export CC - - # ODR violations (bug #915230, https://bugs.webkit.org/show_bug.cgi?id=233007) - filter-lto - - # 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" - - # 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) - append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory") - - # 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_GEOLOCATION=ON # Runtime optional (talks over dbus service) - -DENABLE_MINIBROWSER=$(usex examples) - -DENABLE_PDFJS=$(usex pdf) - -DENABLE_SPELLCHECK=$(usex spell) - -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build) - -DENABLE_VIDEO=$(usex gstreamer) - -DENABLE_WEB_AUDIO=$(usex gstreamer) - -DENABLE_WEB_CODECS=$(usex gstreamer) # https://bugs.webkit.org/show_bug.cgi?id=269147 - -DENABLE_WEBDRIVER=OFF - -DENABLE_WEBGL=ON - -DUSE_AVIF=$(usex avif) - -DUSE_GSTREAMER_WEBRTC=$(usex gstreamer) - -DUSE_GSTREAMER_TRANSCODER=$(usex gstreamer) - # 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_LIBBACKTRACE=OFF - -DUSE_LIBDRM=ON - -DUSE_LIBHYPHEN=ON - -DUSE_LIBSECRET=$(usex keyring) - -DUSE_SOUP2=ON - -DUSE_SYSPROF_CAPTURE=OFF - -DUSE_WOFF2=ON - ) - - # Temporary workaround for bug 938162 (upstream bug 271371). - use riscv && mycmakeargs+=( -DENABLE_JIT=OFF ) - - # 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 "VAAPI encoding support" "media-libs/gst-plugins-bad[vaapi]" - optfeature "MPEG-DASH support" "media-plugins/gst-plugins-dash" - optfeature "HTTP live streaming (HLS) support" "media-plugins/gst-plugins-hls" -} diff --git a/net-libs/webkit-gtk/webkit-gtk-2.46.4-r410.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.46.4-r410.ebuild new file mode 100644 index 000000000000..ae6d1d99d97d --- /dev/null +++ b/net-libs/webkit-gtk/webkit-gtk-2.46.4-r410.ebuild @@ -0,0 +1,253 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_REQ_USE="xml(+)" +PYTHON_COMPAT=( python3_{10..13} ) +USE_RUBY="ruby31 ruby32 ruby33" + +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" + +S="${WORKDIR}/${MY_P}" + +LICENSE="LGPL-2+ BSD" +SLOT="4.1/0" # soname version of libwebkit2gtk-4.1 +KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64" + +IUSE="aqua avif examples gamepad keyring +gstreamer +introspection pdf 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 can be found in Source/cmake/OptionsGTK.cmake. +# +# * Missing WebRTC support, but ENABLE_WEB_RTC is experimental upstream. +# +# * media-libs/mesa dep is for libgbm +# +# * >=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 +# +# * Cairo is only needed on big-endian systems, where Skia is not officially +# supported (the build system will choose a backend for you). We could probably +# hard-code a list of BE arches here, to avoid the extra dependency? But I am +# holding out hope that this might actually get fixed before we need to do that. +# +# * dev-util/sysprof-capture is disabled because it was a new dependency in 2.46 +# and we don't need any more new problems. +# +RDEPEND=" + app-accessibility/at-spi2-core:2 + dev-db/sqlite:3 + dev-libs/glib:2 + dev-libs/hyphen + dev-libs/icu:= + dev-libs/libgcrypt:0= + dev-libs/libtasn1:= + dev-libs/libxml2:2 + dev-libs/libxslt + media-libs/fontconfig:1.0 + media-libs/freetype:2 + media-libs/harfbuzz:=[icu(+)] + media-libs/libjpeg-turbo:0= + media-libs/libepoxy[egl(+)] + media-libs/libglvnd + media-libs/libpng:0= + media-libs/libwebp:= + media-libs/mesa + media-libs/woff2 + net-libs/libsoup:3.0[introspection?] + sys-libs/zlib:0 + x11-libs/cairo[X?] + x11-libs/gtk+:3[aqua?,introspection?,wayland?,X?] + x11-libs/libdrm + avif? ( media-libs/libavif:= ) + gamepad? ( dev-libs/libmanette ) + gstreamer? ( + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0[egl,opengl,X?] + media-plugins/gst-plugins-opus:1.0 + media-libs/gst-plugins-bad:1.0 + ) + introspection? ( dev-libs/gobject-introspection:= ) + jpegxl? ( media-libs/libjxl:= ) + keyring? ( app-crypt/libsecret ) + lcms? ( media-libs/lcms:2 ) + seccomp? ( + sys-apps/bubblewrap + sys-libs/libseccomp + sys-apps/xdg-dbus-proxy + ) + spell? ( app-text/enchant:2 ) + systemd? ( sys-apps/systemd:= ) + X? ( x11-libs/libX11 ) + wayland? ( + dev-libs/wayland + dev-libs/wayland-protocols + ) +" +DEPEND="${RDEPEND}" +# Need real bison, not yacc +BDEPEND=" + ${PYTHON_DEPS} + ${RUBY_DEPS} + app-accessibility/at-spi2-core + dev-lang/perl + dev-util/gdbus-codegen + dev-util/glib-utils + dev-util/gperf + dev-util/unifdef + sys-devel/bison + sys-devel/gettext + virtual/perl-Data-Dumper + virtual/perl-Carp + virtual/perl-JSON-PP + virtual/pkgconfig + wayland? ( dev-util/wayland-scanner ) +" + +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 + + # https://bugs.gentoo.org/943213 + eapply "${FILESDIR}"/2.44.4-fix-icu76.1.patch +} + +src_configure() { + # Respect CC, otherwise fails on prefix #395875 + tc-export CC + + # ODR violations (bug #915230, https://bugs.webkit.org/show_bug.cgi?id=233007) + filter-lto + + # 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" + + # 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) + append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory") + + # 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_GEOLOCATION=ON # Runtime optional (talks over dbus service) + -DENABLE_MINIBROWSER=$(usex examples) + -DENABLE_PDFJS=$(usex pdf) + -DENABLE_SPELLCHECK=$(usex spell) + -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build) + -DENABLE_VIDEO=$(usex gstreamer) + -DENABLE_WEB_AUDIO=$(usex gstreamer) + -DENABLE_WEB_CODECS=$(usex gstreamer) # https://bugs.webkit.org/show_bug.cgi?id=269147 + -DENABLE_WEBDRIVER=OFF + -DENABLE_WEBGL=ON + -DUSE_AVIF=$(usex avif) + -DUSE_GSTREAMER_WEBRTC=$(usex gstreamer) + -DUSE_GSTREAMER_TRANSCODER=$(usex gstreamer) + # 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_LIBBACKTRACE=OFF + -DUSE_LIBDRM=ON + -DUSE_LIBHYPHEN=ON + -DUSE_LIBSECRET=$(usex keyring) + -DUSE_SOUP2=OFF + -DUSE_SYSPROF_CAPTURE=OFF + -DUSE_WOFF2=ON + ) + + # Temporary workaround for bug 938162 (upstream bug 271371). + # The idea to disable WebAssembly and the FTL JIT instead + # of using ENABLE_JIT=OFF was stolen from OpenBSD. + use riscv && mycmakeargs+=( -DENABLE_WEBASSEMBLY=OFF -DENABLE_FTL_JIT=OFF ) + + # 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 "VAAPI encoding support" "media-libs/gst-plugins-bad[vaapi]" + optfeature "MPEG-DASH support" "media-plugins/gst-plugins-dash" + optfeature "HTTP live streaming (HLS) support" "media-plugins/gst-plugins-hls" +} diff --git a/net-libs/webkit-gtk/webkit-gtk-2.46.4-r600.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.46.4-r600.ebuild new file mode 100644 index 000000000000..753098b08520 --- /dev/null +++ b/net-libs/webkit-gtk/webkit-gtk-2.46.4-r600.ebuild @@ -0,0 +1,272 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_REQ_USE="xml(+)" +PYTHON_COMPAT=( python3_{10..13} ) +USE_RUBY="ruby31 ruby32 ruby33" + +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" + +S="${WORKDIR}/${MY_P}" + +LICENSE="LGPL-2+ BSD" +SLOT="6/0" # soname version of libwebkit2gtk-6.0 +KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64" + +IUSE="aqua avif examples gamepad keyring +gstreamer +introspection pdf 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 can be found in Source/cmake/OptionsGTK.cmake. +# +# * Missing WebRTC support, but ENABLE_WEB_RTC is experimental upstream. +# +# * media-libs/mesa dep is for libgbm +# +# * >=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 = 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 + + # https://bugs.gentoo.org/943213 + eapply "${FILESDIR}"/2.44.4-fix-icu76.1.patch +} + +src_configure() { + # Respect CC, otherwise fails on prefix #395875 + tc-export CC + + # ODR violations (bug #915230, https://bugs.webkit.org/show_bug.cgi?id=233007) + filter-lto + + # 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" + + # 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) + append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory") + + # 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_GEOLOCATION=ON # Runtime optional (talks over dbus service) + -DENABLE_MINIBROWSER=$(usex examples) + -DENABLE_PDFJS=$(usex pdf) + -DENABLE_SPELLCHECK=$(usex spell) + -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build) + -DENABLE_VIDEO=$(usex gstreamer) + -DENABLE_WEB_AUDIO=$(usex gstreamer) + -DENABLE_WEB_CODECS=$(usex gstreamer) # https://bugs.webkit.org/show_bug.cgi?id=269147 + -DENABLE_WEBDRIVER=ON + -DENABLE_WEBGL=ON + -DUSE_AVIF=$(usex avif) + -DUSE_GSTREAMER_WEBRTC=$(usex gstreamer) + -DUSE_GSTREAMER_TRANSCODER=$(usex gstreamer) + # 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_LIBBACKTRACE=OFF + -DUSE_LIBDRM=ON + -DUSE_LIBHYPHEN=ON + -DUSE_LIBSECRET=$(usex keyring) + -DUSE_SOUP2=OFF + -DUSE_SYSPROF_CAPTURE=OFF + -DUSE_WOFF2=ON + ) + + # Temporary workaround for bug 938162 (upstream bug 271371). + # The idea to disable WebAssembly and the FTL JIT instead + # of using ENABLE_JIT=OFF was stolen from OpenBSD. + use riscv && mycmakeargs+=( -DENABLE_WEBASSEMBLY=OFF -DENABLE_FTL_JIT=OFF ) + + # 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-6.0 + doins -r "${S}"/Documentation/{jsc-glib,webkitgtk,webkitgtk-web-process-extension}-6.0 +} + +pkg_postinst() { + optfeature "geolocation service (used at runtime if available)" "app-misc/geoclue" + optfeature "Common Multimedia codecs" "media-plugins/gst-plugins-meta" + optfeature "VAAPI encoding support" "media-libs/gst-plugins-bad[vaapi]" + optfeature "MPEG-DASH support" "media-plugins/gst-plugins-dash" + optfeature "HTTP live streaming (HLS) support" "media-plugins/gst-plugins-hls" +} diff --git a/net-libs/webkit-gtk/webkit-gtk-2.46.4.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.46.4.ebuild new file mode 100644 index 000000000000..251e70b171d4 --- /dev/null +++ b/net-libs/webkit-gtk/webkit-gtk-2.46.4.ebuild @@ -0,0 +1,253 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_REQ_USE="xml(+)" +PYTHON_COMPAT=( python3_{10..13} ) +USE_RUBY="ruby31 ruby32 ruby33" + +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" + +S="${WORKDIR}/${MY_P}" + +LICENSE="LGPL-2+ BSD" +SLOT="4/37" # soname version of libwebkit2gtk-4.0 +KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64" + +IUSE="aqua avif examples gamepad keyring +gstreamer +introspection pdf 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 can be found in Source/cmake/OptionsGTK.cmake. +# +# * Missing WebRTC support, but ENABLE_WEB_RTC is experimental upstream. +# +# * media-libs/mesa dep is for libgbm +# +# * >=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 +# +# * Cairo is only needed on big-endian systems, where Skia is not officially +# supported (the build system will choose a backend for you). We could probably +# hard-code a list of BE arches here, to avoid the extra dependency? But I am +# holding out hope that this might actually get fixed before we need to do that. +# +# * dev-util/sysprof-capture is disabled because it was a new dependency in 2.46 +# and we don't need any more new problems. +# +RDEPEND=" + app-accessibility/at-spi2-core:2 + dev-db/sqlite:3 + dev-libs/glib:2 + dev-libs/hyphen + dev-libs/icu:= + dev-libs/libgcrypt:0= + dev-libs/libtasn1:= + dev-libs/libxml2:2 + dev-libs/libxslt + media-libs/fontconfig:1.0 + media-libs/freetype:2 + media-libs/harfbuzz:=[icu(+)] + media-libs/libjpeg-turbo:0= + media-libs/libepoxy[egl(+)] + media-libs/libglvnd + media-libs/libpng:0= + media-libs/libwebp:= + media-libs/mesa + media-libs/woff2 + net-libs/libsoup:2.4[introspection?] + sys-libs/zlib:0 + x11-libs/cairo[X?] + x11-libs/gtk+:3[aqua?,introspection?,wayland?,X?] + x11-libs/libdrm + avif? ( media-libs/libavif:= ) + gamepad? ( dev-libs/libmanette ) + gstreamer? ( + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0[egl,opengl,X?] + media-plugins/gst-plugins-opus:1.0 + media-libs/gst-plugins-bad:1.0 + ) + introspection? ( dev-libs/gobject-introspection:= ) + jpegxl? ( media-libs/libjxl:= ) + keyring? ( app-crypt/libsecret ) + lcms? ( media-libs/lcms:2 ) + seccomp? ( + sys-apps/bubblewrap + sys-libs/libseccomp + sys-apps/xdg-dbus-proxy + ) + spell? ( app-text/enchant:2 ) + systemd? ( sys-apps/systemd:= ) + X? ( x11-libs/libX11 ) + wayland? ( + dev-libs/wayland + dev-libs/wayland-protocols + ) +" +DEPEND="${RDEPEND}" +# Need real bison, not yacc +BDEPEND=" + ${PYTHON_DEPS} + ${RUBY_DEPS} + app-accessibility/at-spi2-core + dev-lang/perl + dev-util/gdbus-codegen + dev-util/glib-utils + dev-util/gperf + dev-util/unifdef + sys-devel/bison + sys-devel/gettext + virtual/perl-Data-Dumper + virtual/perl-Carp + virtual/perl-JSON-PP + virtual/pkgconfig + wayland? ( dev-util/wayland-scanner ) +" + +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 + + # https://bugs.gentoo.org/943213 + eapply "${FILESDIR}"/2.44.4-fix-icu76.1.patch +} + +src_configure() { + # Respect CC, otherwise fails on prefix #395875 + tc-export CC + + # ODR violations (bug #915230, https://bugs.webkit.org/show_bug.cgi?id=233007) + filter-lto + + # 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" + + # 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) + append-ldflags $(test-flags-CCLD "-Wl,--no-keep-memory") + + # 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_GEOLOCATION=ON # Runtime optional (talks over dbus service) + -DENABLE_MINIBROWSER=$(usex examples) + -DENABLE_PDFJS=$(usex pdf) + -DENABLE_SPELLCHECK=$(usex spell) + -DENABLE_UNIFIED_BUILDS=$(usex jumbo-build) + -DENABLE_VIDEO=$(usex gstreamer) + -DENABLE_WEB_AUDIO=$(usex gstreamer) + -DENABLE_WEB_CODECS=$(usex gstreamer) # https://bugs.webkit.org/show_bug.cgi?id=269147 + -DENABLE_WEBDRIVER=OFF + -DENABLE_WEBGL=ON + -DUSE_AVIF=$(usex avif) + -DUSE_GSTREAMER_WEBRTC=$(usex gstreamer) + -DUSE_GSTREAMER_TRANSCODER=$(usex gstreamer) + # 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_LIBBACKTRACE=OFF + -DUSE_LIBDRM=ON + -DUSE_LIBHYPHEN=ON + -DUSE_LIBSECRET=$(usex keyring) + -DUSE_SOUP2=ON + -DUSE_SYSPROF_CAPTURE=OFF + -DUSE_WOFF2=ON + ) + + # Temporary workaround for bug 938162 (upstream bug 271371). + # The idea to disable WebAssembly and the FTL JIT instead + # of using ENABLE_JIT=OFF was stolen from OpenBSD. + use riscv && mycmakeargs+=( -DENABLE_WEBASSEMBLY=OFF -DENABLE_FTL_JIT=OFF ) + + # 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 "VAAPI encoding support" "media-libs/gst-plugins-bad[vaapi]" + optfeature "MPEG-DASH support" "media-plugins/gst-plugins-dash" + optfeature "HTTP live streaming (HLS) support" "media-plugins/gst-plugins-hls" +} -- cgit v1.2.3