From e748ba9741f6540f4675c23e3e37b73e822c13a4 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 31 May 2021 20:59:14 +0100 Subject: gentoo resync : 31.05.2021 --- dev-qt/Manifest.gz | Bin 10359 -> 10360 bytes dev-qt/qtwebengine/Manifest | 3 + .../files/qtwebengine-5.15.2_p20210521-gcc11.patch | 74 +++++++ .../qtwebengine-5.15.2_p20210521.ebuild | 215 +++++++++++++++++++++ 4 files changed, 292 insertions(+) create mode 100644 dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210521-gcc11.patch create mode 100644 dev-qt/qtwebengine/qtwebengine-5.15.2_p20210521.ebuild (limited to 'dev-qt') diff --git a/dev-qt/Manifest.gz b/dev-qt/Manifest.gz index 51c4e8c7573f..2b36f8aca5e4 100644 Binary files a/dev-qt/Manifest.gz and b/dev-qt/Manifest.gz differ diff --git a/dev-qt/qtwebengine/Manifest b/dev-qt/qtwebengine/Manifest index 3a862c73c966..f1452b310ed2 100644 --- a/dev-qt/qtwebengine/Manifest +++ b/dev-qt/qtwebengine/Manifest @@ -7,9 +7,12 @@ AUX qtwebengine-5.15.2_p20210406-gcc11.patch 5995 BLAKE2B eb2a24020240c0fb87169c AUX qtwebengine-5.15.2_p20210406-glibc-2.33.patch 5361 BLAKE2B 92ead1bfe2be883e7438813441091e23466d060f278bb150f1d8f24e65cd847202142ed6a70a2d2bc683d2af90966ce25555f0d62bde1f3125fdf8a5343ed56f SHA512 827866ea1363273a8efc20793205ec20762ab4bd951fb837510d1cdd0a5df499958a1fb89566e4028f7781b48e439ed41dcfb127882475fc5fde4f82dcf78891 AUX qtwebengine-5.15.2_p20210406-icu69.patch 3299 BLAKE2B 0b1eaf1c86adc9f95195c1dde4d6a58e66394144f4d4052120748c7560f58b60dabf5b18b5957b8ab7a9777207266669408f4015448409d23a5fdada73e459aa SHA512 4ebfc3307a1ea3ef2297945369682620fdb6c6035590c23c33bc349d5485fbd52e0f046a33d4093a6ada3426cf893e2e7e5b8b9cb28bb9e77e07e605caf0e303 AUX qtwebengine-5.15.2_p20210421-qtbug-91773.patch 18562 BLAKE2B 5b3575cb967fda8b2a49afb7e9c3993f07a3076e34bb817de17a639631e214566505c97bebfc55873bb407212c2be6c41406190c74625a6289e510d88a4b3b11 SHA512 e850d949f3342e63098c7a97201408cc0ffc6bcd184f10e31457ffa80fdfe4ba646de83d3478728f94bda82e704c2a2bd424ff68dfedefb8c3a849db6ea25f91 +AUX qtwebengine-5.15.2_p20210521-gcc11.patch 3642 BLAKE2B 9b5085dbb201b12c3476bb9fb340a65021718802da545bb34a3bc03a02d11e95cf677497588711ff7f3f297ea4a6b4a882c865f87158e69582f8875bba0b0931 SHA512 fdd8da9d4353ce78f6b2c789422a3deee80e74feed5fcce4c8929b0814a9f21734e31fdbb0388a3f152d380b2eb14508be6f4f9ffeaee5913d299873a94135c2 DIST qtwebengine-5.15.2-chromium87-ppc64le.tar.xz 28536 BLAKE2B 98f8e01e7026d9df1d30ae453d4394d3c4ad04c0620a2496235d45f5f1080c2280e040826cde7f72d9771bfc80d0c3df56c9dcbe4f763cec432ad56de37d64c5 SHA512 c90a76f44a9d720624016fd082ab3036f12e13b9789e869ebaf5e4774afca7d4187faf187f365f696d1a7eda05ca75516556ee9d291cdb3408d57cc4b23e2654 DIST qtwebengine-5.15.2_p20210224.tar.xz 320052028 BLAKE2B a1ebaae7cf114041576f4920de1e484bea70c715a470e83e7c47bd8ff95480fc4e408bba173990480732bd464a9eb07d304f4afdb90d943c0a8cbe1e8299df84 SHA512 939292511703f3a6d758d38f1c860ffacd003be65761b19f23e8817bf1121cb9e6351216f737126d8defb1c97ca877e1c6f352e7cfee8e9289274d0793348b51 DIST qtwebengine-5.15.2_p20210421.tar.xz 320142308 BLAKE2B 1ed6e3daad8e8da7336c1575f524f1474eb043a44a86eebdc2375e9a01dbb21a4bf622b01525c627ff5846bb375b19617ca78f418749d6e4ce53b376da0b8317 SHA512 3a57cc8eb1aab086ae2ef69b1b1eaac47827d1f460ff53d5954b0dcb6753cc0e5fb24db490ea186141e6659e26a59862e8096126450a9fde6ed1230c00e4ceaa +DIST qtwebengine-5.15.2_p20210521.tar.xz 320126348 BLAKE2B 49a910d19487a720bca751d40bb694536d2ac7002b10de5b949b9bb98baf5f86001e89f522bb05edafc5c050a55f7ac15b6689138cff0912990472735a46bfbc SHA512 f71941667abd1a797442dedb501010cb67512e2df9a818b15ff8901a49987211bddcba80e7cc2a4652db9bf56fc9d969e8fa38de1f3ad112838a1a9c9facde8f EBUILD qtwebengine-5.15.2_p20210224.ebuild 6102 BLAKE2B 95277049fbf85a438c9faef8715334acb8c6e9dade7ff76dd654f5a768c0881253c08a8415e65a2b00d695c9ad4c021ff0e1db29450256ec48a2d49937c983fa SHA512 706b777e4238d774ab6c54574e9a0ee493203a829aadd1d4e43d6196ababb7b2de94ac9c8803d3cc30e503fd9457bbec1a98bd16d56d5da5fe05c03fafa38447 EBUILD qtwebengine-5.15.2_p20210421.ebuild 7012 BLAKE2B 154796e002034c4a323cb654c67790748fc65be4e5674b4a868515b30d6893d3f9c092a62f40a3cd921e42b24cade6e00705adb6f8a9656e913f3290690ffed2 SHA512 9648d57406cf0f543c19822d3c232682c5cf6560c8174b57d1f385feaec465ae12991f679d53413ad527e7043e7137ec145340da3fe278d4d561c96c19f7b6e5 +EBUILD qtwebengine-5.15.2_p20210521.ebuild 6874 BLAKE2B 829f6f7f578298ae4d48ecb85bb9360b32439b5960960a38f3aa0e2320092dc81304c31a99f72da834f71744b4ec93780ac00752622cda142a47bbad6a895ce0 SHA512 7db3fa5d0563053afd109c36b692de1d7daec974a705ec8cc2778b1f7bd3f9930fff5a1b15e7a8b9f4d3bff4f2024a72b1e5476f5ec5eaa19b6636c3251af933 MISC metadata.xml 1269 BLAKE2B f95392929bcecbce9334108e3446d631e2a91d1aceb0fa6347496d2d0eeaff8cff55e08b7c3bb39fb8b51667988a6cc2b8e500143f2ebe0d78e6985a6f7af3c1 SHA512 7949854cf55f26750ded6787ce295762af7fd16600f8b251b25e1c9dd4d643338ed4c3b2a8a3405a2c427ed8b5a9ad13a8566a640161768d4dbf6db7e54811a3 diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210521-gcc11.patch b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210521-gcc11.patch new file mode 100644 index 000000000000..0014ec135441 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210521-gcc11.patch @@ -0,0 +1,74 @@ +diff --git a/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp b/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp +index 013f1dfb2..3ce63c192 100644 +--- a/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp ++++ b/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp +@@ -9,6 +9,7 @@ + + #include "libANGLE/HandleAllocator.h" + ++#include + #include + #include + +diff --git a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc +index be91def6b..73f202356 100644 +--- a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc ++++ b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc +@@ -245,7 +245,7 @@ static void AXPlatformAtkHyperlinkInit(AXPlatformAtkHyperlink* self, gpointer) { + } + + GType ax_platform_atk_hyperlink_get_type() { +- static volatile gsize type_volatile = 0; ++ static gsize type_volatile = 0; + + AXPlatformNodeAuraLinux::EnsureGTypeInit(); + +diff --git a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc +index 04125c6fd..6c64e5d8e 100644 +--- a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc ++++ b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc +@@ -2274,7 +2274,7 @@ void ClassInit(gpointer class_pointer, gpointer /* class_data */) { + GType GetType() { + AXPlatformNodeAuraLinux::EnsureGTypeInit(); + +- static volatile gsize type_volatile = 0; ++ static gsize type_volatile = 0; + if (g_once_init_enter(&type_volatile)) { + static const GTypeInfo type_info = { + sizeof(AXPlatformNodeAuraLinuxClass), // class_size +diff --git a/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc b/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc +index c663a2074..38a342484 100644 +--- a/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc ++++ b/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc +@@ -141,7 +141,7 @@ void GtkKeyBindingsHandler::HandlerClassInit(HandlerClass* klass) { + } + + GType GtkKeyBindingsHandler::HandlerGetType() { +- static volatile gsize type_id_volatile = 0; ++ static gsize type_id_volatile = 0; + if (g_once_init_enter(&type_id_volatile)) { + GType type_id = g_type_register_static_simple( + GTK_TYPE_TEXT_VIEW, g_intern_static_string("GtkKeyBindingsHandler"), +--- a/src/3rdparty/chromium/components/bookmarks/browser/bookmark_expanded_state_tracker.cc ++++ b/src/3rdparty/chromium/components/bookmarks/browser/bookmark_expanded_state_tracker.cc +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include "components/bookmarks/browser/bookmark_expanded_state_tracker.h" + + #include +diff --git a/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc b/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc +index 657a3c96b..ad641a082 100644 +--- a/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc ++++ b/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc +@@ -2,6 +2,8 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include ++ + #include "components/bookmarks/browser/base_bookmark_model_observer.h" + + namespace bookmarks { diff --git a/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210521.ebuild b/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210521.ebuild new file mode 100644 index 000000000000..4d991de9d35e --- /dev/null +++ b/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210521.ebuild @@ -0,0 +1,215 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python2_7 ) +QTVER=$(ver_cut 1-3) +inherit estack flag-o-matic multiprocessing python-any-r1 qt5-build + +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 ~arm ~arm64 ~ppc64 ~x86" + if [[ ${PV} == ${QTVER}_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 + +# patchset based on https://github.com/chromium-ppc64le releases +SRC_URI+=" ppc64? ( https://dev.gentoo.org/~gyakovlev/distfiles/${PN}-5.15.2-chromium87-ppc64le.tar.xz )" + +IUSE="alsa bindist designer geolocation +jumbo-build kerberos pulseaudio +system-ffmpeg +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-${QTVER} + ~dev-qt/qtdeclarative-${QTVER} + ~dev-qt/qtgui-${QTVER} + ~dev-qt/qtnetwork-${QTVER} + ~dev-qt/qtprintsupport-${QTVER} + ~dev-qt/qtwebchannel-${QTVER}[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/mesa[egl,X(+)] + 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/libXrandr + x11-libs/libXrender + x11-libs/libXScrnSaver + x11-libs/libXtst + alsa? ( media-libs/alsa-lib ) + designer? ( ~dev-qt/designer-${QTVER} ) + geolocation? ( ~dev-qt/qtpositioning-${QTVER} ) + kerberos? ( virtual/krb5 ) + pulseaudio? ( media-sound/pulseaudio:= ) + system-ffmpeg? ( media-video/ffmpeg:0= ) + system-icu? ( >=dev-libs/icu-68.2:= ) + widgets? ( + ~dev-qt/qtdeclarative-${QTVER}[widgets] + ~dev-qt/qtwidgets-${QTVER} + ) +" +DEPEND="${RDEPEND}" +BDEPEND="${PYTHON_DEPS} + dev-util/gperf + dev-util/ninja + dev-util/re2c + net-libs/nodejs[ssl] + sys-devel/bison + ppc64? ( >=dev-util/gn-0.1807 ) +" + +PATCHES=( + "${FILESDIR}/${PN}-5.15.0-disable-fatal-warnings.patch" # bug 695446 + "${FILESDIR}/${PN}-5.15.2_p20210224-chromium-87-v8-icu68.patch" # downstream, bug 757606 + "${FILESDIR}/${PN}-5.15.2_p20210224-disable-git.patch" # downstream snapshot fix + "${FILESDIR}/${PN}-5.15.2_p20210406-glibc-2.33.patch" # by Fedora, bug 769989 + "${FILESDIR}/${P}-gcc11.patch" # by Fedora, bug 768261 +) + +src_unpack() { + # bug 307861 + eshopts_push -s extglob + if is-flagq '-g?(gdb)?([1-9])'; then + ewarn + 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." + ewarn + fi + eshopts_pop + + case ${QT5_BUILD_TYPE} in + live) git-r3_src_unpack ;& + release) default ;; + esac +} + +src_prepare() { + if [[ ${PV} == ${QTVER}_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 + + # We need to make sure this integrates well into Qt 5.15.2 installation. + # Otherwise revdeps fail w/o heavy changes. This is the simplest way to do it. + sed -e "/^MODULE_VERSION/s/5.*/${QTVER}/" -i .qmake.conf || die + fi + + # 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 630834 - pass appropriate options to ninja when building GN + sed -e "s/\['ninja'/&, '-j$(makeopts_jobs)', '-l$(makeopts_loadavg "${MAKEOPTS}" 0)', '-v'/" \ + -i src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py || die + + # 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 + + 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 + + # we need to generate ppc64 stuff because upstream does not ship it yet + if use ppc64; then + einfo "Patching for ppc64le and generating build files" + eapply "${FILESDIR}/qtwebengine-5.15.2-enable-ppc64.patch" + pushd src/3rdparty/chromium > /dev/null || die + eapply -p0 "${WORKDIR}/${PN}-ppc64le" + popd > /dev/null || die + pushd src/3rdparty/chromium/third_party/libvpx > /dev/null || die + mkdir -vp source/config/linux/ppc64 || die + mkdir -p source/libvpx/test || die + touch source/libvpx/test/test.mk || die + ./generate_gni.sh || die + popd >/dev/null || die + fi +} + +src_configure() { + export NINJA_PATH=/usr/bin/ninja + export NINJAFLAGS="${NINJAFLAGS:--j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v}" + + local myqmakeargs=( + -- + -no-build-qtpdf + -printing-and-pdf + -system-opus + -system-webp + $(usex alsa '-alsa' '-no-alsa') + $(usex bindist '-no-proprietary-codecs' '-proprietary-codecs') + $(usex geolocation '-webengine-geolocation' '-no-webengine-geolocation') + $(usex kerberos '-webengine-kerberos' '-no-webengine-kerberos') + $(usex pulseaudio '-pulseaudio' '-no-pulseaudio') + $(usex system-ffmpeg '-system-ffmpeg' '-qt-ffmpeg') + $(usex system-icu '-webengine-icu' '-no-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 +} -- cgit v1.2.3