commit:     013acd8314e8c46f29aab2fdcc69339b205131af
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 21 15:36:51 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Feb 23 20:26:29 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=013acd83

dev-qt/qtwebengine: 5.15.2_p20210220 bump, no KEYWORDS for now

Snapshotted at:
Branch: 5.15
Commit: 0b5f110234256eabaa264189d9117069f2a2d144

Submodule qtwebengine-chromium.git:
Branch: 87-based
Commit: d77379c520980bea4f53e093c0a130d57155c2ad

V8-ICU-68 runtime fix:
Thanks-to: Stephan Hartmann <sultan <AT> gentoo.org>

Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 dev-qt/qtwebengine/Manifest                        |   1 +
 ...ine-5.15.2_p20210220-chromium-87-v8-icu68.patch | 192 +++++++++++++++++++++
 .../qtwebengine-5.15.2_p20210220-disable-git.patch |  15 ++
 ...2_p20210220-fixup-CVE-2021-21149-backport.patch |  42 +++++
 .../qtwebengine-5.15.2_p20210220.ebuild            | 184 ++++++++++++++++++++
 5 files changed, 434 insertions(+)

diff --git a/dev-qt/qtwebengine/Manifest b/dev-qt/qtwebengine/Manifest
index 8e7d67bb1e8..ac12b6baffd 100644
--- a/dev-qt/qtwebengine/Manifest
+++ b/dev-qt/qtwebengine/Manifest
@@ -1,3 +1,4 @@
 DIST qtwebengine-5.15.2-ppc64.tar.xz 43868 BLAKE2B 
97a2db64c688cc3ce178a6f00c29d3408221302c992bf0df31edd5c11f7cd978b92d9222201644991fca4fc0824b19d994a71c472732dbbdda3729bdd04a67f3
 SHA512 
835e7da4670cd823a1674052d64971bfd98d54edb6c5df8e9d09aa8103d496a4c16f0eb9d47c46db466e1c640e3326d4e43b284161129d648bfe693a902ec9cc
 DIST qtwebengine-5.15.2_p20210205.tar.xz 317422912 BLAKE2B 
a5cdbea0347db21b7fb981a358ad6419ea9cebef98f3d8fef3618b9010164986257cb87caef6a09648e463c3b864ce28e0591a2a783b8b5727b69d85b4b3289c
 SHA512 
8e8b4918f7c3232aafd9f2d13655501e0d03d90514ef3a0b8319df1c8792aeaf7800f370cee15634c708ee14f86ef831749556cb6710578d03c3c2e468149be0
+DIST qtwebengine-5.15.2_p20210220.tar.xz 320087924 BLAKE2B 
8db495e853948d8a47d04d34e8f2e99f33423874026d447fd119be885c74671f6566f8ba34f6e37ed5abcc347150213bef9575cc61b80ee8fbc4a005c2448df8
 SHA512 
7502a3d7df68764d1ed8953f8bd8a6def88344c56800bf32d1527133bceaf669f2ef6899dd2b4f23ca284ad5f0a9b086f1807f3a5f0a482b0744d1ba2391c480
 DIST qtwebengine-everywhere-src-5.15.2.tar.xz 280142544 BLAKE2B 
cf84a07292e69b5746d6575d65295b5bf4e054d448361f26e63cbe20ddd0773f60893e656d74b3b8c191e2829e09398a65896c8d96d3a7ef210ac1f21cd90e63
 SHA512 
de64c30819f5e2f8620c853ff22b2f9717641477aef4432a552a72d1d67ed62ed61572afee6de3f2c9f32dee28f4f786ffd63fc465aa42c0ae1e87ea28341756

diff --git 
a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210220-chromium-87-v8-icu68.patch
 
b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210220-chromium-87-v8-icu68.patch
new file mode 100644
index 00000000000..a6856975a66
--- /dev/null
+++ 
b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210220-chromium-87-v8-icu68.patch
@@ -0,0 +1,192 @@
+From b0a7f5691113534c2cf771f2dd3cece5e93bc7d4 Mon Sep 17 00:00:00 2001
+From: Frank Tang <[email protected]>
+Date: Tue, 03 Nov 2020 23:20:37 -0800
+Subject: [PATCH] Update to ICU68-1
+
+ICU68-1 change the output skeleton format. So we need to change
+resolvedOptions code for 68 migration.
+
+Chromium roll
+https://chromium-review.googlesource.com/c/chromium/src/+/2474093
+
+Bug: v8:10945
+Change-Id: I3b2c7fbe8abb22df8fa51287c498ca3245b8c55b
+Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2477431
+Commit-Queue: Frank Tang <[email protected]>
+Reviewed-by: Jakob Kummerow <[email protected]>
+Reviewed-by: Shu-yu Guo <[email protected]>
+Cr-Commit-Position: refs/heads/master@{#70972}
+
+(ported to work with <ICU-68.1 and rebased chromium)
+---
+
+diff --git a/src/3rdparty/chromium/v8/src/objects/js-number-format.cc 
b/src/3rdparty/chromium/v8/src/objects/js-number-format.cc
+index 45b0eab..d18b133 100644
+--- a/src/3rdparty/chromium/v8/src/objects/js-number-format.cc
++++ b/src/3rdparty/chromium/v8/src/objects/js-number-format.cc
+@@ -389,17 +389,20 @@ Handle<String> CurrencySignString(Isolate* isolate,
+ Handle<String> UnitDisplayString(Isolate* isolate,
+                                  const icu::UnicodeString& skeleton) {
+   // Ex: skeleton as
+-  // "measure-unit/length-meter .### rounding-mode-half-up 
unit-width-full-name"
++  // <ICU-68.1:  "measure-unit/length-meter .### rounding-mode-half-up 
unit-width-full-name".
++  // >=ICU-68.1: "unit/length-meter .### rounding-mode-half-up 
unit-width-full-name"
+   if (skeleton.indexOf("unit-width-full-name") >= 0) {
+     return ReadOnlyRoots(isolate).long_string_handle();
+   }
+   // Ex: skeleton as
+-  // "measure-unit/length-meter .### rounding-mode-half-up unit-width-narrow".
++  // <ICU-68.1:  "measure-unit/length-meter .### rounding-mode-half-up 
unit-width-narrow".
++  // >=ICU-68.1: "unit/length-meter .### rounding-mode-half-up 
unit-width-narrow".
+   if (skeleton.indexOf("unit-width-narrow") >= 0) {
+     return ReadOnlyRoots(isolate).narrow_string_handle();
+   }
+   // Ex: skeleton as
+-  // "measure-unit/length-foot .### rounding-mode-half-up"
++  // <ICU-68.1:  "measure-unit/length-foot .### rounding-mode-half-up"
++  // >=ICU-68.1: "unit/length-foot .### rounding-mode-half-up"
+   return ReadOnlyRoots(isolate).short_string_handle();
+ }
+ 
+@@ -422,7 +425,8 @@ Notation NotationFromSkeleton(const icu::UnicodeString& 
skeleton) {
+     return Notation::COMPACT;
+   }
+   // Ex: skeleton as
+-  // "measure-unit/length-foot .### rounding-mode-half-up"
++  // <ICU-68.1:  "measure-unit/length-foot .### rounding-mode-half-up"
++  // >=ICU-68.1: "unit/length-foot .### rounding-mode-half-up"
+   return Notation::STANDARD;
+ }
+ 
+@@ -562,14 +566,23 @@ namespace {
+ 
+ // Ex: percent .### rounding-mode-half-up
+ // Special case for "percent"
+-// Ex: "measure-unit/length-kilometer per-measure-unit/duration-hour .###
+-// rounding-mode-half-up" should return "kilometer-per-unit".
+-// Ex: "measure-unit/duration-year .### rounding-mode-half-up" should return
+-// "year".
++// <ICU-68.1:
++//   Ex: "measure-unit/length-kilometer per-measure-unit/duration-hour .###
++//   rounding-mode-half-up" should return "kilometer-per-unit".
++//   Ex: "measure-unit/duration-year .### rounding-mode-half-up" should return
++// >=ICU-68.1:
++//   Ex: "unit/milliliter-per-acre .### rounding-mode-half-up"
++//   should return "milliliter-per-acre".
++//   Ex: "unit/year .### rounding-mode-half-up" should return
++//   "year".
+ std::string UnitFromSkeleton(const icu::UnicodeString& skeleton) {
+   std::string str;
+   str = skeleton.toUTF8String<std::string>(str);
++#if U_ICU_VERSION_MAJOR_NUM < 68
+   std::string search("measure-unit/");
++#else
++  std::string search("unit/");
++#endif
+   size_t begin = str.find(search);
+   if (begin == str.npos) {
+     // Special case for "percent".
+@@ -578,20 +591,41 @@ std::string UnitFromSkeleton(const icu::UnicodeString& 
skeleton) {
+     }
+     return "";
+   }
++#if U_ICU_VERSION_MAJOR_NUM < 68
+   // Skip the type (ex: "length").
+   // "measure-unit/length-kilometer per-measure-unit/duration-hour"
+   //                     b
+   begin = str.find("-", begin + search.size());
++#else
++  // Ex:
++  // "unit/acre .### rounding-mode-half-up"
++  //       b
++  // Ex:
++  // "unit/milliliter-per-acre .### rounding-mode-half-up"
++  //       b
++  begin += search.size();
++#endif
+   if (begin == str.npos) {
+     return "";
+   }
++#if U_ICU_VERSION_MAJOR_NUM < 68
+   begin++;  // Skip the '-'.
++#endif
+   // Find the end of the subtype.
+   size_t end = str.find(" ", begin);
+-  // "measure-unit/length-kilometer per-measure-unit/duration-hour"
+-  //                      b        e
++  // <ICU-68.1:
++  //   "measure-unit/length-kilometer per-measure-unit/duration-hour"
++  //                        b        e
++  // >=ICU-68.1:
++  //   Ex:
++  //   "unit/acre .### rounding-mode-half-up"
++  //         b   e
++  //   Ex:
++  //   "unit/milliliter-per-acre .### rounding-mode-half-up"
++  //         b                  e
+   if (end == str.npos) {
+     end = str.size();
++#if U_ICU_VERSION_MAJOR_NUM < 68
+     return str.substr(begin, end - begin);
+   }
+   // "measure-unit/length-kilometer per-measure-unit/duration-hour"
+@@ -625,17 +659,36 @@ std::string UnitFromSkeleton(const icu::UnicodeString& 
skeleton) {
+   // "measure-unit/length-kilometer per-measure-unit/duration-hour"
+   //                      [result ]                           b   e
+   return result + "-per-" + str.substr(begin, end - begin);
++#else
++  }
++  return str.substr(begin, end - begin);
++#endif
+ }
+ 
+ Style StyleFromSkeleton(const icu::UnicodeString& skeleton) {
+   if (skeleton.indexOf("currency/") >= 0) {
+     return Style::CURRENCY;
+   }
++#if U_ICU_VERSION_MAJOR_NUM < 68
+   if (skeleton.indexOf("measure-unit/") >= 0) {
+     if (skeleton.indexOf("scale/100") >= 0 &&
+         skeleton.indexOf("measure-unit/concentr-percent") >= 0) {
++#else
++  if (skeleton.indexOf("percent") >= 0) {
++    // percent precision-integer rounding-mode-half-up scale/100
++    if (skeleton.indexOf("scale/100") >= 0) {
++#endif
+       return Style::PERCENT;
++#if U_ICU_VERSION_MAJOR_NUM >= 68
++    } else {
++      return Style::UNIT;
++#endif
+     }
++#if U_ICU_VERSION_MAJOR_NUM >= 68
++  }
++  // Before ICU68: "measure-unit/", since ICU68 "unit/"
++  if (skeleton.indexOf("unit/") >= 0) {
++#endif
+     return Style::UNIT;
+   }
+   return Style::DECIMAL;
+diff --git a/src/3rdparty/chromium/v8/src/objects/js-relative-time-format.cc 
b/src/3rdparty/chromium/v8/src/objects/js-relative-time-format.cc
+index 267343aaae..64d56a1c12 100644
+--- a/src/3rdparty/chromium/v8/src/objects/js-relative-time-format.cc
++++ b/src/3rdparty/chromium/v8/src/objects/js-relative-time-format.cc
+@@ -195,9 +195,18 @@ MaybeHandle<JSRelativeTimeFormat> 
JSRelativeTimeFormat::New(
+     }
+   }
+ 
++#if U_ICU_VERSION_MAJOR_NUM < 68
+   icu::DecimalFormat* decimal_format =
+       static_cast<icu::DecimalFormat*>(number_format);
+   decimal_format->setMinimumGroupingDigits(-2);
++#else
++  if (number_format->getDynamicClassID() ==
++      icu::DecimalFormat::getStaticClassID()) {
++    icu::DecimalFormat* decimal_format =
++        static_cast<icu::DecimalFormat*>(number_format);
++    decimal_format->setMinimumGroupingDigits(-2);
++  }
++#endif
+ 
+   // Change UDISPCTX_CAPITALIZATION_NONE to other values if
+   // ECMA402 later include option to change capitalization.

diff --git 
a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210220-disable-git.patch 
b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210220-disable-git.patch
new file mode 100644
index 00000000000..c31e8970eae
--- /dev/null
+++ b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210220-disable-git.patch
@@ -0,0 +1,15 @@
+generate_gni.sh: update_readme() runs git at the end of process, prevent it.
+
+Thanks-to: Georgy Yakovlev <[email protected]>
+
+--- a/src/3rdparty/chromium/third_party/libvpx/generate_gni.sh 2021-02-07 
12:51:49.438514897 +0100
++++ b/src/3rdparty/chromium/third_party/libvpx/generate_gni.sh 2021-02-21 
16:23:38.375724515 +0100
+@@ -519,8 +519,3 @@
+ 
+ gn format --in-place $BASE_DIR/BUILD.gn
+ gn format --in-place $BASE_DIR/libvpx_srcs.gni
+-
+-cd $BASE_DIR/$LIBVPX_SRC_DIR
+-update_readme
+-
+-cd $BASE_DIR

diff --git 
a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210220-fixup-CVE-2021-21149-backport.patch
 
b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210220-fixup-CVE-2021-21149-backport.patch
new file mode 100644
index 00000000000..eeca3627d0b
--- /dev/null
+++ 
b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210220-fixup-CVE-2021-21149-backport.patch
@@ -0,0 +1,42 @@
+From d9d9e606cb34b1b4ac0f44de132b1eb10763f1f6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michael=20Br=C3=BCning?= <[email protected]>
+Date: Tue, 23 Feb 2021 16:34:39 +0100
+Subject: [PATCH] FIXUP: [Backport] CVE-2021-21149: Stack overflow in Data
+ Transfer
+
+Const qualifier removed by another patch upstream had to be removed
+as well.
+
+Change-Id: I4823080661b815884c49ad9881e9958c1ba65251
+Reviewed-by: Allan Sandfeld Jensen <[email protected]>
+---
+ src/3rdparty/chromium/ui/gfx/x/connection.cc | 2 +-
+ src/3rdparty/chromium/ui/gfx/x/connection.h  | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/3rdparty/chromium/ui/gfx/x/connection.cc 
b/src/3rdparty/chromium/ui/gfx/x/connection.cc
+index 0afbac2c605..8152f4e06be 100644
+--- a/src/3rdparty/chromium/ui/gfx/x/connection.cc
++++ b/src/3rdparty/chromium/ui/gfx/x/connection.cc
+@@ -423,7 +423,7 @@ Event Connection::WaitForNextEvent() {
+   return Event();
+ }
+ 
+-bool Connection::HasPendingResponses() const {
++bool Connection::HasPendingResponses() {
+   DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+   return HasNextEvent() || HasNextResponse();
+ }
+diff --git a/src/3rdparty/chromium/ui/gfx/x/connection.h 
b/src/3rdparty/chromium/ui/gfx/x/connection.h
+index 73a306a2ca1..0e3bbb66e53 100644
+--- a/src/3rdparty/chromium/ui/gfx/x/connection.h
++++ b/src/3rdparty/chromium/ui/gfx/x/connection.h
+@@ -124,7 +124,7 @@ class COMPONENT_EXPORT(X11) Connection : public XProto,
+   Event WaitForNextEvent();
+ 
+   // Are there any events, errors, or replies already buffered?
+-  bool HasPendingResponses() const;
++  bool HasPendingResponses();
+ 
+   // Dispatch any buffered events, errors, or replies.
+   void Dispatch(Delegate* delegate);

diff --git a/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210220.ebuild 
b/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210220.ebuild
new file mode 100644
index 00000000000..ff0e14bee9e
--- /dev/null
+++ b/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210220.ebuild
@@ -0,0 +1,184 @@
+# 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 multiprocessing python-any-r1 qt5-build
+
+DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML 
applications"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+#      KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+       if [[ ${PV} == ${QTVER}_p* ]]; then
+               SRC_URI="https://dev.gentoo.org/~asturm/distfiles/${P}.tar.xz";
+               S="${WORKDIR}/${P}"
+       fi
+fi
+
+# patchset based on https://github.com/chromium-ppc64le releases
+SRC_URI+=" ppc64? ( 
https://dev.gentoo.org/~gyakovlev/distfiles/${PN}-5.15.2-ppc64.tar.xz )"
+
+IUSE="alsa bindist designer geolocation 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}
+       ${PYTHON_DEPS}
+       >=app-arch/gzip-1.7
+       dev-util/gperf
+       dev-util/ninja
+       dev-util/re2c
+       net-libs/nodejs
+       sys-devel/bison
+"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-5.15.0-disable-fatal-warnings.patch" # bug 695446
+       "${FILESDIR}/${P}-chromium-87-v8-icu68.patch" # bug 757606
+       "${FILESDIR}/${P}-fixup-CVE-2021-21149-backport.patch"
+       "${FILESDIR}/${P}-disable-git.patch" # downstream snapshot fix
+)
+
+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 is broken
+       #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 "${WORKDIR}/${PN}-ppc64"
+               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
+}

Reply via email to