summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss@sss.chaoslab.ru>2018-02-23 16:00:56 +0300
committerGluzskiy Alexandr <sss@sss.chaoslab.ru>2018-02-23 16:00:56 +0300
commit57c8c6a8613ffe1e96587e21b34249133e54e4d2 (patch)
treea95832bfa28a57a4dd7df2a86fc33a19d98fe4cc
parentabbc99af90c96d4f50084e29633b32594b9bbfec (diff)
qt 5.10 scm from qt repo
-rw-r--r--dev-qt/assistant/assistant-5.10.9999.ebuild55
-rw-r--r--dev-qt/assistant/metadata.xml17
-rw-r--r--dev-qt/designer/designer-5.10.9999.ebuild57
-rw-r--r--dev-qt/designer/metadata.xml21
-rw-r--r--dev-qt/linguist-tools/linguist-tools-5.10.9999.ebuild35
-rw-r--r--dev-qt/linguist-tools/metadata.xml20
-rw-r--r--dev-qt/linguist/linguist-5.10.9999.ebuild48
-rw-r--r--dev-qt/linguist/metadata.xml17
-rw-r--r--dev-qt/pixeltool/metadata.xml17
-rw-r--r--dev-qt/pixeltool/pixeltool-5.10.9999.ebuild25
-rw-r--r--dev-qt/qdbus/qdbus-5.10.9999.ebuild25
-rw-r--r--dev-qt/qdbusviewer/metadata.xml17
-rw-r--r--dev-qt/qdbusviewer/qdbusviewer-5.10.9999.ebuild45
-rw-r--r--dev-qt/qdoc/metadata.xml20
-rw-r--r--dev-qt/qdoc/qdoc-5.10.9999.ebuild37
-rw-r--r--dev-qt/qt3d/metadata.xml21
-rw-r--r--dev-qt/qt3d/qt3d-5.10.9999.ebuild32
-rw-r--r--dev-qt/qtbluetooth/metadata.xml20
-rw-r--r--dev-qt/qtbluetooth/qtbluetooth-5.10.9999.ebuild33
-rw-r--r--dev-qt/qtcanvas3d/metadata.xml17
-rw-r--r--dev-qt/qtcanvas3d/qtcanvas3d-5.10.9999.ebuild21
-rw-r--r--dev-qt/qtcharts/metadata.xml20
-rw-r--r--dev-qt/qtcharts/qtcharts-5.10.9999.ebuild29
-rw-r--r--dev-qt/qtconcurrent/metadata.xml17
-rw-r--r--dev-qt/qtconcurrent/qtconcurrent-5.10.9999.ebuild23
-rw-r--r--dev-qt/qtdatavis3d/metadata.xml21
-rw-r--r--dev-qt/qtdatavis3d/qtdatavis3d-5.10.9999.ebuild31
-rw-r--r--dev-qt/qtdbus/metadata.xml17
-rw-r--r--dev-qt/qtdbus/qtdbus-5.10.9999.ebuild43
-rw-r--r--dev-qt/qtdeclarative/files/qtdeclarative-5.4.2-disable-jit.patch18
-rw-r--r--dev-qt/qtdeclarative/metadata.xml23
-rw-r--r--dev-qt/qtdeclarative/qtdeclarative-5.10.9999.ebuild64
-rw-r--r--dev-qt/qtdiag/metadata.xml21
-rw-r--r--dev-qt/qtdiag/qtdiag-5.10.9999.ebuild36
-rw-r--r--dev-qt/qtgamepad/metadata.xml21
-rw-r--r--dev-qt/qtgamepad/qtgamepad-5.10.9999.ebuild35
-rw-r--r--dev-qt/qtgraphicaleffects/metadata.xml17
-rw-r--r--dev-qt/qtgraphicaleffects/qtgraphicaleffects-5.10.9999.ebuild21
-rw-r--r--dev-qt/qthelp/metadata.xml17
-rw-r--r--dev-qt/qthelp/qthelp-5.10.9999.ebuild30
-rw-r--r--dev-qt/qtimageformats/metadata.xml17
-rw-r--r--dev-qt/qtimageformats/qtimageformats-5.10.9999.ebuild29
-rw-r--r--dev-qt/qtlocation/metadata.xml17
-rw-r--r--dev-qt/qtlocation/qtlocation-5.10.9999.ebuild44
-rw-r--r--dev-qt/qtmultimedia/metadata.xml23
-rw-r--r--dev-qt/qtmultimedia/qtmultimedia-5.10.9999.ebuild68
-rw-r--r--dev-qt/qtnetwork/files/qtnetwork-5.xx-libressl.patch42
-rw-r--r--dev-qt/qtnetworkauth/metadata.xml17
-rw-r--r--dev-qt/qtnetworkauth/qtnetworkauth-5.10.9999.ebuild20
-rw-r--r--dev-qt/qtopengl/metadata.xml20
-rw-r--r--dev-qt/qtopengl/qtopengl-5.10.9999.ebuild34
-rw-r--r--dev-qt/qtpaths/metadata.xml17
-rw-r--r--dev-qt/qtpaths/qtpaths-5.11.9999.ebuild23
-rw-r--r--dev-qt/qtplugininfo/metadata.xml17
-rw-r--r--dev-qt/qtplugininfo/qtplugininfo-5.11.9999.ebuild23
-rw-r--r--dev-qt/qtpositioning/metadata.xml21
-rw-r--r--dev-qt/qtpositioning/qtpositioning-5.10.9999.ebuild37
-rw-r--r--dev-qt/qtprintsupport/metadata.xml20
-rw-r--r--dev-qt/qtprintsupport/qtprintsupport-5.10.9999.ebuild42
-rw-r--r--dev-qt/qtquickcontrols/metadata.xml20
-rw-r--r--dev-qt/qtquickcontrols/qtquickcontrols-5.10.9999.ebuild32
-rw-r--r--dev-qt/qtquickcontrols2/metadata.xml20
-rw-r--r--dev-qt/qtquickcontrols2/qtquickcontrols2-5.10.9999.ebuild30
-rw-r--r--dev-qt/qtscript/metadata.xml20
-rw-r--r--dev-qt/qtscript/qtscript-5.10.9999.ebuild36
-rw-r--r--dev-qt/qtscxml/metadata.xml17
-rw-r--r--dev-qt/qtscxml/qtscxml-5.10.9999.ebuild19
-rw-r--r--dev-qt/qtsensors/metadata.xml20
-rw-r--r--dev-qt/qtsensors/qtsensors-5.10.9999.ebuild28
-rw-r--r--dev-qt/qtserialbus/metadata.xml17
-rw-r--r--dev-qt/qtserialbus/qtserialbus-5.10.9999.ebuild20
-rw-r--r--dev-qt/qtserialport/metadata.xml17
-rw-r--r--dev-qt/qtserialport/qtserialport-5.10.9999.ebuild27
-rw-r--r--dev-qt/qtspeech/metadata.xml17
-rw-r--r--dev-qt/qtspeech/qtspeech-5.10.9999.ebuild20
-rw-r--r--dev-qt/qtsql/files/qtsql-5.9.5-mariadb-10.2.patch35
-rw-r--r--dev-qt/qtsql/metadata.xml17
-rw-r--r--dev-qt/qtsql/qtsql-5.10.9999.ebuild62
-rw-r--r--dev-qt/qtsvg/metadata.xml17
-rw-r--r--dev-qt/qtsvg/qtsvg-5.10.9999.ebuild23
-rw-r--r--dev-qt/qttest/metadata.xml17
-rw-r--r--dev-qt/qttest/qttest-5.10.9999.ebuild33
-rw-r--r--dev-qt/qttranslations/metadata.xml17
-rw-r--r--dev-qt/qttranslations/qttranslations-5.10.9999.ebuild19
-rw-r--r--dev-qt/qtvirtualkeyboard/metadata.xml20
-rw-r--r--dev-qt/qtvirtualkeyboard/qtvirtualkeyboard-5.10.9999.ebuild38
-rw-r--r--dev-qt/qtwayland/metadata.xml20
-rw-r--r--dev-qt/qtwayland/qtwayland-5.10.9999.ebuild39
-rw-r--r--dev-qt/qtwebchannel/metadata.xml20
-rw-r--r--dev-qt/qtwebchannel/qtwebchannel-5.10.9999.ebuild26
-rw-r--r--dev-qt/qtwebsockets/metadata.xml20
-rw-r--r--dev-qt/qtwebsockets/qtwebsockets-5.10.9999.ebuild27
-rw-r--r--dev-qt/qtwebview/metadata.xml17
-rw-r--r--dev-qt/qtwebview/qtwebview-5.10.9999.ebuild21
-rw-r--r--dev-qt/qtwidgets/metadata.xml21
-rw-r--r--dev-qt/qtwidgets/qtwidgets-5.10.9999.ebuild57
-rw-r--r--dev-qt/qtx11extras/metadata.xml17
-rw-r--r--dev-qt/qtx11extras/qtx11extras-5.10.9999.ebuild21
-rw-r--r--dev-qt/qtxml/metadata.xml17
-rw-r--r--dev-qt/qtxml/qtxml-5.10.9999.ebuild29
-rw-r--r--dev-qt/qtxmlpatterns/metadata.xml17
-rw-r--r--dev-qt/qtxmlpatterns/qtxmlpatterns-5.10.9999.ebuild19
-rw-r--r--eclass/qt5-build.eclass229
103 files changed, 2863 insertions, 47 deletions
diff --git a/dev-qt/assistant/assistant-5.10.9999.ebuild b/dev-qt/assistant/assistant-5.10.9999.ebuild
new file mode 100644
index 0000000..0fe2bc1
--- /dev/null
+++ b/dev-qt/assistant/assistant-5.10.9999.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit desktop gnome2-utils qt5-build
+
+DESCRIPTION="Tool for viewing on-line documentation in Qt help file format"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~hppa ~ppc64 ~x86"
+fi
+
+IUSE="webkit"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qthelp-${PV}
+ ~dev-qt/qtnetwork-${PV}
+ ~dev-qt/qtprintsupport-${PV}
+ ~dev-qt/qtsql-${PV}[sqlite]
+ ~dev-qt/qtwidgets-${PV}
+ webkit? ( >=dev-qt/qtwebkit-5.9.1:5 )
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/assistant/assistant
+)
+
+src_prepare() {
+ qt_use_disable_mod webkit webkitwidgets \
+ src/assistant/assistant/assistant.pro
+
+ qt5-build_src_prepare
+}
+
+src_install() {
+ qt5-build_src_install
+
+ doicon -s 32 src/assistant/assistant/images/assistant.png
+ newicon -s 128 src/assistant/assistant/images/assistant-128.png assistant.png
+ make_desktop_entry "${QT5_BINDIR}"/assistant 'Qt 5 Assistant' assistant 'Qt;Development;Documentation'
+}
+
+pkg_postinst() {
+ qt5-build_pkg_postinst
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ qt5-build_pkg_postrm
+ gnome2_icon_cache_update
+}
diff --git a/dev-qt/assistant/metadata.xml b/dev-qt/assistant/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/assistant/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/designer/designer-5.10.9999.ebuild b/dev-qt/designer/designer-5.10.9999.ebuild
new file mode 100644
index 0000000..5b0fd82
--- /dev/null
+++ b/dev-qt/designer/designer-5.10.9999.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit desktop gnome2-utils qt5-build
+
+DESCRIPTION="WYSIWYG tool for designing and building Qt-based GUIs"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="declarative webkit"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtnetwork-${PV}
+ ~dev-qt/qtprintsupport-${PV}
+ ~dev-qt/qtwidgets-${PV}
+ ~dev-qt/qtxml-${PV}
+ declarative? ( ~dev-qt/qtdeclarative-${PV}[widgets] )
+ webkit? ( >=dev-qt/qtwebkit-5.9.1:5 )
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/designer
+)
+
+src_prepare() {
+ qt_use_disable_mod declarative quickwidgets \
+ src/designer/src/plugins/plugins.pro
+
+ qt_use_disable_mod webkit webkitwidgets \
+ src/designer/src/plugins/plugins.pro
+
+ qt5-build_src_prepare
+}
+
+src_install() {
+ qt5-build_src_install
+
+ doicon -s 128 src/designer/src/designer/images/designer.png
+ make_desktop_entry "${QT5_BINDIR}"/designer 'Qt 5 Designer' designer 'Qt;Development;GUIDesigner'
+}
+
+pkg_postinst() {
+ qt5-build_pkg_postinst
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ qt5-build_pkg_postrm
+ gnome2_icon_cache_update
+}
diff --git a/dev-qt/designer/metadata.xml b/dev-qt/designer/metadata.xml
new file mode 100644
index 0000000..7f1774a
--- /dev/null
+++ b/dev-qt/designer/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="declarative">Build the qdeclarativeview plugin</flag>
+ <flag name="webkit">Build the qwebview plugin</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/linguist-tools/linguist-tools-5.10.9999.ebuild b/dev-qt/linguist-tools/linguist-tools-5.10.9999.ebuild
new file mode 100644
index 0000000..10b49fe
--- /dev/null
+++ b/dev-qt/linguist-tools/linguist-tools-5.10.9999.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit qt5-build
+
+DESCRIPTION="Tools for working with Qt translation data files"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="qml"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtxml-${PV}
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/linguist
+)
+
+src_prepare() {
+ sed -i -e '/SUBDIRS += linguist/d' \
+ src/linguist/linguist.pro || die
+
+ qt_use_disable_mod qml qmldevtools-private \
+ src/linguist/lupdate/lupdate.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/linguist-tools/metadata.xml b/dev-qt/linguist-tools/metadata.xml
new file mode 100644
index 0000000..6577a64
--- /dev/null
+++ b/dev-qt/linguist-tools/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <use>
+ <flag name="qml">Enable QML support in lupdate</flag>
+ </use>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/linguist/linguist-5.10.9999.ebuild b/dev-qt/linguist/linguist-5.10.9999.ebuild
new file mode 100644
index 0000000..551450e
--- /dev/null
+++ b/dev-qt/linguist/linguist-5.10.9999.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit desktop gnome2-utils qt5-build
+
+DESCRIPTION="Graphical tool for translating Qt applications"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~hppa ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/designer-${PV}
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtprintsupport-${PV}
+ ~dev-qt/qtwidgets-${PV}
+ ~dev-qt/qtxml-${PV}
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/linguist/linguist
+)
+
+src_install() {
+ qt5-build_src_install
+
+ local size
+ for size in 16 32 48 64 128; do
+ newicon -s ${size} src/linguist/linguist/images/icons/linguist-${size}-32.png linguist.png
+ done
+ make_desktop_entry "${QT5_BINDIR}"/linguist 'Qt 5 Linguist' linguist 'Qt;Development;Translation'
+}
+
+pkg_postinst() {
+ qt5-build_pkg_postinst
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ qt5-build_pkg_postrm
+ gnome2_icon_cache_update
+}
diff --git a/dev-qt/linguist/metadata.xml b/dev-qt/linguist/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/linguist/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/pixeltool/metadata.xml b/dev-qt/pixeltool/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/pixeltool/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/pixeltool/pixeltool-5.10.9999.ebuild b/dev-qt/pixeltool/pixeltool-5.10.9999.ebuild
new file mode 100644
index 0000000..7bcdc97
--- /dev/null
+++ b/dev-qt/pixeltool/pixeltool-5.10.9999.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit qt5-build
+
+DESCRIPTION="Qt screen magnifier"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~hppa ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtwidgets-${PV}
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/pixeltool
+)
diff --git a/dev-qt/qdbus/qdbus-5.10.9999.ebuild b/dev-qt/qdbus/qdbus-5.10.9999.ebuild
new file mode 100644
index 0000000..4736c7c
--- /dev/null
+++ b/dev-qt/qdbus/qdbus-5.10.9999.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit qt5-build
+
+DESCRIPTION="Interface to Qt applications communicating over D-Bus"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdbus-${PV}
+ ~dev-qt/qtxml-${PV}
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/qdbus/qdbus
+)
diff --git a/dev-qt/qdbusviewer/metadata.xml b/dev-qt/qdbusviewer/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qdbusviewer/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qdbusviewer/qdbusviewer-5.10.9999.ebuild b/dev-qt/qdbusviewer/qdbusviewer-5.10.9999.ebuild
new file mode 100644
index 0000000..a5f3db0
--- /dev/null
+++ b/dev-qt/qdbusviewer/qdbusviewer-5.10.9999.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit desktop gnome2-utils qt5-build
+
+DESCRIPTION="Graphical tool that lets you introspect D-Bus objects and messages"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~hppa ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdbus-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtwidgets-${PV}
+ ~dev-qt/qtxml-${PV}
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/qdbus/qdbusviewer
+)
+
+src_install() {
+ qt5-build_src_install
+
+ doicon -s 32 src/qdbus/qdbusviewer/images/qdbusviewer.png
+ newicon -s 128 src/qdbus/qdbusviewer/images/qdbusviewer-128.png qdbusviewer.png
+ make_desktop_entry "${QT5_BINDIR}"/qdbusviewer 'Qt 5 QDBusViewer' qdbusviewer 'Qt;Development'
+}
+
+pkg_postinst() {
+ qt5-build_pkg_postinst
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ qt5-build_pkg_postrm
+ gnome2_icon_cache_update
+}
diff --git a/dev-qt/qdoc/metadata.xml b/dev-qt/qdoc/metadata.xml
new file mode 100644
index 0000000..2184bb1
--- /dev/null
+++ b/dev-qt/qdoc/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="qml">Enable QML/JS parsing support</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qdoc/qdoc-5.10.9999.ebuild b/dev-qt/qdoc/qdoc-5.10.9999.ebuild
new file mode 100644
index 0000000..4c656e1
--- /dev/null
+++ b/dev-qt/qdoc/qdoc-5.10.9999.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit qt5-build
+
+DESCRIPTION="Qt documentation generator"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~x86"
+fi
+
+IUSE="qml"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ sys-devel/clang:=
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/qdoc
+)
+
+src_prepare() {
+ qt_use_disable_mod qml qmldevtools-private \
+ src/qdoc/qdoc.pro
+
+ export LLVM_INSTALL_DIR="$(llvm-config --prefix)"
+ # this is normally loaded in qttools.pro, so skipped by using
+ # QT_TARGET_SUBDIRS causing build to fail
+ sed -e '1iload(qt_find_clang)\' -i src/qdoc/qdoc.pro || die
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qt3d/metadata.xml b/dev-qt/qt3d/metadata.xml
new file mode 100644
index 0000000..987a6dc
--- /dev/null
+++ b/dev-qt/qt3d/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="gles2">Use GLES 2.0 or later instead of full OpenGL</flag>
+ <flag name="qml">Build QML/QtQuick bindings</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qt3d/qt3d-5.10.9999.ebuild b/dev-qt/qt3d/qt3d-5.10.9999.ebuild
new file mode 100644
index 0000000..e656309
--- /dev/null
+++ b/dev-qt/qt3d/qt3d-5.10.9999.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="The 3D module for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~x86"
+fi
+
+# TODO: gamepad, tools
+IUSE="gles2 qml"
+
+DEPEND="
+ ~dev-qt/qtconcurrent-${PV}
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtnetwork-${PV}
+ >=media-libs/assimp-4.0.0
+ qml? ( ~dev-qt/qtdeclarative-${PV}[gles2=] )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ rm -r src/3rdparty/assimp/{code,contrib,include} || die
+
+ qt_use_disable_mod qml quick src/src.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtbluetooth/metadata.xml b/dev-qt/qtbluetooth/metadata.xml
new file mode 100644
index 0000000..d437181
--- /dev/null
+++ b/dev-qt/qtbluetooth/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="qml">Build QML/QtQuick bindings and imports</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtbluetooth/qtbluetooth-5.10.9999.ebuild b/dev-qt/qtbluetooth/qtbluetooth-5.10.9999.ebuild
new file mode 100644
index 0000000..7f4a8b1
--- /dev/null
+++ b/dev-qt/qtbluetooth/qtbluetooth-5.10.9999.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtconnectivity"
+inherit qt5-build
+
+DESCRIPTION="Bluetooth support library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+fi
+
+IUSE="qml"
+
+RDEPEND="
+ ~dev-qt/qtconcurrent-${PV}
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdbus-${PV}
+ >=net-wireless/bluez-5:=
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+"
+DEPEND="${RDEPEND}
+ ~dev-qt/qtnetwork-${PV}
+"
+
+src_prepare() {
+ sed -i -e 's/nfc//' src/src.pro || die
+
+ qt_use_disable_mod qml quick src/src.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtcanvas3d/metadata.xml b/dev-qt/qtcanvas3d/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtcanvas3d/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtcanvas3d/qtcanvas3d-5.10.9999.ebuild b/dev-qt/qtcanvas3d/qtcanvas3d-5.10.9999.ebuild
new file mode 100644
index 0000000..ab9ec68
--- /dev/null
+++ b/dev-qt/qtcanvas3d/qtcanvas3d-5.10.9999.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Qt module to make WebGL-like 3D drawing calls from Qt Quick JavaScript"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdeclarative-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtnetwork-${PV}
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-qt/qtcharts/metadata.xml b/dev-qt/qtcharts/metadata.xml
new file mode 100644
index 0000000..d437181
--- /dev/null
+++ b/dev-qt/qtcharts/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="qml">Build QML/QtQuick bindings and imports</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtcharts/qtcharts-5.10.9999.ebuild b/dev-qt/qtcharts/qtcharts-5.10.9999.ebuild
new file mode 100644
index 0000000..ff3df69
--- /dev/null
+++ b/dev-qt/qtcharts/qtcharts-5.10.9999.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Chart component library for the Qt5 framework"
+LICENSE="GPL-3"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~x86"
+fi
+
+IUSE="qml"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtwidgets-${PV}
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ qt_use_disable_mod qml quick \
+ src/src.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtconcurrent/metadata.xml b/dev-qt/qtconcurrent/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtconcurrent/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtconcurrent/qtconcurrent-5.10.9999.ebuild b/dev-qt/qtconcurrent/qtconcurrent-5.10.9999.ebuild
new file mode 100644
index 0000000..94b16f5
--- /dev/null
+++ b/dev-qt/qtconcurrent/qtconcurrent-5.10.9999.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtbase"
+inherit qt5-build
+
+DESCRIPTION="Multi-threading concurrence support library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/concurrent
+)
diff --git a/dev-qt/qtdatavis3d/metadata.xml b/dev-qt/qtdatavis3d/metadata.xml
new file mode 100644
index 0000000..16d3383
--- /dev/null
+++ b/dev-qt/qtdatavis3d/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="gles2">Use GLES 2.0 or later instead of full OpenGL</flag>
+ <flag name="qml">Build QML/QtQuick bindings and imports</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtdatavis3d/qtdatavis3d-5.10.9999.ebuild b/dev-qt/qtdatavis3d/qtdatavis3d-5.10.9999.ebuild
new file mode 100644
index 0000000..6477704
--- /dev/null
+++ b/dev-qt/qtdatavis3d/qtdatavis3d-5.10.9999.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="3D data visualization library for the Qt5 framework"
+LICENSE="GPL-3"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~x86"
+fi
+
+IUSE="gles2 qml"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}[gles2=]
+ qml? ( ~dev-qt/qtdeclarative-${PV}[gles2=] )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # eliminate bogus dependency on qtwidgets
+ sed -i -e '/requires.*widgets/d' qtdatavis3d.pro || die
+
+ qt_use_disable_mod qml quick \
+ src/src.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtdbus/metadata.xml b/dev-qt/qtdbus/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtdbus/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtdbus/qtdbus-5.10.9999.ebuild b/dev-qt/qtdbus/qtdbus-5.10.9999.ebuild
new file mode 100644
index 0000000..3cf3634
--- /dev/null
+++ b/dev-qt/qtdbus/qtdbus-5.10.9999.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtbase"
+inherit qt5-build
+
+DESCRIPTION="Qt5 module for inter-process communication over the D-Bus protocol"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ >=sys-apps/dbus-1.4.20
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/dbus
+ src/tools/qdbusxml2cpp
+ src/tools/qdbuscpp2xml
+)
+
+QT5_GENTOO_CONFIG=(
+ :dbus
+ :dbus-linked:
+)
+
+QT5_GENTOO_PRIVATE_CONFIG=(
+ :dbus
+ :dbus-linked
+)
+
+src_configure() {
+ local myconf=(
+ -dbus-linked
+ )
+ qt5-build_src_configure
+}
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
new file mode 100644
index 0000000..7799ef7
--- /dev/null
+++ b/dev-qt/qtdeclarative/files/qtdeclarative-5.4.2-disable-jit.patch
@@ -0,0 +1,18 @@
+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
diff --git a/dev-qt/qtdeclarative/metadata.xml b/dev-qt/qtdeclarative/metadata.xml
new file mode 100644
index 0000000..6333b58
--- /dev/null
+++ b/dev-qt/qtdeclarative/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="gles2">Use GLES 2.0 or later instead of full OpenGL</flag>
+ <flag name="localstorage">Build the LocalStorage import for QtQuick (requires QtSql)</flag>
+ <flag name="widgets">Enable QtWidgets support</flag>
+ <flag name="xml">Build the XmlListModel import for QtQuick (requires QtXmlPatterns)</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtdeclarative/qtdeclarative-5.10.9999.ebuild b/dev-qt/qtdeclarative/qtdeclarative-5.10.9999.ebuild
new file mode 100644
index 0000000..0c80aec
--- /dev/null
+++ b/dev-qt/qtdeclarative/qtdeclarative-5.10.9999.ebuild
@@ -0,0 +1,64 @@
+# 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"
+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}
+ !<dev-qt/qtquickcontrols-5.7:5
+"
+
+src_prepare() {
+ use jit || PATCHES+=("${FILESDIR}/${PN}-5.4.2-disable-jit.patch")
+
+ 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
+
+ qt_use_disable_mod xml xmlpatterns \
+ src/imports/imports.pro \
+ tests/auto/quick/quick.pro \
+ tests/auto/quick/examples/examples.pro
+
+ qt5-build_src_prepare
+}
+
+src_configure() {
+ local myqmakeargs=(
+ --
+ -qml-debug
+ )
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtdiag/metadata.xml b/dev-qt/qtdiag/metadata.xml
new file mode 100644
index 0000000..ca16099
--- /dev/null
+++ b/dev-qt/qtdiag/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="network">Report network information</flag>
+ <flag name="widgets">Report widget style information</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtdiag/qtdiag-5.10.9999.ebuild b/dev-qt/qtdiag/qtdiag-5.10.9999.ebuild
new file mode 100644
index 0000000..85c0174
--- /dev/null
+++ b/dev-qt/qtdiag/qtdiag-5.10.9999.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit qt5-build
+
+DESCRIPTION="Tool for reporting diagnostic information about Qt and its environment"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~hppa ~ppc64 ~x86"
+fi
+
+IUSE="+network +widgets"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ network? ( ~dev-qt/qtnetwork-${PV}[ssl] )
+ widgets? ( ~dev-qt/qtwidgets-${PV} )
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/qtdiag
+)
+
+src_prepare() {
+ qt_use_disable_mod network network \
+ src/qtdiag/qtdiag.pro
+
+ qt_use_disable_mod widgets widgets \
+ src/qtdiag/qtdiag.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtgamepad/metadata.xml b/dev-qt/qtgamepad/metadata.xml
new file mode 100644
index 0000000..2b9a633
--- /dev/null
+++ b/dev-qt/qtgamepad/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="evdev">Enable support for input devices via evdev</flag>
+ <flag name="qml">Build QML bindings</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtgamepad/qtgamepad-5.10.9999.ebuild b/dev-qt/qtgamepad/qtgamepad-5.10.9999.ebuild
new file mode 100644
index 0000000..a7c4b57
--- /dev/null
+++ b/dev-qt/qtgamepad/qtgamepad-5.10.9999.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Qt module to support gamepad hardware"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64"
+fi
+
+IUSE="evdev qml sdl"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}[evdev?]
+ evdev? ( virtual/libudev:= )
+ sdl? ( media-libs/libsdl )
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ qt_use_disable_mod qml quick \
+ src/src.pro
+
+ qt_use_disable_config evdev evdev \
+ src/plugins/gamepads/gamepads.pro
+
+ qt_use_disable_config sdl sdl2 \
+ src/plugins/gamepads/gamepads.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtgraphicaleffects/metadata.xml b/dev-qt/qtgraphicaleffects/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtgraphicaleffects/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtgraphicaleffects/qtgraphicaleffects-5.10.9999.ebuild b/dev-qt/qtgraphicaleffects/qtgraphicaleffects-5.10.9999.ebuild
new file mode 100644
index 0000000..51a225a
--- /dev/null
+++ b/dev-qt/qtgraphicaleffects/qtgraphicaleffects-5.10.9999.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+VIRTUALX_REQUIRED="test"
+inherit qt5-build
+
+DESCRIPTION="Set of QML types for adding visual effects to user interfaces"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdeclarative-${PV}
+ ~dev-qt/qtgui-${PV}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-qt/qthelp/metadata.xml b/dev-qt/qthelp/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qthelp/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qthelp/qthelp-5.10.9999.ebuild b/dev-qt/qthelp/qthelp-5.10.9999.ebuild
new file mode 100644
index 0000000..529903c
--- /dev/null
+++ b/dev-qt/qthelp/qthelp-5.10.9999.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit qt5-build
+
+DESCRIPTION="Qt5 module for integrating online documentation into applications"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtnetwork-${PV}
+ ~dev-qt/qtsql-${PV}[sqlite]
+ ~dev-qt/qtwidgets-${PV}
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/assistant/help
+ src/assistant/qcollectiongenerator
+ src/assistant/qhelpconverter
+ src/assistant/qhelpgenerator
+)
diff --git a/dev-qt/qtimageformats/metadata.xml b/dev-qt/qtimageformats/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtimageformats/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtimageformats/qtimageformats-5.10.9999.ebuild b/dev-qt/qtimageformats/qtimageformats-5.10.9999.ebuild
new file mode 100644
index 0000000..5b10805
--- /dev/null
+++ b/dev-qt/qtimageformats/qtimageformats-5.10.9999.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Additional format plugins for the Qt image I/O system"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~hppa ~ppc64 ~x86"
+fi
+
+IUSE="jpeg2k mng"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ media-libs/libwebp:=
+ media-libs/tiff:0
+ jpeg2k? ( media-libs/jasper:= )
+ mng? ( media-libs/libmng:= )
+"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ qt_use_compile_test jpeg2k jasper
+ qt_use_compile_test mng libmng
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtlocation/metadata.xml b/dev-qt/qtlocation/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtlocation/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtlocation/qtlocation-5.10.9999.ebuild b/dev-qt/qtlocation/qtlocation-5.10.9999.ebuild
new file mode 100644
index 0000000..f791b5b
--- /dev/null
+++ b/dev-qt/qtlocation/qtlocation-5.10.9999.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="The Location module for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+fi
+
+IUSE=""
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdeclarative-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtnetwork-${PV}
+ ~dev-qt/qtpositioning-${PV}
+ ~dev-qt/qtsql-${PV}
+ sys-libs/zlib
+"
+DEPEND="${RDEPEND}
+ ~dev-qt/qtconcurrent-${PV}
+"
+
+QT5_TARGET_SUBDIRS=(
+ src/3rdparty/clipper
+ src/3rdparty/poly2tri
+ src/3rdparty/clip2tri
+ src/3rdparty/mapbox-gl-native
+ src/location
+ src/imports/location
+ src/plugins/geoservices
+)
+
+src_configure() {
+ # src/plugins/geoservices requires files that are only generated when
+ # qmake is run in the root directory. Bug 633776.
+ mkdir -p "${QT5_BUILD_DIR}" || die
+ qt5_qmake "${QT_BUILD_DIR}"
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtmultimedia/metadata.xml b/dev-qt/qtmultimedia/metadata.xml
new file mode 100644
index 0000000..3e53741
--- /dev/null
+++ b/dev-qt/qtmultimedia/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="gles2">Use GLES 2.0 or later instead of full OpenGL</flag>
+ <flag name="gstreamer">Enable audio support via <pkg>media-libs/gstreamer</pkg></flag>
+ <flag name="qml">Build QML/QtQuick bindings and imports</flag>
+ <flag name="widgets">Build the QtMultimediaWidgets module</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtmultimedia/qtmultimedia-5.10.9999.ebuild b/dev-qt/qtmultimedia/qtmultimedia-5.10.9999.ebuild
new file mode 100644
index 0000000..df0cf92
--- /dev/null
+++ b/dev-qt/qtmultimedia/qtmultimedia-5.10.9999.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Multimedia (audio, video, radio, camera) library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="alsa gles2 gstreamer openal pulseaudio qml widgets"
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}[gles2=]
+ ~dev-qt/qtnetwork-${PV}
+ alsa? ( media-libs/alsa-lib )
+ gstreamer? (
+ dev-libs/glib:2
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-bad:1.0
+ media-libs/gst-plugins-base:1.0
+ )
+ pulseaudio? ( media-sound/pulseaudio )
+ qml? (
+ ~dev-qt/qtdeclarative-${PV}
+ gles2? ( ~dev-qt/qtgui-${PV}[egl] )
+ openal? ( media-libs/openal )
+ )
+ widgets? (
+ ~dev-qt/qtopengl-${PV}
+ ~dev-qt/qtwidgets-${PV}[gles2=]
+ )
+"
+DEPEND="${RDEPEND}
+ gstreamer? ( x11-proto/videoproto )
+"
+
+src_prepare() {
+ sed -i -e '/CONFIG\s*+=/ s/optimize_full//' \
+ src/multimedia/multimedia.pro || die
+
+ qt_use_disable_config openal openal \
+ src/imports/imports.pro
+
+ qt_use_disable_mod qml quick \
+ src/src.pro \
+ src/plugins/plugins.pro
+
+ qt_use_disable_mod widgets widgets \
+ src/src.pro \
+ src/gsttools/gsttools.pro \
+ src/plugins/gstreamer/common.pri
+
+ qt5-build_src_prepare
+}
+
+src_configure() {
+ local myqmakeargs=(
+ --
+ $(qt_use alsa)
+ $(qt_use gstreamer)
+ $(qt_use pulseaudio)
+ )
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtnetwork/files/qtnetwork-5.xx-libressl.patch b/dev-qt/qtnetwork/files/qtnetwork-5.xx-libressl.patch
new file mode 100644
index 0000000..3a1f80a
--- /dev/null
+++ b/dev-qt/qtnetwork/files/qtnetwork-5.xx-libressl.patch
@@ -0,0 +1,42 @@
+--- a/config.tests/unix/openssl11/openssl.cpp 2017-11-05 16:07:40.963385070 -0500
++++ b/config.tests/unix/openssl11/openssl.cpp 2017-11-05 16:07:51.755255545 -0500
+@@ -39,7 +39,7 @@
+
+ #include <openssl/opensslv.h>
+
+-#if !defined(OPENSSL_VERSION_NUMBER) || OPENSSL_VERSION_NUMBER-0 < 0x10100000L
++#if !defined(OPENSSL_VERSION_NUMBER) || OPENSSL_VERSION_NUMBER-0 < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ # error "OpenSSL >= 1.1 is required"
+ #endif
+
+--- a/src/network/ssl/qsslsocket_openssl_symbols_p.h 2017-11-06 00:02:18.919611226 -0500
++++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h 2017-11-06 00:09:46.879756111 -0500
+@@ -232,7 +232,7 @@
+ int q_BIO_read(BIO *a, void *b, int c);
+ Q_AUTOTEST_EXPORT int q_BIO_write(BIO *a, const void *b, int c);
+ int q_BN_num_bits(const BIGNUM *a);
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if QT_CONFIG(opensslv11)
+ int q_BN_is_word(BIGNUM *a, BN_ULONG w);
+ #else
+ // BN_is_word is implemented purely as a
+@@ -245,7 +245,7 @@
+ //
+ // Users are required to include <openssl/bn.h>.
+ #define q_BN_is_word BN_is_word
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10100000L
++#endif // QT_CONFIG
+ BN_ULONG q_BN_mod_word(const BIGNUM *a, BN_ULONG w);
+ #ifndef OPENSSL_NO_EC
+ const EC_GROUP* q_EC_KEY_get0_group(const EC_KEY* k);
+--- a/src/network/ssl/qsslsocket_openssl_symbols.cpp 2017-11-06 00:04:58.843877923 -0500
++++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp 2017-11-06 00:06:12.985074360 -0500
+@@ -1017,7 +1017,7 @@
+ RESOLVEFUNC(EC_GROUP_get_degree)
+ #endif
+ RESOLVEFUNC(BN_num_bits)
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if QT_CONFIG(opensslv11)
+ RESOLVEFUNC(BN_is_word)
+ #endif
+ RESOLVEFUNC(BN_mod_word)
diff --git a/dev-qt/qtnetworkauth/metadata.xml b/dev-qt/qtnetworkauth/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtnetworkauth/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtnetworkauth/qtnetworkauth-5.10.9999.ebuild b/dev-qt/qtnetworkauth/qtnetworkauth-5.10.9999.ebuild
new file mode 100644
index 0000000..a1e6dc6
--- /dev/null
+++ b/dev-qt/qtnetworkauth/qtnetworkauth-5.10.9999.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Network authorization library for the Qt5 framework"
+LICENSE="GPL-3"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtnetwork-${PV}
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-qt/qtopengl/metadata.xml b/dev-qt/qtopengl/metadata.xml
new file mode 100644
index 0000000..17b1d11
--- /dev/null
+++ b/dev-qt/qtopengl/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="gles2">Use GLES 2.0 or later instead of full OpenGL</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtopengl/qtopengl-5.10.9999.ebuild b/dev-qt/qtopengl/qtopengl-5.10.9999.ebuild
new file mode 100644
index 0000000..be8a1bf
--- /dev/null
+++ b/dev-qt/qtopengl/qtopengl-5.10.9999.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtbase"
+VIRTUALX_REQUIRED="test"
+inherit qt5-build
+
+DESCRIPTION="OpenGL support library for the Qt5 framework (deprecated)"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="gles2"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}[gles2=]
+ ~dev-qt/qtwidgets-${PV}[gles2=]
+ virtual/opengl
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/opengl
+)
+
+src_configure() {
+ local myconf=(
+ -opengl $(usex gles2 es2 desktop)
+ )
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtpaths/metadata.xml b/dev-qt/qtpaths/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtpaths/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtpaths/qtpaths-5.11.9999.ebuild b/dev-qt/qtpaths/qtpaths-5.11.9999.ebuild
new file mode 100644
index 0000000..bc5bdee
--- /dev/null
+++ b/dev-qt/qtpaths/qtpaths-5.11.9999.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit qt5-build
+
+DESCRIPTION="Command line client to QStandardPaths"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/qtpaths
+)
diff --git a/dev-qt/qtplugininfo/metadata.xml b/dev-qt/qtplugininfo/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtplugininfo/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtplugininfo/qtplugininfo-5.11.9999.ebuild b/dev-qt/qtplugininfo/qtplugininfo-5.11.9999.ebuild
new file mode 100644
index 0000000..43ae95d
--- /dev/null
+++ b/dev-qt/qtplugininfo/qtplugininfo-5.11.9999.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qttools"
+inherit qt5-build
+
+DESCRIPTION="Qt5 plugin metadata dumper"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/qtplugininfo
+)
diff --git a/dev-qt/qtpositioning/metadata.xml b/dev-qt/qtpositioning/metadata.xml
new file mode 100644
index 0000000..23d4d81
--- /dev/null
+++ b/dev-qt/qtpositioning/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="geoclue">Use enhanced location information from <pkg>app-misc/geoclue</pkg></flag>
+ <flag name="qml">Build QML bindings</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtpositioning/qtpositioning-5.10.9999.ebuild b/dev-qt/qtpositioning/qtpositioning-5.10.9999.ebuild
new file mode 100644
index 0000000..2af4b95
--- /dev/null
+++ b/dev-qt/qtpositioning/qtpositioning-5.10.9999.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtlocation"
+inherit qt5-build
+
+DESCRIPTION="Physical position determination library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~x86"
+fi
+
+IUSE="geoclue qml"
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+ geoclue? ( ~dev-qt/qtdbus-${PV} )
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+"
+DEPEND="${RDEPEND}"
+PDEPEND="
+ geoclue? ( app-misc/geoclue:0 )
+"
+
+QT5_TARGET_SUBDIRS=(
+ src/3rdparty/clipper
+ src/3rdparty/poly2tri
+ src/3rdparty/clip2tri
+ src/positioning
+ src/plugins/position/positionpoll
+)
+
+pkg_setup() {
+ use geoclue && QT5_TARGET_SUBDIRS+=(src/plugins/position/geoclue)
+ use qml && QT5_TARGET_SUBDIRS+=(src/imports/positioning)
+}
diff --git a/dev-qt/qtprintsupport/metadata.xml b/dev-qt/qtprintsupport/metadata.xml
new file mode 100644
index 0000000..17b1d11
--- /dev/null
+++ b/dev-qt/qtprintsupport/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="gles2">Use GLES 2.0 or later instead of full OpenGL</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtprintsupport/qtprintsupport-5.10.9999.ebuild b/dev-qt/qtprintsupport/qtprintsupport-5.10.9999.ebuild
new file mode 100644
index 0000000..824f3d0
--- /dev/null
+++ b/dev-qt/qtprintsupport/qtprintsupport-5.10.9999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtbase"
+VIRTUALX_REQUIRED="test"
+inherit qt5-build
+
+DESCRIPTION="Printing support library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="cups gles2"
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}[gles2=]
+ ~dev-qt/qtwidgets-${PV}[gles2=]
+ cups? ( >=net-print/cups-1.4 )
+"
+DEPEND="${RDEPEND}
+ test? ( ~dev-qt/qtnetwork-${PV} )
+"
+
+QT5_TARGET_SUBDIRS=(
+ src/printsupport
+ src/plugins/printsupport
+)
+
+QT5_GENTOO_CONFIG=(
+ cups
+)
+
+src_configure() {
+ local myconf=(
+ $(qt_use cups)
+ -opengl $(usex gles2 es2 desktop)
+ )
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtquickcontrols/metadata.xml b/dev-qt/qtquickcontrols/metadata.xml
new file mode 100644
index 0000000..cc8ed92
--- /dev/null
+++ b/dev-qt/qtquickcontrols/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="widgets">Enable QtWidgets support</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtquickcontrols/qtquickcontrols-5.10.9999.ebuild b/dev-qt/qtquickcontrols/qtquickcontrols-5.10.9999.ebuild
new file mode 100644
index 0000000..e0dc941
--- /dev/null
+++ b/dev-qt/qtquickcontrols/qtquickcontrols-5.10.9999.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Set of controls used in conjunction with Qt Quick to build complete interfaces"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="+widgets"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdeclarative-${PV}
+ ~dev-qt/qtgui-${PV}
+ widgets? ( ~dev-qt/qtwidgets-${PV} )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ qt_use_disable_mod widgets widgets \
+ src/src.pro \
+ src/controls/Private/private.pri \
+ tests/auto/activeFocusOnTab/activeFocusOnTab.pro \
+ tests/auto/controls/controls.pro \
+ tests/auto/testplugin/testplugin.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtquickcontrols2/metadata.xml b/dev-qt/qtquickcontrols2/metadata.xml
new file mode 100644
index 0000000..cc8ed92
--- /dev/null
+++ b/dev-qt/qtquickcontrols2/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="widgets">Enable QtWidgets support</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtquickcontrols2/qtquickcontrols2-5.10.9999.ebuild b/dev-qt/qtquickcontrols2/qtquickcontrols2-5.10.9999.ebuild
new file mode 100644
index 0000000..120bd5c
--- /dev/null
+++ b/dev-qt/qtquickcontrols2/qtquickcontrols2-5.10.9999.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Set of next generation Qt Quick controls for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~x86"
+fi
+
+IUSE="widgets"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdeclarative-${PV}
+ ~dev-qt/qtgui-${PV}
+ widgets? ( ~dev-qt/qtwidgets-${PV} )
+"
+RDEPEND="${DEPEND}
+ ~dev-qt/qtgraphicaleffects-${PV}
+"
+
+src_prepare() {
+ qt_use_disable_mod widgets widgets \
+ src/imports/platform/platform.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtscript/metadata.xml b/dev-qt/qtscript/metadata.xml
new file mode 100644
index 0000000..da283d2
--- /dev/null
+++ b/dev-qt/qtscript/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="scripttools">Build the QtScriptTools module (requires QtWidgets)</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtscript/qtscript-5.10.9999.ebuild b/dev-qt/qtscript/qtscript-5.10.9999.ebuild
new file mode 100644
index 0000000..c71d7a4
--- /dev/null
+++ b/dev-qt/qtscript/qtscript-5.10.9999.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Application scripting library for the Qt5 framework (deprecated)"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="+jit scripttools"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ scripttools? (
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtwidgets-${PV}
+ )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ qt_use_disable_mod scripttools widgets \
+ src/src.pro
+
+ qt5-build_src_prepare
+}
+
+src_configure() {
+ local myqmakeargs=(
+ JAVASCRIPTCORE_JIT=$(usex jit 'yes' 'no')
+ )
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtscxml/metadata.xml b/dev-qt/qtscxml/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtscxml/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtscxml/qtscxml-5.10.9999.ebuild b/dev-qt/qtscxml/qtscxml-5.10.9999.ebuild
new file mode 100644
index 0000000..59b06ef
--- /dev/null
+++ b/dev-qt/qtscxml/qtscxml-5.10.9999.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="State Chart XML (SCXML) support library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdeclarative-${PV}
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-qt/qtsensors/metadata.xml b/dev-qt/qtsensors/metadata.xml
new file mode 100644
index 0000000..c33b152
--- /dev/null
+++ b/dev-qt/qtsensors/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="qml">Build QML bindings</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtsensors/qtsensors-5.10.9999.ebuild b/dev-qt/qtsensors/qtsensors-5.10.9999.ebuild
new file mode 100644
index 0000000..28845fe
--- /dev/null
+++ b/dev-qt/qtsensors/qtsensors-5.10.9999.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Hardware sensor access library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~x86"
+fi
+
+# TODO: simulator
+IUSE="qml"
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdbus-${PV}
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ qt_use_disable_mod qml quick \
+ src/src.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtserialbus/metadata.xml b/dev-qt/qtserialbus/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtserialbus/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtserialbus/qtserialbus-5.10.9999.ebuild b/dev-qt/qtserialbus/qtserialbus-5.10.9999.ebuild
new file mode 100644
index 0000000..c6a1fac
--- /dev/null
+++ b/dev-qt/qtserialbus/qtserialbus-5.10.9999.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Support for CAN and other serial buses"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtnetwork-${PV}
+ ~dev-qt/qtserialport-${PV}
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-qt/qtserialport/metadata.xml b/dev-qt/qtserialport/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtserialport/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtserialport/qtserialport-5.10.9999.ebuild b/dev-qt/qtserialport/qtserialport-5.10.9999.ebuild
new file mode 100644
index 0000000..9798eab
--- /dev/null
+++ b/dev-qt/qtserialport/qtserialport-5.10.9999.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Serial port abstraction library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ virtual/libudev:=
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # make sure we link against libudev
+ sed -i -e 's/:qtConfig(libudev)//' \
+ src/serialport/serialport-lib.pri || die
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtspeech/metadata.xml b/dev-qt/qtspeech/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtspeech/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtspeech/qtspeech-5.10.9999.ebuild b/dev-qt/qtspeech/qtspeech-5.10.9999.ebuild
new file mode 100644
index 0000000..2954bcf
--- /dev/null
+++ b/dev-qt/qtspeech/qtspeech-5.10.9999.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Text-to-speech library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~x86"
+fi
+
+# TODO: flite plugin - needs 2.0.0 (not yet in tree)
+IUSE=""
+
+RDEPEND="
+ >=app-accessibility/speech-dispatcher-0.8.7
+ ~dev-qt/qtcore-${PV}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-qt/qtsql/files/qtsql-5.9.5-mariadb-10.2.patch b/dev-qt/qtsql/files/qtsql-5.9.5-mariadb-10.2.patch
new file mode 100644
index 0000000..79de44d
--- /dev/null
+++ b/dev-qt/qtsql/files/qtsql-5.9.5-mariadb-10.2.patch
@@ -0,0 +1,35 @@
+From 64588c9bae92ef79f9ca5e87653ffb0962691d0d Mon Sep 17 00:00:00 2001
+From: Andy Shaw <andy.shaw@qt.io>
+Date: Wed, 27 Sep 2017 09:23:10 +0200
+Subject: [PATCH] Extend the MariaDB define check to cover the later versions
+ too
+
+Change-Id: Ide89b4e07feb116bf152cbf3f5630d313e8ba0f1
+---
+ src/plugins/sqldrivers/mysql/qsql_mysql.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/plugins/sqldrivers/mysql/qsql_mysql.cpp b/src/plugins/sqldrivers/mysql/qsql_mysql.cpp
+index 6e428fb..b2d3e85 100644
+--- a/src/plugins/sqldrivers/mysql/qsql_mysql.cpp
++++ b/src/plugins/sqldrivers/mysql/qsql_mysql.cpp
+@@ -1159,14 +1159,14 @@ static void qLibraryInit()
+ # endif // MYSQL_VERSION_ID
+ #endif // Q_NO_MYSQL_EMBEDDED
+
+-#ifdef MARIADB_BASE_VERSION
++#if defined(MARIADB_BASE_VERSION) || defined(MARIADB_VERSION_ID)
+ qAddPostRoutine([]() { mysql_server_end(); });
+ #endif
+ }
+
+ static void qLibraryEnd()
+ {
+-#if !defined(MARIADB_BASE_VERSION)
++#if !defined(MARIADB_BASE_VERSION) && !defined(MARIADB_VERSION_ID)
+ # if !defined(Q_NO_MYSQL_EMBEDDED)
+ # if MYSQL_VERSION_ID > 40000
+ # if (MYSQL_VERSION_ID >= 40110 && MYSQL_VERSION_ID < 50000) || MYSQL_VERSION_ID >= 50003
+--
+2.7.4
+
diff --git a/dev-qt/qtsql/metadata.xml b/dev-qt/qtsql/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtsql/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtsql/qtsql-5.10.9999.ebuild b/dev-qt/qtsql/qtsql-5.10.9999.ebuild
new file mode 100644
index 0000000..f6e3255
--- /dev/null
+++ b/dev-qt/qtsql/qtsql-5.10.9999.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtbase"
+inherit qt5-build
+
+DESCRIPTION="SQL abstraction library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="freetds mysql oci8 odbc postgres +sqlite"
+
+REQUIRED_USE="
+ || ( freetds mysql oci8 odbc postgres sqlite )
+"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ freetds? ( dev-db/freetds )
+ mysql? ( virtual/libmysqlclient:= )
+ oci8? ( dev-db/oracle-instantclient-basic )
+ odbc? ( || ( dev-db/unixODBC dev-db/libiodbc ) )
+ postgres? ( dev-db/postgresql:* )
+ sqlite? ( >=dev-db/sqlite-3.8.10.2:3 )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.9.5-mariadb-10.2.patch"
+ # See also: https://codereview.qt-project.org/#/c/206850/
+)
+
+QT5_TARGET_SUBDIRS=(
+ src/sql
+ src/plugins/sqldrivers
+)
+
+QT5_GENTOO_PRIVATE_CONFIG=(
+ :sql
+)
+
+src_configure() {
+ local myconf=(
+ $(qt_use freetds sql-tds plugin)
+ $(qt_use mysql sql-mysql plugin)
+ $(qt_use oci8 sql-oci plugin)
+ $(qt_use odbc sql-odbc plugin)
+ $(qt_use postgres sql-psql plugin)
+ $(qt_use sqlite sql-sqlite plugin)
+ $(usex sqlite -system-sqlite '')
+ )
+
+ use mysql && myconf+=("-I${EPREFIX}/usr/include/mysql" "-L${EPREFIX}/usr/$(get_libdir)/mysql")
+ use oci8 && myconf+=("-I${ORACLE_HOME}/include" "-L${ORACLE_HOME}/$(get_libdir)")
+ use odbc && myconf+=("-I${EPREFIX}/usr/include/iodbc")
+ use postgres && myconf+=("-I${EPREFIX}/usr/include/postgresql/pgsql")
+
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtsvg/metadata.xml b/dev-qt/qtsvg/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtsvg/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtsvg/qtsvg-5.10.9999.ebuild b/dev-qt/qtsvg/qtsvg-5.10.9999.ebuild
new file mode 100644
index 0000000..90c02c0
--- /dev/null
+++ b/dev-qt/qtsvg/qtsvg-5.10.9999.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="SVG rendering library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtwidgets-${PV}
+ >=sys-libs/zlib-1.2.5
+"
+DEPEND="${RDEPEND}
+ test? ( ~dev-qt/qtxml-${PV} )
+"
diff --git a/dev-qt/qttest/metadata.xml b/dev-qt/qttest/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qttest/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qttest/qttest-5.10.9999.ebuild b/dev-qt/qttest/qttest-5.10.9999.ebuild
new file mode 100644
index 0000000..9181b8d
--- /dev/null
+++ b/dev-qt/qttest/qttest-5.10.9999.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtbase"
+VIRTUALX_REQUIRED="test"
+inherit qt5-build
+
+DESCRIPTION="Unit testing library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+"
+DEPEND="${RDEPEND}
+ test? (
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtxml-${PV}
+ )
+"
+
+QT5_TARGET_SUBDIRS=(
+ src/testlib
+)
+
+QT5_GENTOO_PRIVATE_CONFIG=(
+ :testlib
+)
diff --git a/dev-qt/qttranslations/metadata.xml b/dev-qt/qttranslations/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qttranslations/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qttranslations/qttranslations-5.10.9999.ebuild b/dev-qt/qttranslations/qttranslations-5.10.9999.ebuild
new file mode 100644
index 0000000..076afba
--- /dev/null
+++ b/dev-qt/qttranslations/qttranslations-5.10.9999.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Translation files for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/linguist-tools-${PV}
+ ~dev-qt/qtcore-${PV}
+"
+RDEPEND=""
diff --git a/dev-qt/qtvirtualkeyboard/metadata.xml b/dev-qt/qtvirtualkeyboard/metadata.xml
new file mode 100644
index 0000000..1f6a41c
--- /dev/null
+++ b/dev-qt/qtvirtualkeyboard/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="handwriting">Adds handwriting recognition integration support</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtvirtualkeyboard/qtvirtualkeyboard-5.10.9999.ebuild b/dev-qt/qtvirtualkeyboard/qtvirtualkeyboard-5.10.9999.ebuild
new file mode 100644
index 0000000..b7dd174
--- /dev/null
+++ b/dev-qt/qtvirtualkeyboard/qtvirtualkeyboard-5.10.9999.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Virtual keyboard plugin for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~x86"
+fi
+
+# TODO: unbudle libraries for more layouts
+IUSE="handwriting +spell +xcb"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdeclarative-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtsvg-${PV}
+ spell? ( app-text/hunspell:= )
+ xcb? ( x11-libs/libxcb:= )
+"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local myqmakeargs=(
+ $(usex handwriting CONFIG+=lipi-toolkit "")
+ $(usex spell "" CONFIG+=disable-hunspell)
+ $(usex xcb "" CONFIG+=disable-desktop)
+ CONFIG+="lang-ar_AR lang-da_DK lang-de_DE lang-en_GB \
+ lang-es_ES lang-fa_FA lang-fi_FI lang-fr_FR \
+ lang-hi_IN lang-it_IT lang-nb_NO lang-pl_PL \
+ lang-pt_PT lang-ro_RO lang-ru_RU lang-sv_SE"
+ )
+
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtwayland/metadata.xml b/dev-qt/qtwayland/metadata.xml
new file mode 100644
index 0000000..4fb03e6
--- /dev/null
+++ b/dev-qt/qtwayland/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="libinput">Enable support for input devices via <pkg>dev-libs/libinput</pkg></flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtwayland/qtwayland-5.10.9999.ebuild b/dev-qt/qtwayland/qtwayland-5.10.9999.ebuild
new file mode 100644
index 0000000..4c35530
--- /dev/null
+++ b/dev-qt/qtwayland/qtwayland-5.10.9999.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Wayland platform plugin for Qt"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE="+libinput xcomposite"
+
+DEPEND="
+ >=dev-libs/wayland-1.6.0
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdeclarative-${PV}
+ ~dev-qt/qtgui-${PV}[egl,libinput?]
+ media-libs/mesa[egl]
+ >=x11-libs/libxkbcommon-0.2.0
+ xcomposite? (
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ qt_use_disable_config libinput xkbcommon-evdev \
+ src/client/client.pro \
+ src/compositor/wayland_wrapper/wayland_wrapper.pri \
+ src/plugins/shellintegration/ivi-shell/ivi-shell.pro \
+ tests/auto/compositor/compositor/compositor.pro
+
+ use xcomposite || rm -r config.tests/xcomposite || die
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtwebchannel/metadata.xml b/dev-qt/qtwebchannel/metadata.xml
new file mode 100644
index 0000000..d437181
--- /dev/null
+++ b/dev-qt/qtwebchannel/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="qml">Build QML/QtQuick bindings and imports</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtwebchannel/qtwebchannel-5.10.9999.ebuild b/dev-qt/qtwebchannel/qtwebchannel-5.10.9999.ebuild
new file mode 100644
index 0000000..63c52e4
--- /dev/null
+++ b/dev-qt/qtwebchannel/qtwebchannel-5.10.9999.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Qt5 module for integrating C++ and QML applications with HTML/JavaScript clients"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+fi
+
+IUSE="qml"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ qt_use_disable_mod qml quick src/src.pro
+ qt_use_disable_mod qml qml src/webchannel/webchannel.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtwebsockets/metadata.xml b/dev-qt/qtwebsockets/metadata.xml
new file mode 100644
index 0000000..c33b152
--- /dev/null
+++ b/dev-qt/qtwebsockets/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="qml">Build QML bindings</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtwebsockets/qtwebsockets-5.10.9999.ebuild b/dev-qt/qtwebsockets/qtwebsockets-5.10.9999.ebuild
new file mode 100644
index 0000000..a0d178c
--- /dev/null
+++ b/dev-qt/qtwebsockets/qtwebsockets-5.10.9999.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Implementation of the WebSocket protocol for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~x86"
+fi
+
+IUSE="qml +ssl"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtnetwork-${PV}[ssl=]
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ qt_use_disable_mod qml quick src/src.pro
+
+ qt5-build_src_prepare
+}
diff --git a/dev-qt/qtwebview/metadata.xml b/dev-qt/qtwebview/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtwebview/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtwebview/qtwebview-5.10.9999.ebuild b/dev-qt/qtwebview/qtwebview-5.10.9999.ebuild
new file mode 100644
index 0000000..43288fc
--- /dev/null
+++ b/dev-qt/qtwebview/qtwebview-5.10.9999.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Module for displaying web content in a QML application using the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtdeclarative-${PV}
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtwebengine-${PV}
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-qt/qtwidgets/metadata.xml b/dev-qt/qtwidgets/metadata.xml
new file mode 100644
index 0000000..910cf07
--- /dev/null
+++ b/dev-qt/qtwidgets/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <use>
+ <flag name="gles2">Use GLES 2.0 or later instead of full OpenGL</flag>
+ <flag name="gtk">Build the GTK platform theme plugin</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtwidgets/qtwidgets-5.10.9999.ebuild b/dev-qt/qtwidgets/qtwidgets-5.10.9999.ebuild
new file mode 100644
index 0000000..ccb0c52
--- /dev/null
+++ b/dev-qt/qtwidgets/qtwidgets-5.10.9999.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtbase"
+inherit qt5-build
+
+DESCRIPTION="Set of components for creating classic desktop-style UIs for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+# keep IUSE defaults in sync with qtgui
+IUSE="gles2 gtk +png +xcb"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}[gles2=,png=,xcb?]
+ gtk? (
+ ~dev-qt/qtgui-${PV}[dbus]
+ x11-libs/gtk+:3
+ x11-libs/libX11
+ x11-libs/pango
+ )
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/tools/uic
+ src/widgets
+ src/plugins/platformthemes
+)
+
+QT5_GENTOO_CONFIG=(
+ gtk:gtk3:
+ ::widgets
+ !:no-widgets:
+)
+
+QT5_GENTOO_PRIVATE_CONFIG=(
+ :widgets
+)
+
+src_configure() {
+ local myconf=(
+ -opengl $(usex gles2 es2 desktop)
+ $(qt_use gtk)
+ -gui
+ $(qt_use png libpng system)
+ -widgets
+ $(qt_use xcb xcb system)
+ $(qt_use xcb xkbcommon system)
+ $(usex xcb '-xcb-xlib -xinput2 -xkb' '')
+ )
+ qt5-build_src_configure
+}
diff --git a/dev-qt/qtx11extras/metadata.xml b/dev-qt/qtx11extras/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtx11extras/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtx11extras/qtx11extras-5.10.9999.ebuild b/dev-qt/qtx11extras/qtx11extras-5.10.9999.ebuild
new file mode 100644
index 0000000..0aab3b0
--- /dev/null
+++ b/dev-qt/qtx11extras/qtx11extras-5.10.9999.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="Linux/X11-specific support library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}[xcb]
+"
+DEPEND="${RDEPEND}
+ test? ( ~dev-qt/qtwidgets-${PV} )
+"
diff --git a/dev-qt/qtxml/metadata.xml b/dev-qt/qtxml/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtxml/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtxml/qtxml-5.10.9999.ebuild b/dev-qt/qtxml/qtxml-5.10.9999.ebuild
new file mode 100644
index 0000000..3ea4d2e
--- /dev/null
+++ b/dev-qt/qtxml/qtxml-5.10.9999.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtbase"
+inherit qt5-build
+
+DESCRIPTION="Implementation of SAX and DOM for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+RDEPEND="
+ ~dev-qt/qtcore-${PV}
+"
+DEPEND="${RDEPEND}
+ test? ( ~dev-qt/qtnetwork-${PV} )
+"
+
+QT5_TARGET_SUBDIRS=(
+ src/xml
+)
+
+QT5_GENTOO_PRIVATE_CONFIG=(
+ :xml
+)
diff --git a/dev-qt/qtxmlpatterns/metadata.xml b/dev-qt/qtxmlpatterns/metadata.xml
new file mode 100644
index 0000000..32568f6
--- /dev/null
+++ b/dev-qt/qtxmlpatterns/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtxmlpatterns/qtxmlpatterns-5.10.9999.ebuild b/dev-qt/qtxmlpatterns/qtxmlpatterns-5.10.9999.ebuild
new file mode 100644
index 0000000..7bed5a7
--- /dev/null
+++ b/dev-qt/qtxmlpatterns/qtxmlpatterns-5.10.9999.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit qt5-build
+
+DESCRIPTION="XPath, XQuery, XSLT, and XML Schema validation library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+fi
+
+IUSE=""
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtnetwork-${PV}
+"
+RDEPEND="${DEPEND}"
diff --git a/eclass/qt5-build.eclass b/eclass/qt5-build.eclass
index 13eb968..50bdef0 100644
--- a/eclass/qt5-build.eclass
+++ b/eclass/qt5-build.eclass
@@ -6,6 +6,7 @@
# qt@gentoo.org
# @AUTHOR:
# Davide Pesavento <pesa@gentoo.org>
+# @SUPPORTED_EAPIS: 6
# @BLURB: Eclass for Qt5 split ebuilds.
# @DESCRIPTION:
# This eclass contains various functions that are used when building Qt5.
@@ -21,9 +22,10 @@ case ${EAPI} in
esac
# @ECLASS-VARIABLE: QT5_MODULE
+# @PRE_INHERIT
# @DESCRIPTION:
# The upstream name of the module this package belongs to. Used for
-# SRC_URI and EGIT_REPO_URI. Must be defined before inheriting the eclass.
+# SRC_URI and EGIT_REPO_URI. Must be set before inheriting the eclass.
: ${QT5_MODULE:=${PN}}
# @ECLASS-VARIABLE: QT5_TARGET_SUBDIRS
@@ -40,6 +42,14 @@ esac
# definitions, which are then merged together with all other Qt5 packages
# installed on the system to obtain the global qconfig.{h,pri} files.
+# @ECLASS-VARIABLE: QT5_GENTOO_PRIVATE_CONFIG
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Array of <useflag:feature> pairs that are evaluated in src_install
+# to generate the per-package list of enabled QT.global_private features,
+# which are then merged together with all other Qt5 packages installed on the
+# system to obtain the global qmodule.pri file.
+
# @ECLASS-VARIABLE: VIRTUALX_REQUIRED
# @DESCRIPTION:
# For proper description see virtualx.eclass man page.
@@ -50,19 +60,13 @@ esac
inherit estack flag-o-matic ltprune toolchain-funcs versionator virtualx
HOMEPAGE="https://www.qt.io/"
+LICENSE="|| ( GPL-2 GPL-3 LGPL-3 ) FDL-1.3"
+SLOT=5/$(get_version_component_range 1-2)
QT5_MINOR_VERSION=$(get_version_component_range 2)
QT5_PATCH_VERSION=$(get_version_component_range 3)
readonly QT5_MINOR_VERSION QT5_PATCH_VERSION
-if [[ ${QT5_MINOR_VERSION} -ge 7 ]]; then
- LICENSE="|| ( GPL-2 GPL-3 LGPL-3 ) FDL-1.3"
-else
- LICENSE="|| ( LGPL-2.1 LGPL-3 ) FDL-1.3"
-fi
-
-SLOT=5/$(get_version_component_range 1-2)
-
case ${PV} in
5.9999)
# git dev branch
@@ -77,14 +81,26 @@ case ${PV} in
*_alpha*|*_beta*|*_rc*)
# development release
QT5_BUILD_TYPE="release"
- MY_P=${QT5_MODULE}-opensource-src-${PV/_/-}
+
+ if [[ ${QT5_MINOR_VERSION} -ge 10 ]]; then
+ MY_P=${QT5_MODULE}-everywhere-src-${PV/_/-}
+ else
+ MY_P=${QT5_MODULE}-opensource-src-${PV/_/-}
+ fi
+
SRC_URI="https://download.qt.io/development_releases/qt/${PV%.*}/${PV/_/-}/submodules/${MY_P}.tar.xz"
S=${WORKDIR}/${MY_P}
;;
*)
# official stable release
QT5_BUILD_TYPE="release"
- MY_P=${QT5_MODULE}-opensource-src-${PV}
+
+ if [[ ${QT5_MINOR_VERSION} -ge 10 ]]; then
+ MY_P=${QT5_MODULE}-everywhere-src-${PV}
+ else
+ MY_P=${QT5_MODULE}-opensource-src-${PV}
+ fi
+
SRC_URI="https://download.qt.io/official_releases/qt/${PV%.*}/${PV}/submodules/${MY_P}.tar.xz"
S=${WORKDIR}/${MY_P}
;;
@@ -98,6 +114,7 @@ EGIT_REPO_URI=(
[[ ${QT5_BUILD_TYPE} == live ]] && inherit git-r3
# @ECLASS-VARIABLE: QT5_BUILD_DIR
+# @OUTPUT_VARIABLE
# @DESCRIPTION:
# Build directory for out-of-source builds.
case ${QT5_BUILD_TYPE} in
@@ -131,10 +148,7 @@ EXPORT_FUNCTIONS src_unpack src_prepare src_configure src_compile src_install sr
# Unpacks the sources.
qt5-build_src_unpack() {
if tc-is-gcc; then
- local min_gcc4_minor_version=5
- if [[ ${QT5_MINOR_VERSION} -ge 7 || ${PN} == qtwebengine ]]; then
- min_gcc4_minor_version=7
- fi
+ local min_gcc4_minor_version=7
if [[ $(gcc-major-version) -lt 4 ]] || \
[[ $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt ${min_gcc4_minor_version} ]]; then
eerror "GCC version 4.${min_gcc4_minor_version} or later is required to build this package"
@@ -156,7 +170,7 @@ qt5-build_src_unpack() {
fi
case ${QT5_BUILD_TYPE} in
- live) git-r3_src_unpack ;;
+ live) git-r3_src_unpack ;&
release) default ;;
esac
}
@@ -207,6 +221,11 @@ qt5-build_src_prepare() {
# Don't add -O3 to CXXFLAGS (bug 549140)
sed -i -e '/CONFIG\s*+=/ s/optimize_full//' \
src/{corelib/corelib,gui/gui}.pro || die "sed failed (optimize_full)"
+
+ # Respect build variables in configure tests (bug #639494)
+ if [[ ${QT5_MINOR_VERSION} -ge 9 ]]; then
+ sed -i -e "s|\"\$outpath/bin/qmake\" \"\$relpathMangled\" -- \"\$@\"|& $(qt5_qmake_args) |" configure || die
+ fi
fi
default
@@ -268,21 +287,9 @@ qt5-build_src_install() {
if [[ ${PN} == qtcore ]]; then
pushd "${QT5_BUILD_DIR}" >/dev/null || die
- local qmake_install_target=install_qmake
- if [[ ${QT5_MINOR_VERSION} -ge 7 ]]; then
- # qmake/qmake-aux.pro
- qmake_install_target=sub-qmake-qmake-aux-pro-install_subtargets
- fi
-
- local global_docs_install_target=
- if [[ ${QT5_MINOR_VERSION} -le 6 && ${QT5_PATCH_VERSION} -le 2 ]]; then
- global_docs_install_target=install_global_docs
- fi
-
set -- emake INSTALL_ROOT="${D}" \
- ${qmake_install_target} \
- install_{syncqt,mkspecs} \
- ${global_docs_install_target}
+ sub-qmake-qmake-aux-pro-install_subtargets \
+ install_{syncqt,mkspecs}
einfo "Running $*"
"$@"
@@ -318,9 +325,11 @@ qt5-build_src_install() {
# convenience symlinks
dosym qt5-"${CHOST}".conf /etc/xdg/qtchooser/5.conf
dosym qt5-"${CHOST}".conf /etc/xdg/qtchooser/qt5.conf
+ # TODO bug 522646: write an eselect module to manage default.conf
+ dosym qt5.conf /etc/xdg/qtchooser/default.conf
fi
- qt5_install_module_qconfigs
+ qt5_install_module_config
prune_libtool_files
}
@@ -328,7 +337,7 @@ qt5-build_src_install() {
# @DESCRIPTION:
# Regenerate configuration after installation or upgrade/downgrade.
qt5-build_pkg_postinst() {
- qt5_regenerate_global_qconfigs
+ qt5_regenerate_global_configs
}
# @FUNCTION: qt5-build_pkg_postrm
@@ -336,7 +345,7 @@ qt5-build_pkg_postinst() {
# Regenerate configuration when a module is completely removed.
qt5-build_pkg_postrm() {
if [[ -z ${REPLACED_BY_VERSION} && ${PN} != qtcore ]]; then
- qt5_regenerate_global_qconfigs
+ qt5_regenerate_global_configs
fi
}
@@ -573,7 +582,7 @@ qt5_base_configure() {
-no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-tds
# ensure the QML debugging support (qmltooling) is built in qtdeclarative
- -qml-debug
+ $([[ ${QT5_MINOR_VERSION} -lt 11 ]] && echo -qml-debug)
# MIPS DSP instruction set extensions
$(is-flagq -mno-dsp && echo -no-mips_dsp)
@@ -585,7 +594,7 @@ qt5_base_configure() {
# prefer system libraries (only common hard deps here)
-system-zlib
-system-pcre
- $([[ ${QT5_MINOR_VERSION} -ge 7 ]] && echo -system-doubleconversion)
+ -system-doubleconversion
# disable everything to prevent automagic deps (part 1)
-no-mtdev
@@ -603,7 +612,7 @@ qt5_base_configure() {
-glib
# disable everything to prevent automagic deps (part 2)
- $([[ ${QT5_MINOR_VERSION} -ge 7 ]] && echo -no-gtk || echo -no-gtkstyle)
+ -no-gtk
$([[ ${QT5_MINOR_VERSION} -lt 8 ]] && echo -no-pulseaudio -no-alsa)
# exclude examples and tests from default build
@@ -638,8 +647,8 @@ qt5_base_configure() {
# supported; see also https://bugreports.qt.io/browse/QTBUG-36129
#-reduce-relocations
- # let configure automatically detect if GNU gold is available
- #-use-gold-linker
+ # use the system linker (gold will be selected automagically otherwise)
+ $(tc-ld-is-gold && echo -use-gold-linker || echo -no-use-gold-linker)
# disable all platform plugins by default, override in qtgui
-no-xcb -no-eglfs -no-kms -no-gbm -no-directfb -no-linuxfb -no-mirclient
@@ -676,6 +685,9 @@ qt5_base_configure() {
# do not build with -Werror
-no-warnings-are-errors
+ # enable in respective modules to avoid poisoning QT.global_private.enabled_features
+ $([[ ${QT5_MINOR_VERSION} -ge 9 ]] && echo -no-gui -no-widgets)
+
# module-specific options
"${myconf[@]}"
)
@@ -695,6 +707,33 @@ qt5_base_configure() {
}
+# @FUNCTION: qt5_qmake_args
+# @INTERNAL
+# @DESCRIPTION:
+# Helper function to get the various toolchain-related variables.
+qt5_qmake_args() {
+ echo \
+ QMAKE_AR=\"$(tc-getAR)\" \
+ QMAKE_CC=\"$(tc-getCC)\" \
+ QMAKE_LINK_C=\"$(tc-getCC)\" \
+ QMAKE_LINK_C_SHLIB=\"$(tc-getCC)\" \
+ QMAKE_CXX=\"$(tc-getCXX)\" \
+ QMAKE_LINK=\"$(tc-getCXX)\" \
+ QMAKE_LINK_SHLIB=\"$(tc-getCXX)\" \
+ QMAKE_OBJCOPY=\"$(tc-getOBJCOPY)\" \
+ QMAKE_RANLIB= \
+ QMAKE_STRIP=\"$(tc-getSTRIP)\" \
+ QMAKE_CFLAGS=\"${CFLAGS}\" \
+ QMAKE_CFLAGS_RELEASE= \
+ QMAKE_CFLAGS_DEBUG= \
+ QMAKE_CXXFLAGS=\"${CXXFLAGS}\" \
+ QMAKE_CXXFLAGS_RELEASE= \
+ QMAKE_CXXFLAGS_DEBUG= \
+ QMAKE_LFLAGS=\"${LDFLAGS}\" \
+ QMAKE_LFLAGS_RELEASE= \
+ QMAKE_LFLAGS_DEBUG=
+}
+
# @FUNCTION: qt5_qmake
# @INTERNAL
# @DESCRIPTION:
@@ -736,15 +775,17 @@ qt5_qmake() {
|| die "qmake failed (${projectdir#${S}/})"
}
-# @FUNCTION: qt5_install_module_qconfigs
+# @FUNCTION: qt5_install_module_config
# @INTERNAL
# @DESCRIPTION:
-# Creates and installs gentoo-specific ${PN}-qconfig.{h,pri} files.
-qt5_install_module_qconfigs() {
- local x qconfig_add= qconfig_remove=
+# Creates and installs gentoo-specific ${PN}-qconfig.{h,pri} and
+# ${PN}-qmodule.pri files.
+qt5_install_module_config() {
+ local x qconfig_add= qconfig_remove= qprivateconfig_add= qprivateconfig_remove=
> "${T}"/${PN}-qconfig.h
> "${T}"/${PN}-qconfig.pri
+ [[ ${QT5_MINOR_VERSION} -ge 9 ]] && > "${T}"/${PN}-qmodule.pri
# generate qconfig_{add,remove} and ${PN}-qconfig.h
for x in "${QT5_GENTOO_CONFIG[@]}"; do
@@ -777,14 +818,46 @@ qt5_install_module_qconfigs() {
insinto "${QT5_ARCHDATADIR#${EPREFIX}}"/mkspecs/gentoo
doins "${T}"/${PN}-qconfig.pri
)
+
+ if [[ ${QT5_MINOR_VERSION} -ge 9 ]]; then
+ # generate qprivateconfig
+ for x in "${QT5_GENTOO_PRIVATE_CONFIG[@]}"; do
+ local flag=${x%%:*}
+ x=${x#${flag}:}
+ local feature=${x%%:*}
+ x=${x#${feature}:}
+
+ if [[ -z ${flag} ]] || { [[ ${flag} != '!' ]] && use ${flag}; }; then
+ [[ -n ${feature} ]] && qprivateconfig_add+=" ${feature}"
+ else
+ [[ -n ${feature} ]] && qprivateconfig_remove+=" ${feature}"
+ fi
+ done
+
+ # generate and install ${PN}-qmodule.pri
+ [[ -n ${qprivateconfig_add} ]] && echo "QT.global_private.enabled_features = ${qprivateconfig_add}" >> "${T}"/${PN}-qmodule.pri
+ [[ -n ${qprivateconfig_remove} ]] && echo "QT.global_private.disabled_features = ${qprivateconfig_remove}" >> "${T}"/${PN}-qmodule.pri
+ [[ -s ${T}/${PN}-qmodule.pri ]] && (
+ insinto "${QT5_ARCHDATADIR#${EPREFIX}}"/mkspecs/gentoo
+ doins "${T}"/${PN}-qmodule.pri
+ )
+ fi
+
+ # install the original {qconfig,qmodule}.pri from qtcore
+ [[ ${PN} == qtcore && ${QT5_MINOR_VERSION} -ge 9 ]] && (
+ insinto "${QT5_ARCHDATADIR#${EPREFIX}}"/mkspecs/gentoo
+ newins "${D}${QT5_ARCHDATADIR}"/mkspecs/qconfig.pri qconfig-qtcore.pri
+ newins "${D}${QT5_ARCHDATADIR}"/mkspecs/qmodule.pri qmodule-qtcore.pri
+ )
}
-# @FUNCTION: qt5_regenerate_global_qconfigs
+# @FUNCTION: qt5_regenerate_global_configs
# @INTERNAL
# @DESCRIPTION:
-# Generates Gentoo-specific qconfig.{h,pri} according to the build configuration.
+# Generates Gentoo-specific qconfig.{h,pri} and qmodule.pri according to the
+# build configuration.
# Don't call die here because dying in pkg_post{inst,rm} only makes things worse.
-qt5_regenerate_global_qconfigs() {
+qt5_regenerate_global_configs() {
einfo "Regenerating gentoo-qconfig.h"
find "${ROOT%/}${QT5_HEADERDIR}"/Gentoo \
@@ -798,10 +871,15 @@ qt5_regenerate_global_qconfigs() {
einfo "Updating QT_CONFIG in qconfig.pri"
local qconfig_pri=${ROOT%/}${QT5_ARCHDATADIR}/mkspecs/qconfig.pri
+ local qconfig_pri_orig=${ROOT%/}${QT5_ARCHDATADIR}/mkspecs/gentoo/qconfig-qtcore.pri
if [[ -f ${qconfig_pri} ]]; then
local x qconfig_add= qconfig_remove=
- local qt_config=$(sed -n 's/^QT_CONFIG\s*+=\s*//p' "${qconfig_pri}")
- local new_qt_config=
+ local qt_config new_qt_config=
+ if [[ -f ${qconfig_pri_orig} ]]; then
+ qt_config=$(sed -n 's/^QT_CONFIG\s*+=\s*//p' "${qconfig_pri_orig}")
+ else
+ qt_config=$(sed -n 's/^QT_CONFIG\s*+=\s*//p' "${qconfig_pri}")
+ fi
# generate list of QT_CONFIG entries from the existing list,
# appending QCONFIG_ADD and excluding QCONFIG_REMOVE
@@ -823,4 +901,61 @@ qt5_regenerate_global_qconfigs() {
else
ewarn "${qconfig_pri} does not exist or is not a regular file"
fi
+
+ if [[ ${QT5_MINOR_VERSION} -ge 9 ]]; then
+ einfo "Updating QT.global_private in qmodule.pri"
+
+ local qmodule_pri=${ROOT%/}${QT5_ARCHDATADIR}/mkspecs/qmodule.pri
+ local qmodule_pri_orig=${ROOT%/}${QT5_ARCHDATADIR}/mkspecs/gentoo/qmodule-qtcore.pri
+ if [[ -f ${qmodule_pri} && -f ${qmodule_pri_orig} ]]; then
+ local x
+ local qprivateconfig_enabled= qprivateconfig_disabled=
+ local qprivateconfig_orig_enabled= qprivateconfig_orig_disabled=
+ local new_qprivateconfig_enabled= new_qprivateconfig_disabled=
+
+ # generate lists of QT.global_private.{dis,en}abled_features
+ qprivateconfig_orig_enabled="$(sed -n 's/^QT.global_private.enabled_features\s=\s*//p' "${qmodule_pri_orig}")"
+ qprivateconfig_orig_disabled="$(sed -n 's/^QT.global_private.disabled_features\s=\s*//p' "${qmodule_pri_orig}")"
+ eshopts_push -s nullglob
+ for x in "${ROOT%/}${QT5_ARCHDATADIR}"/mkspecs/gentoo/*-qmodule.pri; do
+ qprivateconfig_enabled+=" $(sed -n 's/^QT.global_private.enabled_features\s=\s*//p' "${x}")"
+ qprivateconfig_disabled+=" $(sed -n 's/^QT.global_private.disabled_features\s=\s*//p' "${x}")"
+ done
+ eshopts_pop
+
+ # anything enabled is enabled, but anything disabled is
+ # only disabled if it isn't enabled somewhere else.
+ # this is because we need to forcibly disable some stuff
+ # in qtcore to support split qtbase.
+ new_qprivateconfig_enabled=${qprivateconfig_enabled}
+ for x in ${qprivateconfig_disabled}; do
+ if ! has "${x}" ${qprivateconfig_enabled}; then
+ new_qprivateconfig_disabled+=" ${x}"
+ fi
+ done
+
+ # check all items from the original qtcore qmodule.pri,
+ # and add them to the appropriate list if not overriden
+ # elsewhere
+ for x in ${qprivateconfig_orig_enabled}; do
+ if ! has "${x}" ${new_qprivateconfig_enabled} ${new_qprivateconfig_disabled}; then
+ new_qprivateconfig_enabled+=" ${x}"
+ fi
+ done
+ for x in ${qprivateconfig_orig_disabled}; do
+ if ! has "${x}" ${new_qprivateconfig_enabled} ${new_qprivateconfig_disabled}; then
+ new_qprivateconfig_disabled+=" ${x}"
+ fi
+ done
+
+ # now replace the existing QT.global_private.{dis,en}abled_features
+ # with the generated list
+ sed \
+ -e "s/^QT.global_private.enabled_features\s*=.*/QT.global_private.enabled_features =${new_qprivateconfig_enabled}/" \
+ -e "s/^QT.global_private.disabled_features\s*=.*/QT.global_private.disabled_features =${new_qprivateconfig_disabled}/" \
+ -i "${qmodule_pri}" || eerror "Failed to sed QT.global_private.enabled_features in ${qmodule_pri}"
+ else
+ ewarn "${qmodule_pri} or ${qmodule_pri_orig} does not exist or is not a regular file"
+ fi
+ fi
}