summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2021-09-05 13:17:11 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2021-09-08 18:54:32 +0200
commit2aad1931f8a03c77c16f6664d51afdc190efe8aa (patch)
tree8e266244c80587111c60cffd9c7f374e70e56e91 /eclass
parentsys-fs/udisks: stable 2.9.3 for sparc, bug #811987 (diff)
downloadgentoo-2aad1931f8a03c77c16f6664d51afdc190efe8aa.tar.gz
gentoo-2aad1931f8a03c77c16f6664d51afdc190efe8aa.tar.bz2
gentoo-2aad1931f8a03c77c16f6664d51afdc190efe8aa.zip
qt5-build.eclass: Always run qt5_tools_configure for QT5_MODULE=qttools
Run qt5_qmake directly inside qt5_tools_configure(), copy the resulting qttools-config.pri into QT5_BUILD_DIR again. Add linguist-tools handling. Closes: https://bugs.gentoo.org/728278 Closes: https://bugs.gentoo.org/811147 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'eclass')
-rw-r--r--eclass/qt5-build.eclass25
1 files changed, 20 insertions, 5 deletions
diff --git a/eclass/qt5-build.eclass b/eclass/qt5-build.eclass
index 2765fc46081f..988dceb495f2 100644
--- a/eclass/qt5-build.eclass
+++ b/eclass/qt5-build.eclass
@@ -166,8 +166,10 @@ qt5-build_src_configure() {
if [[ ${QT5_MODULE} == qtbase ]]; then
qt5_base_configure
fi
- if [[ ${QT5_MODULE} == qttools ]] && [[ -z ${QT5_TARGET_SUBDIRS[@]} ]]; then
- qt5_tools_configure
+ if [[ ${QT5_MODULE} == qttools ]]; then
+ if [[ ${EAPI} != 7 || -z ${QT5_TARGET_SUBDIRS[@]} ]]; then
+ qt5_tools_configure
+ fi
fi
qt5_foreach_target_subdir qt5_qmake
@@ -643,7 +645,10 @@ qt5_base_configure() {
# @FUNCTION: qt5_tools_configure
# @INTERNAL
# @DESCRIPTION:
-# Disables modules other than ${PN} belonging to qttools.
+# Most of qttools require files that are only generated when qmake is
+# run in the root directory. Related bugs: 676948, 716514.
+# Runs qt5_qmake in root directory to create qttools-config.pri and copy to
+# ${QT5_BUILD_DIR}, disabling modules other than ${PN} belonging to qttools.
qt5_tools_configure() {
# configure arguments
local qmakeargs=(
@@ -659,13 +664,23 @@ qt5_tools_configure() {
-no-feature-winrtrunner
)
- local i
+ local i module=${PN}
+ case ${PN} in
+ linguist-tools) module=linguist ;;
+ *) ;;
+ esac
for i in assistant designer linguist pixeltool qdbus qdoc qtdiag qtpaths qtplugininfo; do
- [[ ${PN} == ${i} ]] || qmakeargs+=( -no-feature-${i} )
+ [[ ${module} != ${i} ]] && qmakeargs+=( -no-feature-${i} )
done
# allow the ebuild to override what we set here
myqmakeargs=( "${qmakeargs[@]}" "${myqmakeargs[@]}" )
+
+ if [[ ${EAPI} != 7 ]]; then
+ mkdir -p "${QT5_BUILD_DIR}" || die
+ qt5_qmake "${QT5_BUILD_DIR}"
+ cp qttools-config.pri "${QT5_BUILD_DIR}" || die
+ fi
}
# @FUNCTION: qt5_qmake_args