From 66113e7871aede225d661473925cea4cce9e6d23 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Thu, 16 May 2024 00:01:30 +0100 Subject: gentoo auto-resync : 16:05:2024 - 00:01:30 --- dev-qt/qtwebengine/Manifest | 2 + .../qtwebengine-5.15.13_p20240510.ebuild | 248 +++++++++++++++++++++ 2 files changed, 250 insertions(+) create mode 100644 dev-qt/qtwebengine/qtwebengine-5.15.13_p20240510.ebuild (limited to 'dev-qt/qtwebengine') diff --git a/dev-qt/qtwebengine/Manifest b/dev-qt/qtwebengine/Manifest index ca80d894cef8..299451e18255 100644 --- a/dev-qt/qtwebengine/Manifest +++ b/dev-qt/qtwebengine/Manifest @@ -5,10 +5,12 @@ AUX qtwebengine-6.7.0-displaykey-header.patch 346 BLAKE2B d3591285c2c2b3b795818c AUX qtwebengine-6.7.0-ninja1.12.patch 1173 BLAKE2B 11e1801ac32a984333bb8e81aed93471d3da330205508222e85140e1784654668dc1cf9e6a207d91f162568e0ff2d66c34c345084f62a4766745bd66f8927f94 SHA512 4cac6ac4abd17aa958db8c61026a80f4e363f7d8b4ed8fcc9660618e2fc2c7ff0eba03d3ca043755b28d9da65d819538b5f5982dff64ca1dea0043f7266ede36 DIST qtwebengine-5.15.13_p20240322-patchset.tar.xz 26112 BLAKE2B 21eb036520e052f28d7579022d84d4b7136521d025569b22653229d8099140a99726ce5ddebced0d9aa113d3e215fc023ad042a372f2318dfc7cafe5d9e397c9 SHA512 cbc4373ed6a107a3fd2bf1cb73c96e3c00b4428410933dbb1b1eb5116de22e29ca5e102702e1f6f8a12abff6b60ea072b84e77da64c6d60e360bf0ad2e542166 DIST qtwebengine-5.15.13_p20240322.tar.xz 301394204 BLAKE2B f9bb5bb79edbe0bc862a718feb3b11a56d8c6d2eee1dd711c9b4460f64308fdfbaa4c3551eebad3af5844564a49703574a7fb9d74e15abd0a6aeb8c707a14059 SHA512 b1f459fbb3d21118043a53ce6e292c6a45f8512830f4dbf6982713970f980ccfb8c1ea1c1d7ce373991632de8c44b5053fa1ccb883e19cd8f35a961e67472f5a +DIST qtwebengine-5.15.13_p20240510.tar.xz 301422784 BLAKE2B b63acccb4740ddb3dd5c76ef9808d946eb2c93b10b45125622adcb5c5e951644ac54612e7aeb9e009e00c5ca8913d3f8b5dfa530c274fec87c4a8377bf1068fb SHA512 0ccc1be0825f4cf2387879241a21f033b5a0198da4e93f2e0533296ec485b103c1ab35aa71a2a9d9c16364979d45d3dd2e13f7e6d0e2a21f94d85294c5819eb3 DIST qtwebengine-6.7-patchset-6.tar.xz 8140 BLAKE2B 773ee76ecf118ce45eb5dbebf4a574c3cff90f50cd87a469511688ed77db7a96012bec0dd03312bf2d366d709d95a2ac3432e9e0bd5a517b69a5bbd250a94420 SHA512 4db6abbd2a598f8194b9ba7035abad7228f6056fc5e5572329a9a0474f36135428b401edf5fa96e1ac866328d078b015fffd90949ef84f1cea9a1b39e5b9d5ff DIST qtwebengine-6.7-patchset-7.tar.xz 9288 BLAKE2B 28eeee2481e78f3fbc7351dba0e70025e33c9ba78dcd67200a9762ee7c884d279253b1a4cb50652fcd41bbf64e11e6486b17759c0335636531a81022e5cf8aab SHA512 0d8583d50679d4609833540293eeab84507aa448c62c0fda62d99c03c7f60afa655f621938fc798a1443ad0a355442f5114714d692bb83aecac99021919a1baa DIST qtwebengine-everywhere-src-6.7.0.tar.xz 550907592 BLAKE2B e7787ab0a8b68657ca318de1c855f23b50d9aa3bda1bfcaa4ecd274ff0afb283c092256c28b566a9882cc5dccdaf2e3312836f4da6d4a85850f3202176d77933 SHA512 92bc8ffc69c6e00d55b647b332878e9b632257e78c38e9b3d0a5f4506d5df3c507e8ffa5916db2547b89c4c2641447fd9031a80e780e143c7ed58a7285e06e64 EBUILD qtwebengine-5.15.13_p20240322.ebuild 7347 BLAKE2B b449a017794860e13345e2459841d1ffcd9d3d5f7eef91e9c546724e4622c59762943ac6e7f1e2b3fdd707adc9bad75476e25d93f81c549db4b7e3d8111fd43f SHA512 73e3d01e18bc17ad8cd210cc161a5aae9d7fd0dac6416ff59ed976252d7eedad25d2d2b44597f62a7fd9a105880ba4b00853753e131ae4c09aeb6e06cbb59cdd +EBUILD qtwebengine-5.15.13_p20240510.ebuild 7456 BLAKE2B 5261c83507e90e4ba266c6af3b29a84213786b528d583be4eb08e1e9592e7f3209527a37774ed0a17d24285dcf67f6837c7ab0650e879465bf47df4eb05fe692 SHA512 e6760c27320b196af7fa732a97d1c2851fecfe1751b8a151b39921a2ca8aa4524334a9d1a5ad444b49de59c5f464bfccc52ed19e3c69d5323fefa57794f35087 EBUILD qtwebengine-6.7.0.ebuild 10266 BLAKE2B 7b488220dc03aa9d0d88b7e3d18f80e2a8720dd0015338726680f3e4629759bd69b413f2ded20f6b0ac815ab81a05df7bb95333657e8cb4e2ea22145016218be SHA512 27a0d45dd8f469a0a70d309976a136a25e885a49a9512879ae2a230bbbbdf7e2aecf193c32569e13b0b52fc7b22562f37404f33c15414a0f447bcfb2a2931e2c EBUILD qtwebengine-6.7.9999.ebuild 10133 BLAKE2B de5fd02b8bf9328482ba8f0f7a444babb2b885011bbfb89cc83ba9a85257952ad8bc23915382e135b5cbcf3d09d43b91866e1fbca28daee379ae1a05a409955e SHA512 f127e8dce1443c78e8bf4a2ebe39f0781f2953fbdd7f1e5a36cb572850e72d4b96873e53aefba3977b9b1dab7fec2e494466a99f73e240e42c8363633db8811d EBUILD qtwebengine-6.9999.ebuild 10133 BLAKE2B de5fd02b8bf9328482ba8f0f7a444babb2b885011bbfb89cc83ba9a85257952ad8bc23915382e135b5cbcf3d09d43b91866e1fbca28daee379ae1a05a409955e SHA512 f127e8dce1443c78e8bf4a2ebe39f0781f2953fbdd7f1e5a36cb572850e72d4b96873e53aefba3977b9b1dab7fec2e494466a99f73e240e42c8363633db8811d diff --git a/dev-qt/qtwebengine/qtwebengine-5.15.13_p20240510.ebuild b/dev-qt/qtwebengine/qtwebengine-5.15.13_p20240510.ebuild new file mode 100644 index 000000000000..e5b9b8f1660b --- /dev/null +++ b/dev-qt/qtwebengine/qtwebengine-5.15.13_p20240510.ebuild @@ -0,0 +1,248 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PATCHSET="${PN}-5.15.13_p20240322-patchset" +PYTHON_COMPAT=( python3_{10..11} ) +PYTHON_REQ_USE="xml(+)" +inherit check-reqs estack flag-o-matic multiprocessing python-any-r1 qt5-build toolchain-funcs + +DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications" +HOMEPAGE="https://www.qt.io/" + +if [[ ${QT5_BUILD_TYPE} == release ]]; then + KEYWORDS="~amd64 ~arm64 ~x86" + if [[ ${PV} == ${QT5_PV}_p* ]]; then + SRC_URI="https://dev.gentoo.org/~asturm/distfiles/${P}.tar.xz" + S="${WORKDIR}/${P}" + QT5_BUILD_DIR="${S}_build" + fi +else + EGIT_BRANCH="5.15" + EGIT_REPO_URI=( + "https://code.qt.io/qt/${QT5_MODULE}.git" + "https://github.com/qt/${QT5_MODULE}.git" + ) + inherit git-r3 +fi + +SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}.tar.xz" + +IUSE="alsa bindist designer geolocation +jumbo-build kerberos pulseaudio screencast +system-icu widgets" +REQUIRED_USE="designer? ( widgets )" + +RDEPEND=" + app-arch/snappy:= + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + dev-libs/expat + dev-libs/libevent:= + dev-libs/libxml2[icu] + dev-libs/libxslt + dev-libs/re2:= + =dev-qt/qtcore-${QT5_PV}* + =dev-qt/qtdeclarative-${QT5_PV}* + =dev-qt/qtgui-${QT5_PV}* + =dev-qt/qtnetwork-${QT5_PV}* + =dev-qt/qtprintsupport-${QT5_PV}* + =dev-qt/qtwebchannel-${QT5_PV}*[qml] + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz:= + media-libs/lcms:2 + media-libs/libjpeg-turbo:= + media-libs/libpng:0= + >=media-libs/libvpx-1.5:=[svc(+)] + media-libs/libwebp:= + media-libs/opus + sys-apps/dbus + sys-apps/pciutils + sys-libs/zlib[minizip] + virtual/libudev + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libxkbfile + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXScrnSaver + x11-libs/libXtst + alsa? ( media-libs/alsa-lib ) + designer? ( =dev-qt/designer-${QT5_PV}* ) + geolocation? ( =dev-qt/qtpositioning-${QT5_PV}* ) + kerberos? ( virtual/krb5 ) + pulseaudio? ( media-libs/libpulse ) + screencast? ( media-video/pipewire:= ) + system-icu? ( >=dev-libs/icu-69.1:= ) + widgets? ( + =dev-qt/qtdeclarative-${QT5_PV}*[widgets] + =dev-qt/qtwidgets-${QT5_PV}* + ) +" +DEPEND="${RDEPEND} + media-libs/libglvnd +" +BDEPEND="${PYTHON_DEPS} + app-alternatives/ninja + dev-util/gperf + dev-util/re2c + net-libs/nodejs[ssl] + sys-devel/bison + sys-devel/flex +" + +PATCHES=( "${WORKDIR}/${PATCHSET}" ) + +qtwebengine_check-reqs() { + # bug #307861 + eshopts_push -s extglob + if is-flagq '-g?(gdb)?([1-9])'; then + ewarn "You have enabled debug info (probably have -g or -ggdb in your CFLAGS/CXXFLAGS)." + ewarn "You may experience really long compilation times and/or increased memory usage." + ewarn "If compilation fails, please try removing -g/-ggdb before reporting a bug." + fi + eshopts_pop + + [[ ${MERGE_TYPE} == binary ]] && return + + # (check-reqs added for bug #570534) + # + # Estimate the amount of RAM required + # Multiplier is *10 because Bash doesn't do floating point maths. + # Let's crudely assume ~2GB per compiler job for GCC. + local multiplier=20 + + # And call it ~1.5GB for Clang. + if tc-is-clang ; then + multiplier=15 + fi + + local CHECKREQS_DISK_BUILD="7G" + local CHECKREQS_DISK_USR="150M" + if ! has "distcc" ${FEATURES} ; then + # bug #830661 + # Not super realistic to come up with good estimates for distcc right now + local CHECKREQS_MEMORY=$(($(makeopts_jobs)*multiplier/10))G + fi + + check-reqs_${EBUILD_PHASE_FUNC} +} + +pkg_pretend() { + qtwebengine_check-reqs +} + +pkg_setup() { + qtwebengine_check-reqs + python-any-r1_pkg_setup +} + +src_unpack() { + case ${QT5_BUILD_TYPE} in + live) git-r3_src_unpack ;& + release) default ;; + esac +} + +src_prepare() { + rm "${WORKDIR}/${PATCHSET}"/010-build-without-python-2.patch \ + "${WORKDIR}/${PATCHSET}"/011-chromium-drop-catapult.patch || die + + if [[ ${PV} == ${QT5_PV}_p* ]]; then + # This is made from git, and for some reason will fail w/o .git directories. + mkdir -p .git src/3rdparty/chromium/.git || die + fi + # We need to make sure this integrates well into Qt 5.15.3 installation. + # Otherwise revdeps fail w/o heavy changes. This is the simplest way to do it. + # See also: https://www.qt.io/blog/building-qt-webengine-against-other-qt-versions + sed -E "/^MODULE_VERSION/s/5\.15\.[0-9]+/${QT5_PV}/" -i .qmake.conf || die + + # QTBUG-88657 - jumbo-build could still make trouble + if ! use jumbo-build; then + sed -i -e 's|use_jumbo_build=true|use_jumbo_build=false|' \ + src/buildtools/config/common.pri || die + fi + + # bug 620444 - ensure local headers are used + find "${S}" -type f -name "*.pr[fio]" | \ + xargs sed -i -e 's|INCLUDEPATH += |&$${QTWEBENGINE_ROOT}_build/include $${QTWEBENGINE_ROOT}/include |' || die + + if use system-icu; then + # Sanity check to ensure that bundled copy of ICU is not used. + # Whole src/3rdparty/chromium/third_party/icu directory cannot be deleted because + # src/3rdparty/chromium/third_party/icu/BUILD.gn is used by build system. + # If usage of headers of bundled copy of ICU occurs, then lists of shim headers in + # shim_headers("icui18n_shim") and shim_headers("icuuc_shim") in + # src/3rdparty/chromium/third_party/icu/BUILD.gn should be updated. + local file + while read file; do + echo "#error This file should not be used!" > "${file}" || die + done < <(find src/3rdparty/chromium/third_party/icu -type f "(" -name "*.c" -o -name "*.cpp" -o -name "*.h" ")" 2>/dev/null) + fi + + # src/3rdparty/gn fails with libc++ due to passing of `-static-libstdc++` + if tc-is-clang ; then + if has_version 'sys-devel/clang[default-libcxx(-)]' || has_version 'sys-devel/clang-common[default-libcxx(-)]' ; then + eapply "${FILESDIR}/${PN}-5.15.2_p20210521-clang-libc++.patch" + fi + fi + + qt_use_disable_config alsa webengine-alsa src/buildtools/config/linux.pri + qt_use_disable_config pulseaudio webengine-pulseaudio src/buildtools/config/linux.pri + + qt_use_disable_mod designer webenginewidgets src/plugins/plugins.pro + + qt_use_disable_mod widgets widgets src/src.pro + + qt5-build_src_prepare +} + +src_configure() { + export NINJA_PATH=/usr/bin/ninja + export NINJAFLAGS="${NINJAFLAGS:--j$(makeopts_jobs "${MAKEOPTS}" 999) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v}" + + local myqmakeargs=( + -- + -no-build-qtpdf + -printing-and-pdf + --webengine-python-version=python3 + -system-opus + -system-webp + $(qt_use alsa) + $(qt_use !bindist proprietary-codecs) + $(qt_use geolocation webengine-geolocation) + $(qt_use kerberos webengine-kerberos) + $(qt_use pulseaudio) + $(usex screencast -webengine-webrtc-pipewire '') + -qt-ffmpeg # bug 831487 + $(qt_use system-icu webengine-icu) + ) + qt5-build_src_configure +} + +src_install() { + qt5-build_src_install + + # bug 601472 + if [[ ! -f ${D}${QT5_LIBDIR}/libQt5WebEngine.so ]]; then + die "${CATEGORY}/${PF} failed to build anything. Please report to https://bugs.gentoo.org/" + fi +} + +pkg_preinst() { + elog "This version of Qt WebEngine is based on Chromium version 87.0.4280.144," + elog "with additional security fixes from newer versions. Extensive as it is, the" + elog "list of backports is impossible to evaluate, but always bound to be behind" + elog "Chromium's release schedule." + elog "In addition, various online services may deny service based on an outdated" + elog "user agent version (and/or other checks). Google is already known to do so." + elog + elog "tldr: Your web browsing experience will be compromised." +} -- cgit v1.2.3