diff options
author | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2018-02-23 16:00:56 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2018-02-23 16:00:56 +0300 |
commit | 57c8c6a8613ffe1e96587e21b34249133e54e4d2 (patch) | |
tree | a95832bfa28a57a4dd7df2a86fc33a19d98fe4cc | |
parent | abbc99af90c96d4f50084e29633b32594b9bbfec (diff) |
qt 5.10 scm from qt repo
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 } |