forked from qt-creator/qt-creator
introduce qmakeProperty(), use instead of versionInfo() where applicable
the idea is to encapsulate accesses to specific variables. Change-Id: Icafd2c85de6178db1a492a5dd36dde7f1925ea21 Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
This commit is contained in:
@@ -161,9 +161,10 @@ QStringList AndroidDebugSupport::qtSoPaths(QtSupport::BaseQtVersion *qtVersion)
|
|||||||
|
|
||||||
QSet<QString> paths;
|
QSet<QString> paths;
|
||||||
for (uint i = 0; i < sizeof qMakeVariables / sizeof qMakeVariables[0]; ++i) {
|
for (uint i = 0; i < sizeof qMakeVariables / sizeof qMakeVariables[0]; ++i) {
|
||||||
if (!qtVersion->versionInfo().contains(QLatin1String(qMakeVariables[i])))
|
QString path = qtVersion->qmakeProperty(qMakeVariables[i]);
|
||||||
|
if (path.isNull())
|
||||||
continue;
|
continue;
|
||||||
QDirIterator it(qtVersion->versionInfo()[QLatin1String(qMakeVariables[i])], QStringList() << QLatin1String("*.so"), QDir::Files, QDirIterator::Subdirectories);
|
QDirIterator it(path, QStringList() << QLatin1String("*.so"), QDir::Files, QDirIterator::Subdirectories);
|
||||||
while (it.hasNext()) {
|
while (it.hasNext()) {
|
||||||
it.next();
|
it.next();
|
||||||
paths.insert(it.fileInfo().absolutePath());
|
paths.insert(it.fileInfo().absolutePath());
|
||||||
|
@@ -407,7 +407,7 @@ bool AndroidManager::createAndroidTemplatesIfNecessary(ProjectExplorer::Target *
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
Utils::FileName javaSrcPath
|
Utils::FileName javaSrcPath
|
||||||
= Utils::FileName::fromString(version->versionInfo()[QLatin1String("QT_INSTALL_PREFIX")])
|
= Utils::FileName::fromString(version->qmakeProperty("QT_INSTALL_PREFIX"))
|
||||||
.appendPath(QLatin1String("src/android/java"));
|
.appendPath(QLatin1String("src/android/java"));
|
||||||
QDir projectDir(qt4Project->projectDirectory());
|
QDir projectDir(qt4Project->projectDirectory());
|
||||||
Utils::FileName androidPath = dirPath(target);
|
Utils::FileName androidPath = dirPath(target);
|
||||||
@@ -571,7 +571,7 @@ Utils::FileName AndroidManager::localLibsRulesFilePath(ProjectExplorer::Target *
|
|||||||
QtSupport::BaseQtVersion *version = QtSupport::QtProfileInformation::qtVersion(target->profile());
|
QtSupport::BaseQtVersion *version = QtSupport::QtProfileInformation::qtVersion(target->profile());
|
||||||
if (!version)
|
if (!version)
|
||||||
return Utils::FileName();
|
return Utils::FileName();
|
||||||
return Utils::FileName::fromString(version->versionInfo()[QLatin1String("QT_INSTALL_LIBS")] + QLatin1String("/rules.xml"));
|
return Utils::FileName::fromString(version->qmakeProperty("QT_INSTALL_LIBS") + QLatin1String("/rules.xml"));
|
||||||
}
|
}
|
||||||
|
|
||||||
QString AndroidManager::loadLocalLibs(ProjectExplorer::Target *target, int apiLevel)
|
QString AndroidManager::loadLocalLibs(ProjectExplorer::Target *target, int apiLevel)
|
||||||
@@ -596,7 +596,7 @@ QStringList AndroidManager::availableQtLibs(ProjectExplorer::Target *target)
|
|||||||
= qobject_cast<const Qt4ProjectManager::Qt4Project *>(target->project());
|
= qobject_cast<const Qt4ProjectManager::Qt4Project *>(target->project());
|
||||||
if (!qt4Project || !version)
|
if (!qt4Project || !version)
|
||||||
return libs;
|
return libs;
|
||||||
QString qtLibsPath = version->versionInfo()[QLatin1String("QT_INSTALL_LIBS")];
|
QString qtLibsPath = version->qmakeProperty("QT_INSTALL_LIBS");
|
||||||
if (!readelfPath.toFileInfo().exists()) {
|
if (!readelfPath.toFileInfo().exists()) {
|
||||||
QDirIterator libsIt(qtLibsPath, QStringList() << QLatin1String("libQt*.so"));
|
QDirIterator libsIt(qtLibsPath, QStringList() << QLatin1String("libQt*.so"));
|
||||||
while (libsIt.hasNext()) {
|
while (libsIt.hasNext()) {
|
||||||
|
@@ -224,7 +224,7 @@ QString DesignDocumentController::pathToQt() const
|
|||||||
if (activeQtVersion && (activeQtVersion->qtVersion().majorVersion > 3)
|
if (activeQtVersion && (activeQtVersion->qtVersion().majorVersion > 3)
|
||||||
&& (activeQtVersion->type() == QLatin1String(QtSupport::Constants::DESKTOPQT)
|
&& (activeQtVersion->type() == QLatin1String(QtSupport::Constants::DESKTOPQT)
|
||||||
|| activeQtVersion->type() == QLatin1String(QtSupport::Constants::SIMULATORQT)))
|
|| activeQtVersion->type() == QLatin1String(QtSupport::Constants::SIMULATORQT)))
|
||||||
return activeQtVersion->versionInfo().value("QT_INSTALL_DATA");
|
return activeQtVersion->qmakeProperty("QT_INSTALL_DATA");
|
||||||
return QString();
|
return QString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -165,7 +165,7 @@ void QmlProject::refresh(RefreshOptions options)
|
|||||||
}
|
}
|
||||||
if (version) {
|
if (version) {
|
||||||
pinfo.tryQmlDump = true;
|
pinfo.tryQmlDump = true;
|
||||||
pinfo.qtImportsPath = version->versionInfo().value("QT_INSTALL_IMPORTS");
|
pinfo.qtImportsPath = version->qmakeProperty("QT_INSTALL_IMPORTS");
|
||||||
pinfo.qtVersionString = version->qtVersionString();
|
pinfo.qtVersionString = version->qtVersionString();
|
||||||
}
|
}
|
||||||
m_modelManager->updateProjectInfo(pinfo);
|
m_modelManager->updateProjectInfo(pinfo);
|
||||||
@@ -219,7 +219,7 @@ QStringList QmlProject::importPaths() const
|
|||||||
if (runConfig) {
|
if (runConfig) {
|
||||||
const QtSupport::BaseQtVersion *qtVersion = runConfig->qtVersion();
|
const QtSupport::BaseQtVersion *qtVersion = runConfig->qtVersion();
|
||||||
if (qtVersion && qtVersion->isValid()) {
|
if (qtVersion && qtVersion->isValid()) {
|
||||||
const QString qtVersionImportPath = qtVersion->versionInfo().value("QT_INSTALL_IMPORTS");
|
const QString qtVersionImportPath = qtVersion->qmakeProperty("QT_INSTALL_IMPORTS");
|
||||||
if (!qtVersionImportPath.isEmpty())
|
if (!qtVersionImportPath.isEmpty())
|
||||||
importPaths += qtVersionImportPath;
|
importPaths += qtVersionImportPath;
|
||||||
}
|
}
|
||||||
|
@@ -623,7 +623,7 @@ Utils::Environment Qt4RunConfiguration::baseEnvironment() const
|
|||||||
|
|
||||||
QtSupport::BaseQtVersion *qtVersion = QtSupport::QtProfileInformation::qtVersion(target()->profile());
|
QtSupport::BaseQtVersion *qtVersion = QtSupport::QtProfileInformation::qtVersion(target()->profile());
|
||||||
if (qtVersion)
|
if (qtVersion)
|
||||||
env.prependOrSetLibrarySearchPath(qtVersion->versionInfo().value(QLatin1String("QT_INSTALL_LIBS")));
|
env.prependOrSetLibrarySearchPath(qtVersion->qmakeProperty("QT_INSTALL_LIBS"));
|
||||||
return env;
|
return env;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -503,7 +503,7 @@ Utils::FileName Qt4BuildConfiguration::extractSpecFromArguments(QString *args,
|
|||||||
return Utils::FileName();
|
return Utils::FileName();
|
||||||
|
|
||||||
Utils::FileName baseMkspecDir = Utils::FileName::fromUserInput(
|
Utils::FileName baseMkspecDir = Utils::FileName::fromUserInput(
|
||||||
version->versionInfo().value(QLatin1String("QT_HOST_DATA")) + QLatin1String("/mkspecs"));
|
version->qmakeProperty("QT_HOST_DATA") + QLatin1String("/mkspecs"));
|
||||||
|
|
||||||
// if the path is relative it can be
|
// if the path is relative it can be
|
||||||
// relative to the working directory (as found in the Makefiles)
|
// relative to the working directory (as found in the Makefiles)
|
||||||
|
@@ -606,7 +606,7 @@ void Qt4Project::updateQmlJSCodeModel()
|
|||||||
if (qtVersion && qtVersion->isValid()) {
|
if (qtVersion && qtVersion->isValid()) {
|
||||||
projectInfo.tryQmlDump = qtVersion->type() == QLatin1String(QtSupport::Constants::DESKTOPQT)
|
projectInfo.tryQmlDump = qtVersion->type() == QLatin1String(QtSupport::Constants::DESKTOPQT)
|
||||||
|| qtVersion->type() == QLatin1String(QtSupport::Constants::SIMULATORQT);
|
|| qtVersion->type() == QLatin1String(QtSupport::Constants::SIMULATORQT);
|
||||||
projectInfo.qtImportsPath = qtVersion->versionInfo().value(QLatin1String("QT_INSTALL_IMPORTS"));
|
projectInfo.qtImportsPath = qtVersion->qmakeProperty("QT_INSTALL_IMPORTS");
|
||||||
if (!projectInfo.qtImportsPath.isEmpty())
|
if (!projectInfo.qtImportsPath.isEmpty())
|
||||||
projectInfo.importPaths += projectInfo.qtImportsPath;
|
projectInfo.importPaths += projectInfo.qtImportsPath;
|
||||||
projectInfo.qtVersionString = qtVersion->qtVersionString();
|
projectInfo.qtVersionString = qtVersion->qtVersionString();
|
||||||
|
@@ -207,9 +207,7 @@ void Qt4Manager::updateVariable(const QByteArray &variable)
|
|||||||
qtv = QtSupport::QtProfileInformation::qtVersion(ProjectExplorer::ProfileManager::instance()->defaultProfile());
|
qtv = QtSupport::QtProfileInformation::qtVersion(ProjectExplorer::ProfileManager::instance()->defaultProfile());
|
||||||
|
|
||||||
if (qtv)
|
if (qtv)
|
||||||
value = qtv->versionInfo().value(variable == kHostBins
|
value = qtv->qmakeProperty(variable == kHostBins ? "QT_HOST_BINS" : "QT_INSTALL_BINS");
|
||||||
? QLatin1String("QT_HOST_BINS")
|
|
||||||
: QLatin1String("QT_INSTALL_BINS"));
|
|
||||||
Core::VariableManager::instance()->insert(variable, value);
|
Core::VariableManager::instance()->insert(variable, value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -362,7 +362,7 @@ bool BaseQtVersion::isValid() const
|
|||||||
|
|
||||||
return !qmakeCommand().isEmpty()
|
return !qmakeCommand().isEmpty()
|
||||||
&& m_installed
|
&& m_installed
|
||||||
&& m_versionInfo.contains(QLatin1String("QT_HOST_BINS"))
|
&& !qmakeProperty("QT_HOST_BINS").isNull()
|
||||||
&& !m_mkspecFullPath.isEmpty()
|
&& !m_mkspecFullPath.isEmpty()
|
||||||
&& m_qmakeIsExecutable;
|
&& m_qmakeIsExecutable;
|
||||||
}
|
}
|
||||||
@@ -377,7 +377,7 @@ QString BaseQtVersion::invalidReason() const
|
|||||||
return QCoreApplication::translate("QtVersion", "qmake does not exist or is not executable");
|
return QCoreApplication::translate("QtVersion", "qmake does not exist or is not executable");
|
||||||
if (!m_installed)
|
if (!m_installed)
|
||||||
return QCoreApplication::translate("QtVersion", "Qt version is not properly installed, please run make install");
|
return QCoreApplication::translate("QtVersion", "Qt version is not properly installed, please run make install");
|
||||||
if (!m_versionInfo.contains(QLatin1String("QT_HOST_BINS")))
|
if (qmakeProperty("QT_HOST_BINS").isNull())
|
||||||
return QCoreApplication::translate("QtVersion",
|
return QCoreApplication::translate("QtVersion",
|
||||||
"Could not determine the path to the binaries of the Qt installation, maybe the qmake path is wrong?");
|
"Could not determine the path to the binaries of the Qt installation, maybe the qmake path is wrong?");
|
||||||
if (m_mkspecUpToDate && m_mkspecFullPath.isEmpty())
|
if (m_mkspecUpToDate && m_mkspecFullPath.isEmpty())
|
||||||
@@ -533,7 +533,7 @@ void BaseQtVersion::updateSourcePath() const
|
|||||||
if (!m_sourcePath.isEmpty())
|
if (!m_sourcePath.isEmpty())
|
||||||
return;
|
return;
|
||||||
updateVersionInfo();
|
updateVersionInfo();
|
||||||
const QString installData = m_versionInfo.value(QLatin1String("QT_INSTALL_PREFIX"));
|
const QString installData = qmakeProperty("QT_INSTALL_PREFIX");
|
||||||
QString sourcePath = installData;
|
QString sourcePath = installData;
|
||||||
QFile qmakeCache(installData + QLatin1String("/.qmake.cache"));
|
QFile qmakeCache(installData + QLatin1String("/.qmake.cache"));
|
||||||
if (qmakeCache.exists()) {
|
if (qmakeCache.exists()) {
|
||||||
@@ -592,7 +592,7 @@ QString BaseQtVersion::findQtBinary(Binaries binary) const
|
|||||||
{
|
{
|
||||||
QString baseDir;
|
QString baseDir;
|
||||||
if (qtVersion() < QtVersionNumber(5, 0, 0)) {
|
if (qtVersion() < QtVersionNumber(5, 0, 0)) {
|
||||||
baseDir = versionInfo().value(QLatin1String("QT_HOST_BINS"));
|
baseDir = qmakeProperty("QT_HOST_BINS");
|
||||||
} else {
|
} else {
|
||||||
ensureMkSpecParsed();
|
ensureMkSpecParsed();
|
||||||
switch (binary) {
|
switch (binary) {
|
||||||
@@ -604,7 +604,7 @@ QString BaseQtVersion::findQtBinary(Binaries binary) const
|
|||||||
baseDir = m_mkspecValues.value(QLatin1String("QT.designer.bins"));
|
baseDir = m_mkspecValues.value(QLatin1String("QT.designer.bins"));
|
||||||
break;
|
break;
|
||||||
case Uic:
|
case Uic:
|
||||||
baseDir = versionInfo().value(QLatin1String("QT_HOST_BINS"));
|
baseDir = qmakeProperty("QT_HOST_BINS");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
// Can't happen
|
// Can't happen
|
||||||
@@ -783,7 +783,7 @@ bool BaseQtVersion::hasMkspec(const Utils::FileName &spec) const
|
|||||||
{
|
{
|
||||||
updateVersionInfo();
|
updateVersionInfo();
|
||||||
QFileInfo fi;
|
QFileInfo fi;
|
||||||
fi.setFile(QDir::fromNativeSeparators(m_versionInfo.value(QLatin1String("QT_HOST_DATA")))
|
fi.setFile(QDir::fromNativeSeparators(qmakeProperty("QT_HOST_DATA"))
|
||||||
+ QLatin1String("/mkspecs/") + spec.toString());
|
+ QLatin1String("/mkspecs/") + spec.toString());
|
||||||
if (fi.isDir())
|
if (fi.isDir())
|
||||||
return true;
|
return true;
|
||||||
@@ -837,13 +837,10 @@ void BaseQtVersion::updateVersionInfo() const
|
|||||||
if (!queryQMakeVariables(qmakeCommand(), &m_versionInfo, &m_qmakeIsExecutable))
|
if (!queryQMakeVariables(qmakeCommand(), &m_versionInfo, &m_qmakeIsExecutable))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
const QString installDataKey = QLatin1String("QT_INSTALL_DATA");
|
const QString qtInstallData = qmakeProperty("QT_INSTALL_DATA");
|
||||||
const QString installBinsKey = QLatin1String("QT_INSTALL_BINS");
|
const QString qtInstallBins = qmakeProperty("QT_INSTALL_BINS");
|
||||||
const QString installHeadersKey = QLatin1String("QT_INSTALL_HEADERS");
|
const QString qtHeaderData = qmakeProperty("QT_INSTALL_HEADERS");
|
||||||
if (m_versionInfo.contains(installDataKey)) {
|
if (!qtInstallData.isNull()) {
|
||||||
const QString qtInstallData = m_versionInfo.value(installDataKey);
|
|
||||||
const QString qtInstallBins = m_versionInfo.value(installBinsKey);
|
|
||||||
const QString qtHeaderData = m_versionInfo.value(installHeadersKey);
|
|
||||||
if (!qtInstallData.isEmpty()) {
|
if (!qtInstallData.isEmpty()) {
|
||||||
m_hasDebuggingHelper = !QtSupport::DebuggingHelperLibrary::debuggingHelperLibraryByInstallData(qtInstallData).isEmpty();
|
m_hasDebuggingHelper = !QtSupport::DebuggingHelperLibrary::debuggingHelperLibraryByInstallData(qtInstallData).isEmpty();
|
||||||
m_hasQmlDump
|
m_hasQmlDump
|
||||||
@@ -857,35 +854,35 @@ void BaseQtVersion::updateVersionInfo() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Now check for a qt that is configured with a prefix but not installed
|
// Now check for a qt that is configured with a prefix but not installed
|
||||||
if (m_versionInfo.contains(installBinsKey)) {
|
if (!qtInstallBins.isNull()) {
|
||||||
QFileInfo fi(m_versionInfo.value(installBinsKey));
|
QFileInfo fi(qtInstallBins);
|
||||||
if (!fi.exists())
|
if (!fi.exists())
|
||||||
m_installed = false;
|
m_installed = false;
|
||||||
}
|
}
|
||||||
if (m_versionInfo.contains(installHeadersKey)) {
|
if (!qtHeaderData.isNull()) {
|
||||||
const QFileInfo fi(m_versionInfo.value(installHeadersKey));
|
const QFileInfo fi(qtHeaderData);
|
||||||
if (!fi.exists())
|
if (!fi.exists())
|
||||||
m_installed = false;
|
m_installed = false;
|
||||||
}
|
}
|
||||||
const QString installDocsKey = QLatin1String("QT_INSTALL_DOCS");
|
const QString qtInstallDocs = qmakeProperty("QT_INSTALL_DOCS");
|
||||||
if (m_versionInfo.contains(installDocsKey)) {
|
if (!qtInstallDocs.isNull()) {
|
||||||
const QFileInfo fi(m_versionInfo.value(installDocsKey));
|
const QFileInfo fi(qtInstallDocs);
|
||||||
if (fi.exists())
|
if (fi.exists())
|
||||||
m_hasDocumentation = true;
|
m_hasDocumentation = true;
|
||||||
}
|
}
|
||||||
const QString installExamplesKey = QLatin1String("QT_INSTALL_EXAMPLES");
|
const QString qtInstallExamples = qmakeProperty("QT_INSTALL_EXAMPLES");
|
||||||
if (m_versionInfo.contains(installExamplesKey)) {
|
if (!qtInstallExamples.isNull()) {
|
||||||
const QFileInfo fi(m_versionInfo.value(installExamplesKey));
|
const QFileInfo fi(qtInstallExamples);
|
||||||
if (fi.exists())
|
if (fi.exists())
|
||||||
m_hasExamples = true;
|
m_hasExamples = true;
|
||||||
}
|
}
|
||||||
const QString installDemosKey = QLatin1String("QT_INSTALL_DEMOS");
|
const QString qtInstallDemos = qmakeProperty("QT_INSTALL_DEMOS");
|
||||||
if (m_versionInfo.contains(installDemosKey)) {
|
if (!qtInstallDemos.isNull()) {
|
||||||
const QFileInfo fi(m_versionInfo.value(installDemosKey));
|
const QFileInfo fi(qtInstallDemos);
|
||||||
if (fi.exists())
|
if (fi.exists())
|
||||||
m_hasDemos = true;
|
m_hasDemos = true;
|
||||||
}
|
}
|
||||||
m_qtVersionString = m_versionInfo.value(QLatin1String("QT_VERSION"), QString());
|
m_qtVersionString = qmakeProperty("QT_VERSION");
|
||||||
|
|
||||||
m_versionInfoUpToDate = true;
|
m_versionInfoUpToDate = true;
|
||||||
}
|
}
|
||||||
@@ -896,6 +893,16 @@ QHash<QString,QString> BaseQtVersion::versionInfo() const
|
|||||||
return m_versionInfo;
|
return m_versionInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString BaseQtVersion::qmakeProperty(const QHash<QString,QString> &versionInfo, const QByteArray &name)
|
||||||
|
{
|
||||||
|
return versionInfo.value(QString::fromLatin1(name));
|
||||||
|
}
|
||||||
|
|
||||||
|
QString BaseQtVersion::qmakeProperty(const QByteArray &name) const
|
||||||
|
{
|
||||||
|
return qmakeProperty(m_versionInfo, name);
|
||||||
|
}
|
||||||
|
|
||||||
bool BaseQtVersion::hasDocumentation() const
|
bool BaseQtVersion::hasDocumentation() const
|
||||||
{
|
{
|
||||||
updateVersionInfo();
|
updateVersionInfo();
|
||||||
@@ -905,7 +912,7 @@ bool BaseQtVersion::hasDocumentation() const
|
|||||||
QString BaseQtVersion::documentationPath() const
|
QString BaseQtVersion::documentationPath() const
|
||||||
{
|
{
|
||||||
updateVersionInfo();
|
updateVersionInfo();
|
||||||
return m_versionInfo.value(QLatin1String("QT_INSTALL_DOCS"));
|
return qmakeProperty("QT_INSTALL_DOCS");
|
||||||
}
|
}
|
||||||
|
|
||||||
bool BaseQtVersion::hasDemos() const
|
bool BaseQtVersion::hasDemos() const
|
||||||
@@ -917,7 +924,7 @@ bool BaseQtVersion::hasDemos() const
|
|||||||
QString BaseQtVersion::demosPath() const
|
QString BaseQtVersion::demosPath() const
|
||||||
{
|
{
|
||||||
updateVersionInfo();
|
updateVersionInfo();
|
||||||
return m_versionInfo.value(QLatin1String("QT_INSTALL_DEMOS"));
|
return qmakeProperty("QT_INSTALL_DEMOS");
|
||||||
}
|
}
|
||||||
|
|
||||||
QString BaseQtVersion::frameworkInstallPath() const
|
QString BaseQtVersion::frameworkInstallPath() const
|
||||||
@@ -939,7 +946,7 @@ bool BaseQtVersion::hasExamples() const
|
|||||||
QString BaseQtVersion::examplesPath() const
|
QString BaseQtVersion::examplesPath() const
|
||||||
{
|
{
|
||||||
updateVersionInfo();
|
updateVersionInfo();
|
||||||
return m_versionInfo.value(QLatin1String("QT_INSTALL_EXAMPLES"));
|
return qmakeProperty("QT_INSTALL_EXAMPLES");
|
||||||
}
|
}
|
||||||
|
|
||||||
QList<ProjectExplorer::HeaderPath> BaseQtVersion::systemHeaderPathes(const ProjectExplorer::Profile *p) const
|
QList<ProjectExplorer::HeaderPath> BaseQtVersion::systemHeaderPathes(const ProjectExplorer::Profile *p) const
|
||||||
@@ -953,8 +960,8 @@ QList<ProjectExplorer::HeaderPath> BaseQtVersion::systemHeaderPathes(const Proje
|
|||||||
void BaseQtVersion::addToEnvironment(const ProjectExplorer::Profile *p, Utils::Environment &env) const
|
void BaseQtVersion::addToEnvironment(const ProjectExplorer::Profile *p, Utils::Environment &env) const
|
||||||
{
|
{
|
||||||
Q_UNUSED(p);
|
Q_UNUSED(p);
|
||||||
env.set(QLatin1String("QTDIR"), QDir::toNativeSeparators(versionInfo().value(QLatin1String("QT_HOST_DATA"))));
|
env.set(QLatin1String("QTDIR"), QDir::toNativeSeparators(qmakeProperty("QT_HOST_DATA")));
|
||||||
env.prependOrSetPath(versionInfo().value(QLatin1String("QT_HOST_BINS")));
|
env.prependOrSetPath(qmakeProperty("QT_HOST_BINS"));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool BaseQtVersion::hasGdbDebuggingHelper() const
|
bool BaseQtVersion::hasGdbDebuggingHelper() const
|
||||||
@@ -1015,7 +1022,7 @@ Utils::Environment BaseQtVersion::qmlToolsEnvironment() const
|
|||||||
|
|
||||||
QString BaseQtVersion::gdbDebuggingHelperLibrary() const
|
QString BaseQtVersion::gdbDebuggingHelperLibrary() const
|
||||||
{
|
{
|
||||||
QString qtInstallData = versionInfo().value(QLatin1String("QT_INSTALL_DATA"));
|
QString qtInstallData = qmakeProperty("QT_INSTALL_DATA");
|
||||||
if (qtInstallData.isEmpty())
|
if (qtInstallData.isEmpty())
|
||||||
return QString();
|
return QString();
|
||||||
return QtSupport::DebuggingHelperLibrary::debuggingHelperLibraryByInstallData(qtInstallData);
|
return QtSupport::DebuggingHelperLibrary::debuggingHelperLibraryByInstallData(qtInstallData);
|
||||||
@@ -1023,17 +1030,17 @@ QString BaseQtVersion::gdbDebuggingHelperLibrary() const
|
|||||||
|
|
||||||
QString BaseQtVersion::qmlDumpTool(bool debugVersion) const
|
QString BaseQtVersion::qmlDumpTool(bool debugVersion) const
|
||||||
{
|
{
|
||||||
const QString qtInstallData = versionInfo().value(QLatin1String("QT_INSTALL_DATA"));
|
const QString qtInstallData = qmakeProperty("QT_INSTALL_DATA");
|
||||||
if (qtInstallData.isEmpty())
|
if (qtInstallData.isEmpty())
|
||||||
return QString();
|
return QString();
|
||||||
const QString qtInstallBins = versionInfo().value(QLatin1String("QT_INSTALL_BINS"));
|
const QString qtInstallBins = qmakeProperty("QT_INSTALL_BINS");
|
||||||
const QString qtHeaderData = versionInfo().value(QLatin1String("QT_INSTALL_HEADERS"));
|
const QString qtHeaderData = qmakeProperty("QT_INSTALL_HEADERS");
|
||||||
return QmlDumpTool::toolForQtPaths(qtInstallData, qtInstallBins, qtHeaderData, debugVersion);
|
return QmlDumpTool::toolForQtPaths(qtInstallData, qtInstallBins, qtHeaderData, debugVersion);
|
||||||
}
|
}
|
||||||
|
|
||||||
QString BaseQtVersion::qmlDebuggingHelperLibrary(bool debugVersion) const
|
QString BaseQtVersion::qmlDebuggingHelperLibrary(bool debugVersion) const
|
||||||
{
|
{
|
||||||
QString qtInstallData = versionInfo().value(QLatin1String("QT_INSTALL_DATA"));
|
QString qtInstallData = qmakeProperty("QT_INSTALL_DATA");
|
||||||
if (qtInstallData.isEmpty())
|
if (qtInstallData.isEmpty())
|
||||||
return QString();
|
return QString();
|
||||||
return QmlDebuggingLibrary::libraryByInstallData(qtInstallData, debugVersion);
|
return QmlDebuggingLibrary::libraryByInstallData(qtInstallData, debugVersion);
|
||||||
@@ -1041,7 +1048,7 @@ QString BaseQtVersion::qmlDebuggingHelperLibrary(bool debugVersion) const
|
|||||||
|
|
||||||
QString BaseQtVersion::qmlObserverTool() const
|
QString BaseQtVersion::qmlObserverTool() const
|
||||||
{
|
{
|
||||||
QString qtInstallData = versionInfo().value(QLatin1String("QT_INSTALL_DATA"));
|
QString qtInstallData = qmakeProperty("QT_INSTALL_DATA");
|
||||||
if (qtInstallData.isEmpty())
|
if (qtInstallData.isEmpty())
|
||||||
return QString();
|
return QString();
|
||||||
return QmlObserverTool::toolByInstallData(qtInstallData);
|
return QmlObserverTool::toolByInstallData(qtInstallData);
|
||||||
@@ -1049,7 +1056,7 @@ QString BaseQtVersion::qmlObserverTool() const
|
|||||||
|
|
||||||
QStringList BaseQtVersion::debuggingHelperLibraryLocations() const
|
QStringList BaseQtVersion::debuggingHelperLibraryLocations() const
|
||||||
{
|
{
|
||||||
QString qtInstallData = versionInfo().value(QLatin1String("QT_INSTALL_DATA"));
|
QString qtInstallData = qmakeProperty("QT_INSTALL_DATA");
|
||||||
if (qtInstallData.isEmpty())
|
if (qtInstallData.isEmpty())
|
||||||
return QStringList();
|
return QStringList();
|
||||||
return QtSupport::DebuggingHelperLibrary::debuggingHelperLibraryDirectories(qtInstallData);
|
return QtSupport::DebuggingHelperLibrary::debuggingHelperLibraryDirectories(qtInstallData);
|
||||||
@@ -1175,6 +1182,8 @@ bool BaseQtVersion::queryQMakeVariables(const Utils::FileName &binary, QHash<QSt
|
|||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
QString name = line.left(index);
|
QString name = line.left(index);
|
||||||
QString value = QDir::fromNativeSeparators(line.mid(index+1));
|
QString value = QDir::fromNativeSeparators(line.mid(index+1));
|
||||||
|
if (value.isNull())
|
||||||
|
value = QLatin1String(""); // Make sure it is not null, to discern from missing keys
|
||||||
versionInfo->insert(name, value);
|
versionInfo->insert(name, value);
|
||||||
if (name.startsWith(QLatin1String("QT_")) && !name.contains(QLatin1Char('/'))) {
|
if (name.startsWith(QLatin1String("QT_")) && !name.contains(QLatin1Char('/'))) {
|
||||||
if (name.startsWith(QLatin1String("QT_INSTALL_"))) {
|
if (name.startsWith(QLatin1String("QT_INSTALL_"))) {
|
||||||
@@ -1198,7 +1207,7 @@ bool BaseQtVersion::queryQMakeVariables(const Utils::FileName &binary, QHash<QSt
|
|||||||
|
|
||||||
Utils::FileName BaseQtVersion::mkspecDirectoryFromVersionInfo(const QHash<QString, QString> &versionInfo)
|
Utils::FileName BaseQtVersion::mkspecDirectoryFromVersionInfo(const QHash<QString, QString> &versionInfo)
|
||||||
{
|
{
|
||||||
QString dataDir = versionInfo.value(QLatin1String("QT_HOST_DATA"));
|
QString dataDir = qmakeProperty(versionInfo, "QT_HOST_DATA");
|
||||||
if (dataDir.isEmpty())
|
if (dataDir.isEmpty())
|
||||||
return Utils::FileName();
|
return Utils::FileName();
|
||||||
return Utils::FileName::fromUserInput(dataDir + QLatin1String("/mkspecs"));
|
return Utils::FileName::fromUserInput(dataDir + QLatin1String("/mkspecs"));
|
||||||
@@ -1265,8 +1274,8 @@ Utils::FileName BaseQtVersion::mkspecFromVersionInfo(const QHash<QString, QStrin
|
|||||||
Utils::FileName BaseQtVersion::qtCorePath(const QHash<QString,QString> &versionInfo, const QString &versionString)
|
Utils::FileName BaseQtVersion::qtCorePath(const QHash<QString,QString> &versionInfo, const QString &versionString)
|
||||||
{
|
{
|
||||||
QStringList dirs;
|
QStringList dirs;
|
||||||
dirs << versionInfo.value(QLatin1String("QT_INSTALL_LIBS"))
|
dirs << qmakeProperty(versionInfo, "QT_INSTALL_LIBS")
|
||||||
<< versionInfo.value(QLatin1String("QT_INSTALL_BINS"));
|
<< qmakeProperty(versionInfo, "QT_INSTALL_BINS");
|
||||||
|
|
||||||
QFileInfoList staticLibs;
|
QFileInfoList staticLibs;
|
||||||
foreach (const QString &dir, dirs) {
|
foreach (const QString &dir, dirs) {
|
||||||
|
@@ -133,6 +133,8 @@ public:
|
|||||||
|
|
||||||
// Returns the PREFIX, BINPREFIX, DOCPREFIX and similar information
|
// Returns the PREFIX, BINPREFIX, DOCPREFIX and similar information
|
||||||
QHash<QString,QString> versionInfo() const;
|
QHash<QString,QString> versionInfo() const;
|
||||||
|
static QString qmakeProperty(const QHash<QString,QString> &versionInfo, const QByteArray &name);
|
||||||
|
QString qmakeProperty(const QByteArray &name) const;
|
||||||
virtual void addToEnvironment(const ProjectExplorer::Profile *p, Utils::Environment &env) const;
|
virtual void addToEnvironment(const ProjectExplorer::Profile *p, Utils::Environment &env) const;
|
||||||
|
|
||||||
virtual Utils::FileName sourcePath() const;
|
virtual Utils::FileName sourcePath() const;
|
||||||
|
@@ -75,7 +75,7 @@ DebuggingHelperBuildTask::DebuggingHelperBuildTask(const BaseQtVersion *version,
|
|||||||
// of the version pointer while compiling
|
// of the version pointer while compiling
|
||||||
//
|
//
|
||||||
m_qtId = version->uniqueId();
|
m_qtId = version->uniqueId();
|
||||||
m_qtInstallData = version->versionInfo().value(QLatin1String("QT_INSTALL_DATA"));
|
m_qtInstallData = version->qmakeProperty("QT_INSTALL_DATA");
|
||||||
if (m_qtInstallData.isEmpty()) {
|
if (m_qtInstallData.isEmpty()) {
|
||||||
const QString error
|
const QString error
|
||||||
= QCoreApplication::translate(
|
= QCoreApplication::translate(
|
||||||
|
@@ -196,7 +196,7 @@ static bool hasPrivateHeaders(const QString &qtInstallHeaders) {
|
|||||||
|
|
||||||
bool QmlDumpTool::canBuild(const BaseQtVersion *qtVersion, QString *reason)
|
bool QmlDumpTool::canBuild(const BaseQtVersion *qtVersion, QString *reason)
|
||||||
{
|
{
|
||||||
const QString installHeaders = qtVersion->versionInfo().value(QLatin1String("QT_INSTALL_HEADERS"));
|
const QString installHeaders = qtVersion->qmakeProperty("QT_INSTALL_HEADERS");
|
||||||
|
|
||||||
if (qtVersion->type() != QLatin1String(Constants::DESKTOPQT)
|
if (qtVersion->type() != QLatin1String(Constants::DESKTOPQT)
|
||||||
&& qtVersion->type() != QLatin1String(Constants::SIMULATORQT)) {
|
&& qtVersion->type() != QLatin1String(Constants::SIMULATORQT)) {
|
||||||
@@ -227,9 +227,9 @@ bool QmlDumpTool::canBuild(const BaseQtVersion *qtVersion, QString *reason)
|
|||||||
QString QmlDumpTool::toolForVersion(BaseQtVersion *version, bool debugDump)
|
QString QmlDumpTool::toolForVersion(BaseQtVersion *version, bool debugDump)
|
||||||
{
|
{
|
||||||
if (version) {
|
if (version) {
|
||||||
const QString qtInstallData = version->versionInfo().value(QLatin1String("QT_INSTALL_DATA"));
|
const QString qtInstallData = version->qmakeProperty("QT_INSTALL_DATA");
|
||||||
const QString qtInstallBins = version->versionInfo().value(QLatin1String("QT_INSTALL_BINS"));
|
const QString qtInstallBins = version->qmakeProperty("QT_INSTALL_BINS");
|
||||||
const QString qtInstallHeaders = version->versionInfo().value(QLatin1String("QT_INSTALL_HEADERS"));
|
const QString qtInstallHeaders = version->qmakeProperty("QT_INSTALL_HEADERS");
|
||||||
return toolForQtPaths(qtInstallData, qtInstallBins, qtInstallHeaders, debugDump);
|
return toolForQtPaths(qtInstallData, qtInstallBins, qtInstallHeaders, debugDump);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user