[gentoo-commits] repo/gentoo:master commit in: dev-qt/qtdeclarative/files/, dev-qt/qtdeclarative/

2022-12-10 Thread Andreas Sturmlechner
commit: 0207ab30fffe152804e4a288a0f2e01d224ec4da
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Sat Dec 10 12:12:12 2022 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Sat Dec 10 12:23:49 2022 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0207ab30

dev-qt/qtdeclarative: a11y: track item enabled state

Signed-off-by: Andreas Sturmlechner  gentoo.org>

 ...tive-5.15.7-a11y-track-item-enabled-state.patch | 57 ++
 .../qtdeclarative/qtdeclarative-5.15.7-r1.ebuild   | 68 ++
 2 files changed, 125 insertions(+)

diff --git 
a/dev-qt/qtdeclarative/files/qtdeclarative-5.15.7-a11y-track-item-enabled-state.patch
 
b/dev-qt/qtdeclarative/files/qtdeclarative-5.15.7-a11y-track-item-enabled-state.patch
new file mode 100644
index ..e41838a34e30
--- /dev/null
+++ 
b/dev-qt/qtdeclarative/files/qtdeclarative-5.15.7-a11y-track-item-enabled-state.patch
@@ -0,0 +1,57 @@
+From f697f2e1a4c5f60f3f09ae7d2e3d3dcd20854aef Mon Sep 17 00:00:00 2001
+From: Harald Sitter 
+Date: Mon, 28 Nov 2022 14:59:33 +0100
+Subject: [PATCH 1/2] a11y: track item enabled state
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+disabled items are neither enabled nor focusable
+
+Change-Id: I4f286c7b85605d5ad6fa787d1f5cfcce1297d268
+Reviewed-by: Volker Hilsheimer 
+Reviewed-by: Jan Arve Sæther 
+(cherry picked from commit 20fd2902a6d7bdb4a3306005d2718ca5a8fef96d)
+---
+ src/quick/accessible/qaccessiblequickitem.cpp | 4 
+ src/quick/items/qquickitem.cpp| 9 +
+ 2 files changed, 13 insertions(+)
+
+diff --git a/src/quick/accessible/qaccessiblequickitem.cpp 
b/src/quick/accessible/qaccessiblequickitem.cpp
+index eb3df4d4cd..78e2ab302c 100644
+--- a/src/quick/accessible/qaccessiblequickitem.cpp
 b/src/quick/accessible/qaccessiblequickitem.cpp
+@@ -210,6 +210,10 @@ QAccessible::State QAccessibleQuickItem::state() const
+ if (role() == QAccessible::EditableText)
+ if (auto ti = qobject_cast(item()))
+ state.passwordEdit = ti->echoMode() != QQuickTextInput::Normal;
++if (!item()->isEnabled()) {
++state.focusable = false;
++state.disabled = true;
++}
+ return state;
+ }
+ 
+diff --git a/src/quick/items/qquickitem.cpp b/src/quick/items/qquickitem.cpp
+index 4cf73ff73d..dec0ae19ae 100644
+--- a/src/quick/items/qquickitem.cpp
 b/src/quick/items/qquickitem.cpp
+@@ -6174,6 +6174,15 @@ void 
QQuickItemPrivate::setEffectiveEnableRecur(QQuickItem *scope, bool newEffec
+ }
+ 
+ itemChange(QQuickItem::ItemEnabledHasChanged, effectiveEnable);
++#if QT_CONFIG(accessibility)
++if (isAccessible) {
++QAccessible::State changedState;
++changedState.disabled = true;
++changedState.focusable = true;
++QAccessibleStateChangeEvent ev(q, changedState);
++QAccessible::updateAccessibility();
++}
++#endif
+ emit q->enabledChanged();
+ }
+ 
+-- 
+2.38.1
+

diff --git a/dev-qt/qtdeclarative/qtdeclarative-5.15.7-r1.ebuild 
b/dev-qt/qtdeclarative/qtdeclarative-5.15.7-r1.ebuild
new file mode 100644
index ..f92c424c84cb
--- /dev/null
+++ b/dev-qt/qtdeclarative/qtdeclarative-5.15.7-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 2009-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} != ** ]]; then
+   QT5_KDEPATCHSET_REV=1
+   KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc 
~x86"
+fi
+
+PYTHON_COMPAT=( python3_{8..11} )
+inherit flag-o-matic python-any-r1 qt5-build
+
+DESCRIPTION="The QML and Quick modules for the Qt5 framework"
+
+IUSE="gles2-only +jit localstorage vulkan +widgets"
+
+# qtgui[gles2-only=] is needed because of bug 504322
+DEPEND="
+   =dev-qt/qtcore-${QT5_PV}*
+   =dev-qt/qtgui-${QT5_PV}*:5=[gles2-only=,vulkan=]
+   =dev-qt/qtnetwork-${QT5_PV}*
+   =dev-qt/qttest-${QT5_PV}*
+   media-libs/libglvnd
+   localstorage? ( =dev-qt/qtsql-${QT5_PV}* )
+   widgets? ( =dev-qt/qtwidgets-${QT5_PV}*[gles2-only=] )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="${PYTHON_DEPS}"
+
+PATCHES=(
+   "${FILESDIR}/${PN}-5.14.2-QQuickItemView-fix-maxXY-extent.patch" # 
QTBUG-83890
+   "${FILESDIR}/${P}-a11y-track-item-enabled-state.patch" # kde/5.15
+)
+
+src_prepare() {
+   qt_use_disable_mod localstorage sql \
+   src/imports/imports.pro
+
+   qt_use_disable_mod widgets widgets \
+   src/src.pro \
+   src/qmltest/qmltest.pro \
+   tests/auto/auto.pro \
+   tools/tools.pro \
+   tools/qmlscene/qmlscene.pro \
+   tools/qml/qml.pro
+
+   qt5-build_src_prepare
+}
+
+src_configure() {
+   replace-flags "-Os" "-O2" # bug 840861
+
+   local myqmakeargs=(
+   --
+   -qml-debug
+   $(qt_use jit feature-qml-jit)
+   )
+   qt5-build_src_configure

[gentoo-commits] repo/gentoo:master commit in: dev-qt/qtdeclarative/files/

2022-04-18 Thread Sam James
commit: b212a7f9c6b6ce1288dcf220e72b4a2debf18e52
Author: Michael Mair-Keimberger  levelnine  at>
AuthorDate: Mon Apr 18 07:00:52 2022 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Apr 18 07:15:44 2022 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b212a7f9

dev-qt/qtdeclarative: remove unused patches

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Michael Mair-Keimberger  levelnine.at>
Signed-off-by: Sam James  gentoo.org>

 .../files/qtdeclarative-5.15.2-riscv-atomic.patch  | 12 
 .../files/qtdeclarative-5.4.2-disable-jit.patch| 18 --
 2 files changed, 30 deletions(-)

diff --git a/dev-qt/qtdeclarative/files/qtdeclarative-5.15.2-riscv-atomic.patch 
b/dev-qt/qtdeclarative/files/qtdeclarative-5.15.2-riscv-atomic.patch
deleted file mode 100644
index a619f3db833c..
--- a/dev-qt/qtdeclarative/files/qtdeclarative-5.15.2-riscv-atomic.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/qml/qml.pro b/src/qml/qml.pro
-index 7d5a92a..01f3b79 100644
 a/src/qml/qml.pro
-+++ b/src/qml/qml.pro
-@@ -19,6 +19,7 @@ solaris-cc*:QMAKE_CXXFLAGS_RELEASE -= -O2
- 
- # Ensure this gcc optimization is switched off for mips platforms to avoid 
trouble with JIT.
- gcc:isEqual(QT_ARCH, "mips"): QMAKE_CXXFLAGS += -fno-reorder-blocks
-+gcc:isEqual(QT_ARCH, "riscv64"): LIBS += -latomic
- 
- DEFINES += QT_NO_FOREACH
-

diff --git a/dev-qt/qtdeclarative/files/qtdeclarative-5.4.2-disable-jit.patch 
b/dev-qt/qtdeclarative/files/qtdeclarative-5.4.2-disable-jit.patch
deleted file mode 100644
index 7799ef71b7e4..
--- a/dev-qt/qtdeclarative/files/qtdeclarative-5.4.2-disable-jit.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/src/qml/jsruntime/qv4global_p.h b/src/qml/jsruntime/qv4global_p.h
-index 4b08194..224ddb1 100644
 a/src/qml/jsruntime/qv4global_p.h
-+++ b/src/qml/jsruntime/qv4global_p.h
-@@ -96,8 +96,13 @@ inline double trunc(double d) { return d > 0 ? floor(d) : 
ceil(d); }
- #undef V4_ENABLE_JIT
- #endif
- #endif
- 
-+// Gentoo note: disable the JIT due to USE="-jit"
-+#ifdef V4_ENABLE_JIT
-+#undef V4_ENABLE_JIT
-+#endif
-+
- // Do certain things depending on whether the JIT is enabled or disabled
- 
- #ifdef V4_ENABLE_JIT
- #define ENABLE_YARR_JIT 1



[gentoo-commits] repo/gentoo:master commit in: dev-qt/qtdeclarative/files/, dev-qt/qtdeclarative/

2021-01-24 Thread Andreas Sturmlechner
commit: 6733c610258ddf66de113f23dde026e31f7a8069
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Sun Jan 10 22:05:58 2021 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Sun Jan 24 13:03:13 2021 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6733c610

dev-qt/qtdeclarative: Fix build with GCC-11

Closes: https://bugs.gentoo.org/752093
Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Andreas Sturmlechner  gentoo.org>

 .../files/qtdeclarative-5.15.2-gcc11.patch | 31 ++
 dev-qt/qtdeclarative/qtdeclarative-5.15.2.ebuild   |  1 +
 2 files changed, 32 insertions(+)

diff --git a/dev-qt/qtdeclarative/files/qtdeclarative-5.15.2-gcc11.patch 
b/dev-qt/qtdeclarative/files/qtdeclarative-5.15.2-gcc11.patch
new file mode 100644
index 000..c5dd916912d
--- /dev/null
+++ b/dev-qt/qtdeclarative/files/qtdeclarative-5.15.2-gcc11.patch
@@ -0,0 +1,31 @@
+From 543594243ad0006bf4d98998ecfa52b46242f0ed Mon Sep 17 00:00:00 2001
+From: Jeff Law 
+Date: Oct 16 2020 21:12:18 +
+Subject: Fix missing #include for gcc-11
+
+
+diff --git a/src/qml/jsruntime/qv4regexp.cpp b/src/qml/jsruntime/qv4regexp.cpp
+index 76daead8..4f707703 100644
+--- a/src/qml/jsruntime/qv4regexp.cpp
 b/src/qml/jsruntime/qv4regexp.cpp
+@@ -37,6 +37,7 @@
+ **
+ /
+ 
++#include 
+ #include "qv4regexp_p.h"
+ #include "qv4engine_p.h"
+ #include "qv4scopedvalue_p.h"
+diff --git a/src/qmldebug/qqmlprofilerevent_p.h 
b/src/qmldebug/qqmlprofilerevent_p.h
+index a7e37d19..21c3b465 100644
+--- a/src/qmldebug/qqmlprofilerevent_p.h
 b/src/qmldebug/qqmlprofilerevent_p.h
+@@ -40,6 +40,8 @@
+ #ifndef QQMLPROFILEREVENT_P_H
+ #define QQMLPROFILEREVENT_P_H
+ 
++#include 
++
+ #include "qqmlprofilerclientdefinitions_p.h"
+ 
+ #include 

diff --git a/dev-qt/qtdeclarative/qtdeclarative-5.15.2.ebuild 
b/dev-qt/qtdeclarative/qtdeclarative-5.15.2.ebuild
index 91ee527902f..e4bb580355c 100644
--- a/dev-qt/qtdeclarative/qtdeclarative-5.15.2.ebuild
+++ b/dev-qt/qtdeclarative/qtdeclarative-5.15.2.ebuild
@@ -30,6 +30,7 @@ RDEPEND="${DEPEND}
 
 PATCHES=(
"${FILESDIR}/${PN}-5.14.2-QQuickItemView-fix-maxXY-extent.patch" # 
QTBUG-83890
+   "${FILESDIR}/${P}-gcc11.patch" # bug 752093
 )
 
 src_prepare() {



[gentoo-commits] repo/gentoo:master commit in: dev-qt/qtdeclarative/files/, dev-qt/qtdeclarative/

2019-11-20 Thread Andreas Sturmlechner
commit: c501b6c8adce80fc35e846f4aebfc6e3007f07cc
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Sat Nov 16 12:45:21 2019 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Wed Nov 20 21:20:42 2019 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c501b6c8

dev-qt/qtdeclarative: Handle reads of QQmlPropertyMap correctly

Package-Manager: Portage-2.3.79, Repoman-2.3.17
Signed-off-by: Andreas Sturmlechner  gentoo.org>

 ...ive-5.13.2-read-QQmlPropertyMap-correctly.patch | 92 ++
 .../qtdeclarative/qtdeclarative-5.13.2-r1.ebuild   | 57 ++
 2 files changed, 149 insertions(+)

diff --git 
a/dev-qt/qtdeclarative/files/qtdeclarative-5.13.2-read-QQmlPropertyMap-correctly.patch
 
b/dev-qt/qtdeclarative/files/qtdeclarative-5.13.2-read-QQmlPropertyMap-correctly.patch
new file mode 100644
index 000..63f4235c9e7
--- /dev/null
+++ 
b/dev-qt/qtdeclarative/files/qtdeclarative-5.13.2-read-QQmlPropertyMap-correctly.patch
@@ -0,0 +1,92 @@
+From bcbc3c9cec1f7d7bb8c9d5f5ea94eb5c81ec2853 Mon Sep 17 00:00:00 2001
+From: Fabian Kosmale 
+Date: Wed, 30 Oct 2019 10:15:23 +0100
+Subject: [PATCH] QQmlProperty: handle reads of QQmlPropertyMap correctly
+
+Fixes: QTBUG-79614
+Change-Id: Iaf84c0178dc88072a367da2b42b09554b85c7d57
+Reviewed-by: Simon Hausmann 
+---
+ src/qml/qml/qqmlproperty.cpp | 12 +---
+ tests/auto/qml/qqmlproperty/tst_qqmlproperty.cpp | 21 +
+ 2 files changed, 30 insertions(+), 3 deletions(-)
+
+diff --git a/src/qml/qml/qqmlproperty.cpp b/src/qml/qml/qqmlproperty.cpp
+index c8166695bad..a394ed1ad9a 100644
+--- a/src/qml/qml/qqmlproperty.cpp
 b/src/qml/qml/qqmlproperty.cpp
+@@ -63,6 +63,7 @@
+ #include 
+ #include 
+ #include 
++#include 
+ 
+ Q_DECLARE_METATYPE(QList)
+ Q_DECLARE_METATYPE(QList)
+@@ -331,10 +332,15 @@ void QQmlPropertyPrivate::initProperty(QObject *obj, 
const QString )
+ 
+ return;
+ } else {
+-if (!property->isQObject())
+-return; // Not an object property
++if (!property->isQObject()) {
++if (auto asPropertyMap = 
qobject_cast(currentObject))
++currentObject = 
asPropertyMap->value(path.at(ii).toString()).value();
++else
++return; // Not an object property, and not a property 
map
++} else {
++property->readProperty(currentObject, );
++}
+ 
+-property->readProperty(currentObject, );
+ if (!currentObject) return; // No value
+ 
+ }
+diff --git a/tests/auto/qml/qqmlproperty/tst_qqmlproperty.cpp 
b/tests/auto/qml/qqmlproperty/tst_qqmlproperty.cpp
+index 27e06c6f674..ed213cd01aa 100644
+--- a/tests/auto/qml/qqmlproperty/tst_qqmlproperty.cpp
 b/tests/auto/qml/qqmlproperty/tst_qqmlproperty.cpp
+@@ -37,6 +37,7 @@
+ #include 
+ #include 
+ #include "../../shared/util.h"
++#include 
+ 
+ #include 
+ class MyQmlObject : public QObject
+@@ -149,6 +150,8 @@ private slots:
+ void floatToStringPrecision();
+ 
+ void copy();
++
++void nestedQQmlPropertyMap();
+ private:
+ QQmlEngine engine;
+ };
+@@ -2106,6 +2109,24 @@ void tst_qqmlproperty::initTestCase()
+ qmlRegisterType("Test",1,0,"MyContainer");
+ }
+ 
++void tst_qqmlproperty::nestedQQmlPropertyMap()
++{
++QQmlPropertyMap mainPropertyMap;
++QQmlPropertyMap nestedPropertyMap;
++QQmlPropertyMap deeplyNestedPropertyMap;
++
++mainPropertyMap.insert("nesting1", 
QVariant::fromValue());
++nestedPropertyMap.insert("value", 42);
++nestedPropertyMap.insert("nesting2", 
QVariant::fromValue());
++deeplyNestedPropertyMap.insert("value", "success");
++
++QQmlProperty value{, "nesting1.value"};
++QCOMPARE(value.read().toInt(), 42);
++
++QQmlProperty success{, "nesting1.nesting2.value"};
++QCOMPARE(success.read().toString(), QLatin1String("success"));
++}
++
+ QTEST_MAIN(tst_qqmlproperty)
+ 
+ #include "tst_qqmlproperty.moc"
+-- 
+2.16.3

diff --git a/dev-qt/qtdeclarative/qtdeclarative-5.13.2-r1.ebuild 
b/dev-qt/qtdeclarative/qtdeclarative-5.13.2-r1.ebuild
new file mode 100644
index 000..90abd95d64f
--- /dev/null
+++ b/dev-qt/qtdeclarative/qtdeclarative-5.13.2-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2009-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
+inherit python-any-r1 qt5-build
+
+DESCRIPTION="The QML and Quick modules for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+   KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="gles2 +jit localstorage +widgets"
+
+BDEPEND="${PYTHON_DEPS}"
+# qtgui[gles2=] is needed because of bug 504322
+DEPEND="
+   ~dev-qt/qtcore-${PV}
+   ~dev-qt/qtgui-${PV}[gles2=]
+   ~dev-qt/qtnetwork-${PV}
+   

[gentoo-commits] repo/gentoo:master commit in: dev-qt/qtdeclarative/files/, dev-qt/qtdeclarative/

2018-04-15 Thread Andreas Sturmlechner
commit: d6f36672e351416d761178757a021c57e6e18560
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Sun Apr 15 15:32:35 2018 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Sun Apr 15 17:15:21 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d6f36672

dev-qt/qtdeclarative: Backport fix for textures memleak

KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=368838
See also: https://codereview.qt-project.org/#/c/224684/
https://pointieststick.wordpress.com/2018/04/14/this-week-in-usability-productivity-part-14/

Tested-by: bitlord, stikonas in #gentoo-kde
Package-Manager: Portage-2.3.28, Repoman-2.3.9

 .../qtdeclarative-5.9.5-texture-memleak.patch  | 59 ++
 dev-qt/qtdeclarative/qtdeclarative-5.9.5-r1.ebuild | 58 +
 2 files changed, 117 insertions(+)

diff --git 
a/dev-qt/qtdeclarative/files/qtdeclarative-5.9.5-texture-memleak.patch 
b/dev-qt/qtdeclarative/files/qtdeclarative-5.9.5-texture-memleak.patch
new file mode 100644
index 000..c2a143ecbed
--- /dev/null
+++ b/dev-qt/qtdeclarative/files/qtdeclarative-5.9.5-texture-memleak.patch
@@ -0,0 +1,59 @@
+From 839f09c65523fb5c419b62e078f72bb39285449a Mon Sep 17 00:00:00 2001
+From: David Edmundson 
+Date: Wed, 28 Mar 2018 00:24:56 +0100
+Subject: [PATCH] Avoid marking hidden windows as updatePending in Gui render
+ loop
+
+Since eeb320bbd8763f3e72f79369cc3908e999a0da3c the GL context only
+deletes textures when all windows with pending updates have finished
+rendering.
+
+renderWindow will not process any window that is not visible. This
+leaves a logic bug that we can have the updatePending flag set but
+never cleared.
+
+If we have two windows, this leaves the other window still updating
+normally, but lastDirtyWindow will always be false and we never call
+endSync.
+
+This results in an effective memory leak of all textures.
+
+This patch resets the flag on hide() a move that can be considered safe
+given the show() method will reset this flag anyway.
+
+Change-Id: Iab0171716e27e31077a66b5e36a00bf28a2e7a8c
+Reviewed-by: Kai Uwe Broulik 
+Reviewed-by: Qt CI Bot 
+Reviewed-by: Dominik Holland 
+Reviewed-by: Aleix Pol
+Reviewed-by: Andy Nichols 
+---
+ src/quick/scenegraph/qsgrenderloop.cpp | 5 -
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/quick/scenegraph/qsgrenderloop.cpp 
b/src/quick/scenegraph/qsgrenderloop.cpp
+index 60f3538662..2eaed497ef 100644
+--- a/src/quick/scenegraph/qsgrenderloop.cpp
 b/src/quick/scenegraph/qsgrenderloop.cpp
+@@ -305,6 +305,8 @@ void QSGGuiThreadRenderLoop::hide(QQuickWindow *window)
+ {
+ QQuickWindowPrivate *cd = QQuickWindowPrivate::get(window);
+ cd->fireAboutToStop();
++if (m_windows.contains(window))
++m_windows[window].updatePending = false;
+ }
+ 
+ void QSGGuiThreadRenderLoop::windowDestroyed(QQuickWindow *window)
+@@ -494,7 +496,8 @@ QImage QSGGuiThreadRenderLoop::grab(QQuickWindow *window)
+ 
+ void QSGGuiThreadRenderLoop::maybeUpdate(QQuickWindow *window)
+ {
+-if (!m_windows.contains(window))
++QQuickWindowPrivate *cd = QQuickWindowPrivate::get(window);
++if (!cd->isRenderable() || !m_windows.contains(window))
+ return;
+ 
+ m_windows[window].updatePending = true;
+-- 
+2.16.3
+

diff --git a/dev-qt/qtdeclarative/qtdeclarative-5.9.5-r1.ebuild 
b/dev-qt/qtdeclarative/qtdeclarative-5.9.5-r1.ebuild
new file mode 100644
index 000..393f329132b
--- /dev/null
+++ b/dev-qt/qtdeclarative/qtdeclarative-5.9.5-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+inherit python-any-r1 qt5-build
+
+DESCRIPTION="The QML and Quick modules for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+   KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-fbsd"
+fi
+
+IUSE="gles2 +jit localstorage +widgets xml"
+
+# qtgui[gles2=] is needed because of bug 504322
+COMMON_DEPEND="
+   ~dev-qt/qtcore-${PV}
+   ~dev-qt/qtgui-${PV}[gles2=]
+   ~dev-qt/qtnetwork-${PV}
+   ~dev-qt/qttest-${PV}
+   localstorage? ( ~dev-qt/qtsql-${PV} )
+   widgets? ( ~dev-qt/qtwidgets-${PV}[gles2=] )
+   xml? (
+   ~dev-qt/qtnetwork-${PV}
+   ~dev-qt/qtxmlpatterns-${PV}
+   )
+"
+DEPEND="${COMMON_DEPEND}
+   ${PYTHON_DEPS}
+"
+RDEPEND="${COMMON_DEPEND}
+   !