diff options
-rw-r--r-- | app-office/skrooge/Manifest | 1 | ||||
-rw-r--r-- | app-office/skrooge/skrooge-2.31.0.ebuild | 99 | ||||
-rw-r--r-- | dev-libs/kirigami-addons/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/kirigami-addons/kirigami-addons-1.2.1.ebuild (renamed from dev-libs/kirigami-addons/kirigami-addons-1.2.0.ebuild) | 0 | ||||
-rw-r--r-- | dev-python/a2wsgi/a2wsgi-1.10.4.ebuild | 2 | ||||
-rw-r--r-- | dev-python/dirty-equals/dirty-equals-0.7.1.ebuild | 14 | ||||
-rw-r--r-- | dev-python/hatchling/hatchling-1.24.2.ebuild | 4 | ||||
-rw-r--r-- | dev-python/httpx/files/httpx-0.27.0-opt-trio.patch | 17 | ||||
-rw-r--r-- | dev-python/httpx/httpx-0.27.0.ebuild | 17 | ||||
-rw-r--r-- | dev-python/uvicorn/uvicorn-0.29.0.ebuild | 2 | ||||
-rw-r--r-- | dev-python/watchfiles/watchfiles-0.21.0-r1.ebuild | 2 | ||||
-rw-r--r-- | dev-qt/qtwebengine/Manifest | 1 | ||||
-rw-r--r-- | dev-qt/qtwebengine/qtwebengine-5.15.13_p20240510.ebuild | 248 | ||||
-rw-r--r-- | eclass/cargo.eclass | 56 | ||||
-rw-r--r-- | profiles/package.mask | 2 |
15 files changed, 321 insertions, 146 deletions
diff --git a/app-office/skrooge/Manifest b/app-office/skrooge/Manifest index 7919c5992c01..2fde3c350352 100644 --- a/app-office/skrooge/Manifest +++ b/app-office/skrooge/Manifest @@ -1,2 +1 @@ -DIST skrooge-2.31.0.tar.xz 22372292 BLAKE2B 3eafe194a9783ae2f3841f6c32211cdf3c425033b63084bf47e526482830d1d53ae66446aa04f0d93497a59054e229bbadd6f46ec0782e4ab05d902d0e809596 SHA512 3a09b9e6017b0ebce7170285a8ca6a27c8942f16c310450e76dc9deb87e0d016edb49b74c8ea784bed5f9b5a10ed515016266584f53fc0144f4bf02bc7769be1 DIST skrooge-2.32.0.tar.xz 22945360 BLAKE2B d567aedb958c8dc7e49ca3d3c6d78d9e0b9b1a520bf0202fda145f75a4bfb82ae1afe9278524aa4693944a98f46cbe14bfde10a202fbdb2532dbb1421ec29262 SHA512 e39ddcf498281e0ac402a2bad0a858a5d14c9d17fd01185954de2b0c8d0cc9768762a33b846db94824f5640ccdc063cf055d46ef0b90b03615209a0c2f4bed6c diff --git a/app-office/skrooge/skrooge-2.31.0.ebuild b/app-office/skrooge/skrooge-2.31.0.ebuild deleted file mode 100644 index 54e7a2e28fab..000000000000 --- a/app-office/skrooge/skrooge-2.31.0.ebuild +++ /dev/null @@ -1,99 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -ECM_HANDBOOK="optional" -ECM_TEST="forceoptional" -KFMIN=5.106.0 -QTMIN=5.15.9 -inherit ecm kde.org - -DESCRIPTION="Personal finances manager, aiming at being simple and intuitive" -HOMEPAGE="https://skrooge.org/" - -if [[ ${KDE_BUILD_TYPE} = release ]]; then - SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz" - KEYWORDS="amd64 ~x86" -fi - -LICENSE="GPL-2" -SLOT="5" -IUSE="activities kde ofx" - -# hangs + installs files (also requires KF5DesignerPlugin) -RESTRICT="test" - -COMMON_DEPEND=" - >=app-crypt/qca-2.3.0:2[qt5(+)] - dev-db/sqlcipher - dev-libs/grantlee:5 - >=dev-qt/qtconcurrent-${QTMIN}:5 - >=dev-qt/qtdbus-${QTMIN}:5 - >=dev-qt/qtdeclarative-${QTMIN}:5[widgets] - >=dev-qt/qtgui-${QTMIN}:5 - >=dev-qt/qtnetwork-${QTMIN}:5 - >=dev-qt/qtprintsupport-${QTMIN}:5 - >=dev-qt/qtscript-${QTMIN}:5 - >=dev-qt/qtsql-${QTMIN}:5= - >=dev-qt/qtsvg-${QTMIN}:5 - >=dev-qt/qtwebengine-${QTMIN}:5[widgets] - >=dev-qt/qtwidgets-${QTMIN}:5 - >=dev-qt/qtxml-${QTMIN}:5 - >=dev-qt/qtxmlpatterns-${QTMIN}:5 - >=kde-frameworks/karchive-${KFMIN}:5 - >=kde-frameworks/kcompletion-${KFMIN}:5 - >=kde-frameworks/kconfig-${KFMIN}:5 - >=kde-frameworks/kconfigwidgets-${KFMIN}:5 - >=kde-frameworks/kcoreaddons-${KFMIN}:5 - >=kde-frameworks/kdbusaddons-${KFMIN}:5 - >=kde-frameworks/ki18n-${KFMIN}:5 - >=kde-frameworks/kiconthemes-${KFMIN}:5 - >=kde-frameworks/kio-${KFMIN}:5 - >=kde-frameworks/kitemviews-${KFMIN}:5 - >=kde-frameworks/knewstuff-${KFMIN}:5 - >=kde-frameworks/knotifications-${KFMIN}:5 - >=kde-frameworks/knotifyconfig-${KFMIN}:5 - >=kde-frameworks/kparts-${KFMIN}:5 - >=kde-frameworks/kservice-${KFMIN}:5 - >=kde-frameworks/ktextwidgets-${KFMIN}:5 - >=kde-frameworks/kwallet-${KFMIN}:5 - >=kde-frameworks/kwidgetsaddons-${KFMIN}:5 - >=kde-frameworks/kxmlgui-${KFMIN}:5 - activities? ( >=kde-plasma/plasma-activities-${KFMIN}:5 ) - kde? ( >=kde-frameworks/krunner-${KFMIN}:5 ) - ofx? ( dev-libs/libofx:= ) -" -DEPEND="${COMMON_DEPEND} - >=kde-frameworks/kguiaddons-${KFMIN}:5 - >=kde-frameworks/kjobwidgets-${KFMIN}:5 - >=kde-frameworks/kwindowsystem-${KFMIN}:5 -" -RDEPEND="${COMMON_DEPEND} - >=dev-qt/qtquickcontrols-${QTMIN}:5 -" -BDEPEND=" - dev-libs/libxslt - virtual/pkgconfig -" - -src_configure() { - local mycmakeargs=( - -DSKG_WEBENGINE=ON - -DSKG_WEBKIT=OFF - -DSKG_DESIGNER=OFF - $(cmake_use_find_package activities KF5Activities) - $(cmake_use_find_package kde KF5Runner) - $(cmake_use_find_package ofx LibOfx) - -DSKG_BUILD_TEST=$(usex test) - ) - - ecm_src_configure -} - -src_test() { - local mycmakeargs=( - -DSKG_BUILD_TEST=ON - ) - ecm_src_test -} diff --git a/dev-libs/kirigami-addons/Manifest b/dev-libs/kirigami-addons/Manifest index eb5ec2b12aba..5139b58b28a4 100644 --- a/dev-libs/kirigami-addons/Manifest +++ b/dev-libs/kirigami-addons/Manifest @@ -1,2 +1,2 @@ DIST kirigami-addons-0.11.0.tar.xz 136692 BLAKE2B 26301176ddeaea3aec351207e82dc28a56e465aa6bc6d3bfd23b1feaa5d14cc0821a4c39fdf5eee3d134a8ed9bbcb5e503ee31d3864185c57bb0fcb788744f2d SHA512 f5a721eee6d0ebd37e67cdb5f89aba81136eb4ac23bc042b7d9bedd6a33f96f913353e1d83ec91e6997a8eea5e2834d9203eb7cd286eed1157149ecedeab6b89 -DIST kirigami-addons-1.2.0.tar.xz 1156176 BLAKE2B c620597853c6fa75080f41b9c0e863899c63ea10b4cee436063c0b26ccf7b7422a20c2736dd8dc46e566a33b2f21a7eda31b1d05cb191b2d603e863860fc48e6 SHA512 608c56f21953b9ed451377ea234aafd53529f1b278c2f720f3143a0c1fa8364c4d4701cad1deb063cd0363aeb5bf73d1c9d40c0e7652fea9e74f54963399c993 +DIST kirigami-addons-1.2.1.tar.xz 1157936 BLAKE2B 0df5296ac7985d3dfda8c486275938282eee97d94b118be38714549958205d1d6515faa78e3a5347bd11db34535a6cc2f973ff955bd3e1e10c5bb4a96b1f313d SHA512 bdb635f147cb78d0b92bda2c72c72577682cbc3965c232d106113b5de4fb9193e1d18d409d6bc7af2b2aebc613d0c175a27b294e7259bf08e3c41db1ef0601f3 diff --git a/dev-libs/kirigami-addons/kirigami-addons-1.2.0.ebuild b/dev-libs/kirigami-addons/kirigami-addons-1.2.1.ebuild index 6dbb76533a46..6dbb76533a46 100644 --- a/dev-libs/kirigami-addons/kirigami-addons-1.2.0.ebuild +++ b/dev-libs/kirigami-addons/kirigami-addons-1.2.1.ebuild diff --git a/dev-python/a2wsgi/a2wsgi-1.10.4.ebuild b/dev-python/a2wsgi/a2wsgi-1.10.4.ebuild index df53d55470fc..5e3d6a8de4f6 100644 --- a/dev-python/a2wsgi/a2wsgi-1.10.4.ebuild +++ b/dev-python/a2wsgi/a2wsgi-1.10.4.ebuild @@ -4,7 +4,7 @@ EAPI=8 DISTUTILS_USE_PEP517=pdm-backend -PYTHON_COMPAT=( pypy3 python3_{10..12} ) +PYTHON_COMPAT=( pypy3 python3_{10..13} ) inherit distutils-r1 pypi diff --git a/dev-python/dirty-equals/dirty-equals-0.7.1.ebuild b/dev-python/dirty-equals/dirty-equals-0.7.1.ebuild index 36c776c91dad..fd70ed6710e3 100644 --- a/dev-python/dirty-equals/dirty-equals-0.7.1.ebuild +++ b/dev-python/dirty-equals/dirty-equals-0.7.1.ebuild @@ -1,10 +1,10 @@ -# Copyright 2022-2023 Gentoo Authors +# Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=hatchling -PYTHON_COMPAT=( python3_{10..12} pypy3 ) +PYTHON_COMPAT=( python3_{10..13} pypy3 ) inherit distutils-r1 @@ -29,8 +29,10 @@ RDEPEND=" BDEPEND=" test? ( dev-python/packaging[${PYTHON_USEDEP}] - >=dev-python/pydantic-2.4.2[${PYTHON_USEDEP}] dev-python/pytest-mock[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/pydantic-2.4.2[${PYTHON_USEDEP}] + ' 3.{10..12}) ) " @@ -42,6 +44,12 @@ python_test() { tests/test_docs.py ) + if ! has_version "dev-python/pydantic[${PYTHON_USEDEP}]"; then + EPYTEST_IGNORE+=( + tests/test_other.py + ) + fi + local -x TZ=UTC epytest "${args[@]}" } diff --git a/dev-python/hatchling/hatchling-1.24.2.ebuild b/dev-python/hatchling/hatchling-1.24.2.ebuild index cd7357e2a552..4d265ef65886 100644 --- a/dev-python/hatchling/hatchling-1.24.2.ebuild +++ b/dev-python/hatchling/hatchling-1.24.2.ebuild @@ -4,8 +4,8 @@ EAPI=8 DISTUTILS_USE_PEP517=standalone -PYTHON_TESTED=( pypy3 python3_{10..12} ) -PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_13 ) +PYTHON_TESTED=( pypy3 python3_{10..13} ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) inherit distutils-r1 diff --git a/dev-python/httpx/files/httpx-0.27.0-opt-trio.patch b/dev-python/httpx/files/httpx-0.27.0-opt-trio.patch new file mode 100644 index 000000000000..6c2c9e67255f --- /dev/null +++ b/dev-python/httpx/files/httpx-0.27.0-opt-trio.patch @@ -0,0 +1,17 @@ +diff --git a/tests/concurrency.py b/tests/concurrency.py +index a8ed558..d5ce803 100644 +--- a/tests/concurrency.py ++++ b/tests/concurrency.py +@@ -5,11 +5,11 @@ Async environment-agnostic concurrency utilities that are only used in tests. + import asyncio + + import sniffio +-import trio + + + async def sleep(seconds: float) -> None: + if sniffio.current_async_library() == "trio": ++ import trio + await trio.sleep(seconds) # pragma: no cover + else: + await asyncio.sleep(seconds) diff --git a/dev-python/httpx/httpx-0.27.0.ebuild b/dev-python/httpx/httpx-0.27.0.ebuild index 108c55923dff..0a648891634c 100644 --- a/dev-python/httpx/httpx-0.27.0.ebuild +++ b/dev-python/httpx/httpx-0.27.0.ebuild @@ -4,7 +4,7 @@ EAPI=8 DISTUTILS_USE_PEP517=hatchling -PYTHON_COMPAT=( pypy3 python3_{10..12} ) +PYTHON_COMPAT=( pypy3 python3_{10..13} ) inherit distutils-r1 optfeature @@ -44,16 +44,22 @@ BDEPEND=" dev-python/cryptography[${PYTHON_USEDEP}] dev-python/h2[${PYTHON_USEDEP}] dev-python/socksio[${PYTHON_USEDEP}] - dev-python/trio[${PYTHON_USEDEP}] dev-python/trustme[${PYTHON_USEDEP}] dev-python/typing-extensions[${PYTHON_USEDEP}] dev-python/uvicorn[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/trio[${PYTHON_USEDEP}] + ' 3.{10..12}) ) " distutils_enable_tests pytest src_prepare() { + local PATCHES=( + "${FILESDIR}/${P}-opt-trio.patch" + ) + if ! use cli; then sed -i -e '/^httpx =/d' pyproject.toml || die fi @@ -63,6 +69,7 @@ src_prepare() { } python_test() { + local args=() local EPYTEST_DESELECT=( # Internet tests/client/test_proxies.py::test_async_proxy_close @@ -73,7 +80,11 @@ python_test() { tests/test_main.py ) - epytest + if ! has_version "dev-python/trio[${PYTHON_USEDEP}]"; then + args+=( -o filterwarnings= -k "not trio" ) + fi + + epytest "${args[@]}" } pkg_postinst() { diff --git a/dev-python/uvicorn/uvicorn-0.29.0.ebuild b/dev-python/uvicorn/uvicorn-0.29.0.ebuild index d0e9d96c1377..6ca97c2d20bf 100644 --- a/dev-python/uvicorn/uvicorn-0.29.0.ebuild +++ b/dev-python/uvicorn/uvicorn-0.29.0.ebuild @@ -4,7 +4,7 @@ EAPI=8 DISTUTILS_USE_PEP517=hatchling -PYTHON_COMPAT=( pypy3 python3_{10..12} ) +PYTHON_COMPAT=( pypy3 python3_{10..13} ) inherit distutils-r1 optfeature diff --git a/dev-python/watchfiles/watchfiles-0.21.0-r1.ebuild b/dev-python/watchfiles/watchfiles-0.21.0-r1.ebuild index be9a6d699ce6..1664fa0c1156 100644 --- a/dev-python/watchfiles/watchfiles-0.21.0-r1.ebuild +++ b/dev-python/watchfiles/watchfiles-0.21.0-r1.ebuild @@ -5,7 +5,7 @@ EAPI=8 DISTUTILS_EXT=1 DISTUTILS_USE_PEP517=maturin -PYTHON_COMPAT=( python3_{10..12} pypy3 ) +PYTHON_COMPAT=( python3_{10..13} pypy3 ) CRATES=" autocfg@1.1.0 diff --git a/dev-qt/qtwebengine/Manifest b/dev-qt/qtwebengine/Manifest index e4df2266f64c..7be52262b7bb 100644 --- a/dev-qt/qtwebengine/Manifest +++ b/dev-qt/qtwebengine/Manifest @@ -1,5 +1,6 @@ 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 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." +} diff --git a/eclass/cargo.eclass b/eclass/cargo.eclass index 5a16d3a30528..0f2da982f60c 100644 --- a/eclass/cargo.eclass +++ b/eclass/cargo.eclass @@ -329,50 +329,40 @@ _cargo_gen_git_config() { cargo_src_unpack() { debug-print-function ${FUNCNAME} "$@" - mkdir -p "${ECARGO_VENDOR}" "${S}" || die + mkdir -p "${ECARGO_VENDOR}" || die + mkdir -p "${S}" || die local archive shasum pkg - local crates=() for archive in ${A}; do case "${archive}" in *.crate) - crates+=( "${archive}" ) + # when called by pkgdiff-mg, do not unpack crates + [[ ${PKGBUMPING} == ${PVR} ]] && continue + + ebegin "Loading ${archive} into Cargo registry" + tar -xf "${DISTDIR}"/${archive} -C "${ECARGO_VENDOR}/" || die + # generate sha256sum of the crate itself as cargo needs this + shasum=$(sha256sum "${DISTDIR}"/${archive} | cut -d ' ' -f 1) + pkg=$(basename ${archive} .crate) + cat <<- EOF > ${ECARGO_VENDOR}/${pkg}/.cargo-checksum.json + { + "package": "${shasum}", + "files": {} + } + EOF + # if this is our target package we need it in ${WORKDIR} too + # to make ${S} (and handle any revisions too) + if [[ ${P} == ${pkg}* ]]; then + tar -xf "${DISTDIR}"/${archive} -C "${WORKDIR}" || die + fi + eend $? ;; *) - unpack "${archive}" + unpack ${archive} ;; esac done - if [[ ${PKGBUMPING} != ${PVR} ]]; then - pushd "${DISTDIR}" >/dev/null || die - - ebegin "Unpacking crates" - printf '%s\0' "${crates[@]}" | - xargs -0 -P "$(makeopts_jobs)" -n 1 -- \ - tar -x -C "${ECARGO_VENDOR}" -f - assert - eend $? - - while read -d '' -r shasum archive; do - pkg=${archive%.crate} - cat <<- EOF > ${ECARGO_VENDOR}/${pkg}/.cargo-checksum.json || die - { - "package": "${shasum}", - "files": {} - } - EOF - - # if this is our target package we need it in ${WORKDIR} too - # to make ${S} (and handle any revisions too) - if [[ ${P} == ${pkg}* ]]; then - tar -xf "${archive}" -C "${WORKDIR}" || die - fi - done < <(sha256sum -z "${crates[@]}" || die) - - popd >/dev/null || die - fi - cargo_gen_config } diff --git a/profiles/package.mask b/profiles/package.mask index 5a3b36bcfd7c..b65241a07e0f 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -738,7 +738,7 @@ sec-keys/openpgp-keys-jiatan ~dev-db/futuresql-0.1.1 ~dev-libs/appstream-1.0.3 ~dev-libs/kdiagram-3.0.1 -~dev-libs/kirigami-addons-1.2.0 +~dev-libs/kirigami-addons-1.2.1 ~dev-libs/ktextaddons-1.5.4 ~dev-libs/kweathercore-0.8.0 ~dev-util/massif-visualizer-0.8.0 |