From 27896986b3c2930ccbbe062d3e7a0b7bcc08caf1 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Sep 2012 17:22:30 +0200 Subject: [PATCH] qlibraryinfo: allow to set qt.conf from the outside using the environment Allow to set a qt.conf from the outside using the environment. This allows to inject new prefixes and other paths into qmake. This is needed when using the same qmake binary to build qt/x11 and qt/embedded Upstream-Status: Inappropriate [embedded specific] again very OE specific to read everything from environment (reusing the same qmake from sstate and replacing all configured paths in it with qt.conf from environment). Change-Id: I41595c6ce7514e8f197d0a19a1308c9460037d1b Signed-off-by: Martin Jansa --- src/corelib/global/qlibraryinfo.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp index 4b116c54b2e..bfa21c997b4 100644 --- a/src/corelib/global/qlibraryinfo.cpp +++ b/src/corelib/global/qlibraryinfo.cpp @@ -103,7 +103,12 @@ static std::unique_ptr findConfiguration() if (qtconfManualPath) return std::make_unique(*qtconfManualPath, QSettings::IniFormat); - QString qtconfig = QStringLiteral(":/qt/etc/qt.conf"); + QByteArray config = getenv("OE_QMAKE_QTCONF_PATH"); + QString qtconfig = QFile::decodeName(config); + if (QFile::exists(qtconfig)) + return std::make_unique(qtconfig, QSettings::IniFormat); + + qtconfig = QStringLiteral(":/qt/etc/qt.conf"); if (QResource(qtconfig, QLocale::c()).isValid()) return std::make_unique(qtconfig, QSettings::IniFormat); #ifdef Q_OS_DARWIN