summaryrefslogtreecommitdiff
path: root/qmake/option.cpp
diff options
context:
space:
mode:
authorRalf Habacker <ralf.habacker@freenet.de>2017-07-10 18:28:29 +0200
committerRalf Habacker <ralf.habacker@freenet.de>2021-01-14 23:30:47 +0100
commitab2c61e6384bbb5a0d154caa8f4784f9053147fe (patch)
treeb43dff61f05cba0a2f362a61623f58e9b83c45c0 /qmake/option.cpp
parent4d3d981144d810fbf1fe263741d36b07a9227621 (diff)
downloadqtbase-ab2c61e6384bbb5a0d154caa8f4784f9053147fe.tar.gz
If available, use a version-specific qt<major-version>.conf
To enable the current Qt version to use a qt.conf that is independent from the previous version, a file named 'qt<major-version>.conf' is searched for first. If this file does not exist, a file with the name 'qt.conf' is searched for. Task-number: QTBUG-88635 Change-Id: If75b63f72a7bdbdf1de7729ea4ecb00810b58d12 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Diffstat (limited to 'qmake/option.cpp')
-rw-r--r--qmake/option.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/qmake/option.cpp b/qmake/option.cpp
index 9c435efb89..2a3fea8a89 100644
--- a/qmake/option.cpp
+++ b/qmake/option.cpp
@@ -174,7 +174,7 @@ bool usage(const char *a0)
" -set <prop> <value> Set persistent property\n"
" -unset <prop> Unset persistent property\n"
" -query <prop> Query persistent property. Show all if <prop> is empty.\n"
- " -qtconf file Use file instead of looking for qt.conf\n"
+ " -qtconf file Use file instead of looking for qt" QT_STRINGIFY(QT_VERSION_MAJOR) ".conf, then qt.conf\n"
" -cache file Use file as cache [makefile mode only]\n"
" -spec spec Use spec as QMAKESPEC [makefile mode only]\n"
" -nocache Don't use a cache file [makefile mode only]\n"
@@ -660,8 +660,15 @@ QString qmake_libraryInfoFile()
{
if (!Option::globals->qtconf.isEmpty())
return Option::globals->qtconf;
- if (!Option::globals->qmake_abslocation.isEmpty())
- return QDir(QFileInfo(Option::globals->qmake_abslocation).absolutePath()).filePath("qt.conf");
+ if (!Option::globals->qmake_abslocation.isEmpty()) {
+ QDir dir(QFileInfo(Option::globals->qmake_abslocation).absolutePath());
+ QString qtconfig = dir.filePath("qt" QT_STRINGIFY(QT_VERSION_MAJOR) ".conf");
+ if (QFile::exists(qtconfig))
+ return qtconfig;
+ qtconfig = dir.filePath("qt.conf");
+ if (QFile::exists(qtconfig))
+ return qtconfig;
+ }
return QString();
}