summaryrefslogtreecommitdiff
path: root/dev-qt
diff options
context:
space:
mode:
authorIonen Wolkens <ionen@gentoo.org>2024-09-27 03:09:18 -0400
committerIonen Wolkens <ionen@gentoo.org>2024-09-27 03:25:52 -0400
commitc968f66f695e0e9140b31c6f051c6bea78b68c1f (patch)
treef9e94fb33ab81732d79e86cb6531a8e08c465db2 /dev-qt
parentdev-qt/qtsvg: add 6.7.3 (diff)
downloadgentoo-c968f66f695e0e9140b31c6f051c6bea78b68c1f.tar.gz
gentoo-c968f66f695e0e9140b31c6f051c6bea78b68c1f.tar.bz2
gentoo-c968f66f695e0e9140b31c6f051c6bea78b68c1f.zip
dev-qt/qttools: add 6.7.3
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'dev-qt')
-rw-r--r--dev-qt/qttools/Manifest1
-rw-r--r--dev-qt/qttools/qttools-6.7.3.ebuild154
2 files changed, 155 insertions, 0 deletions
diff --git a/dev-qt/qttools/Manifest b/dev-qt/qttools/Manifest
index dd6e205db1c6..cebc01f4c488 100644
--- a/dev-qt/qttools/Manifest
+++ b/dev-qt/qttools/Manifest
@@ -1,2 +1,3 @@
DIST qttools-everywhere-src-6.7.2.tar.xz 9019636 BLAKE2B c4324275adddefc2399ce4ff1305d285c9e4bc7fb6cebf6bd310573773ada5cf91f14561b855df685bdcce0a39897c3b9e0b62544083af2794d7eaaf35660146 SHA512 311467d0e6970711b4d984fe792d2b75609f38c04121073d5c3c34c682fcee89787f6982c886e62206a76b1f647de60e56510439b0288f8bd1ae21a2683a37cd
+DIST qttools-everywhere-src-6.7.3.tar.xz 9022820 BLAKE2B e1eafdbc9a08b031a51480733be38e2b217e66b6f66a49e99e603fa0b6ed780164a403c984069cc33819203edd7984b6a1f8dc5af4ebcad94ecc6730f3f1d604 SHA512 c15a76a84e8cea53e8c68b00325acf2cd3fe8097c578f3e96fbb68958453116f02fed25d2811d4485b82f196b988870f0078aea0450c4526523fb8ffacbfae57
DIST qttools-everywhere-src-6.8.0-rc.tar.xz 9057508 BLAKE2B daef8650ccd268abac709bb01bd86e433f3172078afa5376b6d45e3394958528b35bc3c9db66f643d13f4338737e9da2422bd25b633dadcc5141b17d76c41ad7 SHA512 7d643cc07280ebd9354071ce29dcefb5c59c8f822a3ce1f56de490bffb9d86c71b9c2105408d979cfb0e1253a37500c00b184a26e7df2512c3c30034615a1ce6
diff --git a/dev-qt/qttools/qttools-6.7.3.ebuild b/dev-qt/qttools/qttools-6.7.3.ebuild
new file mode 100644
index 000000000000..da97fd670c79
--- /dev/null
+++ b/dev-qt/qttools/qttools-6.7.3.ebuild
@@ -0,0 +1,154 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( {15..18} ) # see .cmake.conf for minimum
+LLVM_OPTIONAL=1
+
+# behaves very badly when qttools is not already installed, also
+# other issues to handle (clang tests flaky depending on version,
+# and 3rdparty/ tries to FetchContent gtest)
+QT6_RESTRICT_TESTS=1
+
+inherit desktop llvm-r1 optfeature qt6-build
+
+DESCRIPTION="Qt Tools Collection"
+
+if [[ ${QT6_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+
+IUSE="
+ +assistant clang designer distancefieldgenerator gles2-only
+ +linguist opengl pixeltool +qdbus qdoc qml qtattributionsscanner
+ qtdiag qtplugininfo vulkan +widgets zstd
+"
+# note that some tools do not *require* widgets but will skip a sub-tool
+# if not enabled (e.g. linguist gives lrelease but not the GUI linguist6)
+REQUIRED_USE="
+ assistant? ( widgets )
+ clang? ( ${LLVM_REQUIRED_USE} )
+ designer? ( qml widgets )
+ distancefieldgenerator? ( qml widgets )
+ pixeltool? ( widgets )
+ qdoc? ( clang qml )
+"
+
+RDEPEND="
+ ~dev-qt/qtbase-${PV}:6[widgets?]
+ assistant? ( ~dev-qt/qtbase-${PV}:6[network,sql,sqlite] )
+ clang? (
+ $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}=
+ sys-devel/llvm:${LLVM_SLOT}=
+ ')
+ )
+ designer? (
+ ~dev-qt/qtbase-${PV}:6[network,xml,zstd=]
+ zstd? ( app-arch/zstd:= )
+ )
+ qdbus? ( ~dev-qt/qtbase-${PV}:6[dbus,xml] )
+ qml? ( ~dev-qt/qtdeclarative-${PV}:6[widgets?] )
+ qtdiag? ( ~dev-qt/qtbase-${PV}:6[network,gles2-only=,vulkan=] )
+ widgets? ( ~dev-qt/qtbase-${PV}:6[opengl=] )
+"
+DEPEND="
+ ${RDEPEND}
+ qtdiag? (
+ vulkan? ( dev-util/vulkan-headers )
+ )
+"
+
+pkg_setup() {
+ use clang && llvm-r1_pkg_setup
+}
+
+src_configure() {
+ local mycmakeargs=(
+ # prevent the clang test as it can abort due to bug #916098
+ $(cmake_use_find_package clang WrapLibClang)
+ $(cmake_use_find_package qml Qt6Qml)
+ $(cmake_use_find_package widgets Qt6Widgets)
+ $(qt_feature assistant)
+ $(qt_feature clang)
+ $(qt_feature designer)
+ $(qt_feature distancefieldgenerator)
+ $(qt_feature linguist)
+ $(qt_feature pixeltool)
+ $(qt_feature qdbus)
+ $(qt_feature qdoc)
+ $(qt_feature qtattributionsscanner)
+ $(qt_feature qtdiag)
+ $(qt_feature qtplugininfo)
+
+ # TODO?: package litehtml, but support for latest releases seem
+ # to lag behind and bundled may work out better for now
+ # https://github.com/litehtml/litehtml/issues/266
+ $(usev assistant -DCMAKE_DISABLE_FIND_PACKAGE_litehtml=ON)
+
+ $(usev designer -DQT_UNITY_BUILD=OFF) # fails to build (QTBUG-122634)
+ )
+
+ qt6-build_src_configure
+}
+
+src_install() {
+ qt6-build_src_install
+
+ if use widgets; then #914766
+ use designer || use distancefieldgenerator || use pixeltool &&
+ newicon src/designer/src/designer/images/designer.png designer6.png
+
+ if use assistant; then
+ make_desktop_entry assistant6 'Qt 6 Assistant' assistant6 \
+ 'Qt;Development;Documentation' \
+ 'Comment=Tool for viewing online documentation in Qt help file format'
+ newicon src/assistant/assistant/images/assistant-128.png assistant6.png
+ fi
+
+ if use designer; then
+ make_desktop_entry designer6 'Qt 6 Designer' designer6 \
+ 'Qt;Development;GUIDesigner' \
+ 'Comment=WYSIWYG tool for designing and building graphical user interfaces with QtWidgets'
+ fi
+
+ if use distancefieldgenerator; then
+ # no icon, sharing with designer which fits letter-wise
+ make_desktop_entry qdistancefieldgenerator6 'Qt 6 Distance Field Generator' designer6 \
+ 'Qt;Development' \
+ 'Comment=Tool for pregenerating the font cache of Qt applications'
+ fi
+
+ if use linguist; then
+ make_desktop_entry linguist6 'Qt 6 Linguist' linguist6 \
+ 'Qt;Development;Translation' \
+ 'Comment=Tool for translating Qt applications'
+ newicon src/linguist/linguist/images/icons/linguist-128-32.png linguist6.png
+ fi
+
+ if use pixeltool; then
+ # no icon, not fitting but share with designer for now
+ make_desktop_entry pixeltool6 'Qt 6 Pixel Tool' designer6 \
+ 'Qt;Development' \
+ 'Comment=Tool for zooming in the desktop area pointed by the cursor'
+ fi
+
+ if use qdbus; then
+ make_desktop_entry qdbusviewer6 'Qt 6 QDBusViewer' qdbusviewer6 \
+ 'Qt;Development' \
+ 'Comment=Tool that lets introspect D-Bus objects and messages'
+ newicon src/qdbus/qdbusviewer/images/qdbusviewer-128.png qdbusviewer6.png
+ fi
+
+ # hack: make_destop_entry does not support overriding DESCRIPTION
+ find "${ED}" -type f -name "*.desktop" \
+ -exec sed -i "/^Comment=${DESCRIPTION}/d" -- {} + || die
+ fi
+}
+
+pkg_postinst() {
+ use assistant &&
+ optfeature "Qt documentation viewable in assistant" \
+ 'dev-qt/qt-docs:6[qch]' #602296
+}