forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
qttools-6.5.9999.ebuild
75 lines (64 loc) · 1.94 KB
/
qttools-6.5.9999.ebuild
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit llvm optfeature qt6-build
DESCRIPTION="Qt Tools Collection"
if [[ ${QT6_BUILD_TYPE} == release ]]; then
KEYWORDS="~amd64"
fi
IUSE="
assistant clang designer distancefieldgenerator gles2-only
+linguist opengl pixeltool qdbus qdoc qml qtattributionsscanner
qtdiag qtplugininfo vulkan +widgets
"
# 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 )
designer? ( qml widgets )
distancefieldgenerator? ( qml widgets )
pixeltool? ( widgets )
qdoc? ( clang )
"
# behaves very badly when qttools is not already installed, also
# other more minor issues (clang tests flaky depending on version,
# and 3rdparty/ tries to FetchContent gtest)
RESTRICT="test"
LLVM_MAX_SLOT=17
RDEPEND="
~dev-qt/qtbase-${PV}:6[network,widgets?]
assistant? ( ~dev-qt/qtbase-${PV}:6[sql,sqlite] )
clang? ( <sys-devel/clang-$((LLVM_MAX_SLOT+1)):= )
designer? ( ~dev-qt/qtbase-${PV}:6[xml] )
qdbus? ( ~dev-qt/qtbase-${PV}:6[dbus,xml] )
qml? ( ~dev-qt/qtdeclarative-${PV}:6[widgets?] )
qtdiag? ( ~dev-qt/qtbase-${PV}:6[gles2-only=,vulkan=] )
widgets? ( ~dev-qt/qtbase-${PV}:6[opengl=] )
"
DEPEND="${RDEPEND}"
pkg_setup() {
use clang && llvm_pkg_setup
}
src_configure() {
local mycmakeargs=(
$(cmake_use_find_package qml Qt6Qml)
$(cmake_use_find_package widgets Qt6Widgets)
$(qt_feature assistant)
$(qt_feature clang clangcpp)
$(qt_feature designer)
$(qt_feature distancefieldgenerator)
$(qt_feature linguist)
$(qt_feature pixeltool)
$(qt_feature qdbus)
$(qt_feature qdoc clang)
$(qt_feature qtattributionsscanner)
$(qt_feature qtdiag)
$(qt_feature qtplugininfo)
)
qt6-build_src_configure
}
pkg_postinst() {
use assistant &&
optfeature "Qt documentation viewable in assistant" \
dev-qt/qt-docs:6 #602296
}