diff options
author | Daniel Teske <daniel.teske@nokia.com> | 2011-11-25 13:19:58 +0100 |
---|---|---|
committer | Daniel Teske <daniel.teske@nokia.com> | 2011-12-07 15:05:31 +0100 |
commit | f5d428712308bb51eded0a3893bb77ea9652130e (patch) | |
tree | d9c24e71507f7f4280375375cadee4db0cf8c015 /src/plugins/qt4projectmanager | |
parent | c6936d9e807b2b2177a52ed92d918a3aa2204af7 (diff) | |
download | qt-creator-f5d428712308bb51eded0a3893bb77ea9652130e.tar.gz |
Use Utils::FileName for various bits in QtVersion
Change-Id: I3afc3a4f2e0dd2671279c2d071779f1d7b277849
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
Diffstat (limited to 'src/plugins/qt4projectmanager')
30 files changed, 98 insertions, 106 deletions
diff --git a/src/plugins/qt4projectmanager/qmakestep.cpp b/src/plugins/qt4projectmanager/qmakestep.cpp index 34ad5319f4..f74bc02830 100644 --- a/src/plugins/qt4projectmanager/qmakestep.cpp +++ b/src/plugins/qt4projectmanager/qmakestep.cpp @@ -145,9 +145,9 @@ QString QMakeStep::allArguments(bool shorted) } } } - QString specArg = mkspec(); + Utils::FileName specArg = mkspec(); if (!userProvidedMkspec && !specArg.isEmpty()) - arguments << "-spec" << specArg; + arguments << "-spec" << specArg.toUserOutput(); // Find out what flags we pass on to qmake arguments << bc->configCommandLineArguments(); @@ -235,7 +235,7 @@ bool QMakeStep::init() else workingDirectory = qt4bc->buildDirectory(); - QString program = qtVersion->qmakeCommand(); + Utils::FileName program = qtVersion->qmakeCommand(); QString makefile = workingDirectory; @@ -255,7 +255,7 @@ bool QMakeStep::init() // Check whether we need to run qmake bool makefileOutDated = true; if (QFileInfo(makefile).exists()) { - QString qmakePath = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(makefile); + Utils::FileName qmakePath = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(makefile); if (qtVersion->qmakeCommand() == qmakePath) { makefileOutDated = !qt4bc->compareToImportFrom(makefile); } @@ -269,7 +269,7 @@ bool QMakeStep::init() ProcessParameters *pp = processParameters(); pp->setMacroExpander(qt4bc->macroExpander()); pp->setWorkingDirectory(workingDirectory); - pp->setCommand(program); + pp->setCommand(program.toString()); pp->setArguments(args); pp->setEnvironment(qt4bc->environment()); @@ -445,14 +445,14 @@ QString QMakeStep::userArguments() return m_userArgs; } -QString QMakeStep::mkspec() +Utils::FileName QMakeStep::mkspec() { Qt4BuildConfiguration *bc = qt4BuildConfiguration(); QString additionalArguments = m_userArgs; for (Utils::QtcProcess::ArgIterator ait(&additionalArguments); ait.next(); ) { if (ait.value() == QLatin1String("-spec")) { if (ait.next()) - return ait.value(); + return Utils::FileName::fromUserInput(ait.value()); } } @@ -523,8 +523,8 @@ QMakeStepConfigWidget::QMakeStepConfigWidget(QMakeStep *step) this, SLOT(qtVersionChanged())); connect(step->qt4BuildConfiguration(), SIGNAL(qmakeBuildConfigurationChanged()), this, SLOT(qmakeBuildConfigChanged())); - connect(QtSupport::QtVersionManager::instance(), SIGNAL(dumpUpdatedFor(QString)), - this, SLOT(qtVersionsDumpUpdated(QString))); + connect(QtSupport::QtVersionManager::instance(), SIGNAL(dumpUpdatedFor(Utils::FileName)), + this, SLOT(qtVersionsDumpUpdated(Utils::FileName))); } QMakeStepConfigWidget::~QMakeStepConfigWidget() @@ -554,7 +554,7 @@ void QMakeStepConfigWidget::qtVersionChanged() updateQmlDebuggingOption(); } -void QMakeStepConfigWidget::qtVersionsDumpUpdated(const QString &qmakeCommand) +void QMakeStepConfigWidget::qtVersionsDumpUpdated(const Utils::FileName &qmakeCommand) { QtSupport::BaseQtVersion *version = m_step->qt4BuildConfiguration()->qtVersion(); if (version && version->qmakeCommand() == qmakeCommand) @@ -675,16 +675,16 @@ void QMakeStepConfigWidget::updateSummaryLabel() // We don't want the full path to the .pro file QString args = m_step->allArguments(true); // And we only use the .pro filename not the full path - QString program = QFileInfo(qtVersion->qmakeCommand()).fileName(); + QString program = qtVersion->qmakeCommand().toFileInfo().fileName(); setSummaryText(tr("<b>qmake:</b> %1 %2").arg(program, args)); ToolChain *tc = qt4bc->toolChain(); if (!tc) return; - QString tcSpec = tc->mkspec(); + Utils::FileName tcSpec = tc->mkspec(); if (!tcSpec.isEmpty() && tcSpec != m_step->mkspec()) - setAdditionalSummaryText(tr("<b>Warning:</b> The tool chain suggested \"%1\" as mkspec.").arg(tcSpec)); + setAdditionalSummaryText(tr("<b>Warning:</b> The tool chain suggested \"%1\" as mkspec.").arg(tcSpec.toUserOutput())); else setAdditionalSummaryText(QString()); } @@ -711,7 +711,7 @@ void QMakeStepConfigWidget::updateEffectiveQMakeCall() QtSupport::BaseQtVersion *qtVersion = qt4bc->qtVersion(); QString program = tr("<No Qt version>"); if (qtVersion) - program = QFileInfo(qtVersion->qmakeCommand()).fileName(); + program = qtVersion->qmakeCommand().toFileInfo().fileName(); m_ui->qmakeArgumentsEdit->setPlainText(program + QLatin1Char(' ') + m_step->allArguments()); } diff --git a/src/plugins/qt4projectmanager/qmakestep.h b/src/plugins/qt4projectmanager/qmakestep.h index 131d2d3ece..719f3fcf80 100644 --- a/src/plugins/qt4projectmanager/qmakestep.h +++ b/src/plugins/qt4projectmanager/qmakestep.h @@ -34,6 +34,7 @@ #define QMAKESTEP_H #include "qt4projectmanager_global.h" +#include <utils/fileutils.h> #include <projectexplorer/abstractprocessstep.h> #include <QtCore/QStringList> @@ -101,7 +102,7 @@ public: QStringList moreArgumentsAfter(); QStringList parserArguments(); QString userArguments(); - QString mkspec(); + Utils::FileName mkspec(); void setUserArguments(const QString &arguments); bool linkQmlDebuggingLibrary() const; void setLinkQmlDebuggingLibrary(bool enable); @@ -146,7 +147,7 @@ public: private slots: // slots for handling buildconfiguration/step signals void qtVersionChanged(); - void qtVersionsDumpUpdated(const QString &qmakeCommand); + void qtVersionsDumpUpdated(const Utils::FileName &qmakeCommand); void qmakeBuildConfigChanged(); void userArgumentsChanged(); void linkQmlDebuggingLibraryChanged(); diff --git a/src/plugins/qt4projectmanager/qt-desktop/desktopqtversion.cpp b/src/plugins/qt4projectmanager/qt-desktop/desktopqtversion.cpp index b17b17d74f..23518b1486 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/desktopqtversion.cpp +++ b/src/plugins/qt4projectmanager/qt-desktop/desktopqtversion.cpp @@ -49,7 +49,7 @@ DesktopQtVersion::DesktopQtVersion() } -DesktopQtVersion::DesktopQtVersion(const QString &path, bool isAutodetected, const QString &autodetectionSource) +DesktopQtVersion::DesktopQtVersion(const Utils::FileName &path, bool isAutodetected, const QString &autodetectionSource) : BaseQtVersion(path, isAutodetected, autodetectionSource) { diff --git a/src/plugins/qt4projectmanager/qt-desktop/desktopqtversion.h b/src/plugins/qt4projectmanager/qt-desktop/desktopqtversion.h index 221fc6d74b..3031f286a4 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/desktopqtversion.h +++ b/src/plugins/qt4projectmanager/qt-desktop/desktopqtversion.h @@ -43,7 +43,7 @@ class DesktopQtVersion : public QtSupport::BaseQtVersion { public: DesktopQtVersion(); - DesktopQtVersion(const QString &path, bool isAutodetected = false, const QString &autodetectionSource = QString()); + DesktopQtVersion(const Utils::FileName &path, bool isAutodetected = false, const QString &autodetectionSource = QString()); ~DesktopQtVersion(); DesktopQtVersion *clone() const; diff --git a/src/plugins/qt4projectmanager/qt-desktop/desktopqtversionfactory.cpp b/src/plugins/qt4projectmanager/qt-desktop/desktopqtversionfactory.cpp index b608f9798e..0b886144a5 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/desktopqtversionfactory.cpp +++ b/src/plugins/qt4projectmanager/qt-desktop/desktopqtversionfactory.cpp @@ -73,11 +73,11 @@ int DesktopQtVersionFactory::priority() const return 0; } -QtSupport::BaseQtVersion *DesktopQtVersionFactory::create(const QString &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource) +QtSupport::BaseQtVersion *DesktopQtVersionFactory::create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource) { Q_UNUSED(evaluator); // we are the fallback :) so we don't care what kind of qt it is - QFileInfo fi(qmakePath); + QFileInfo fi = qmakePath.toFileInfo(); if (fi.exists() && fi.isExecutable() && fi.isFile()) return new DesktopQtVersion(qmakePath, isAutoDetected, autoDetectionSource); return 0; diff --git a/src/plugins/qt4projectmanager/qt-desktop/desktopqtversionfactory.h b/src/plugins/qt4projectmanager/qt-desktop/desktopqtversionfactory.h index 19faddd1f6..f4881b7e12 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/desktopqtversionfactory.h +++ b/src/plugins/qt4projectmanager/qt-desktop/desktopqtversionfactory.h @@ -48,7 +48,7 @@ public: virtual QtSupport::BaseQtVersion *restore(const QString &type, const QVariantMap &data); virtual int priority() const; - virtual QtSupport::BaseQtVersion *create(const QString &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected = false, const QString &autoDetectionSource = QString()); + virtual QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected = false, const QString &autoDetectionSource = QString()); }; } // Internal diff --git a/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversion.cpp b/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversion.cpp index 63f4b5e134..b6e5b44089 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversion.cpp +++ b/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversion.cpp @@ -49,7 +49,7 @@ SimulatorQtVersion::SimulatorQtVersion() } -SimulatorQtVersion::SimulatorQtVersion(const QString &path, bool isAutodetected, const QString &autodetectionSource) +SimulatorQtVersion::SimulatorQtVersion(const Utils::FileName &path, bool isAutodetected, const QString &autodetectionSource) : QtSupport::BaseQtVersion(path, isAutodetected, autodetectionSource) { diff --git a/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversion.h b/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversion.h index caa6b5a3c1..1645345962 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversion.h +++ b/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversion.h @@ -43,7 +43,7 @@ class SimulatorQtVersion : public QtSupport::BaseQtVersion { public: SimulatorQtVersion(); - SimulatorQtVersion(const QString &path, bool isAutodetected = false, const QString &autodetectionSource = QString()); + SimulatorQtVersion(const Utils::FileName &path, bool isAutodetected = false, const QString &autodetectionSource = QString()); ~SimulatorQtVersion(); SimulatorQtVersion *clone() const; diff --git a/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversionfactory.cpp b/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversionfactory.cpp index 8e44cdcc69..6771cdee72 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversionfactory.cpp +++ b/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversionfactory.cpp @@ -73,9 +73,9 @@ int SimulatorQtVersionFactory::priority() const return 50; } -QtSupport::BaseQtVersion *SimulatorQtVersionFactory::create(const QString &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource) +QtSupport::BaseQtVersion *SimulatorQtVersionFactory::create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource) { - QFileInfo fi(qmakePath); + QFileInfo fi = qmakePath.toFileInfo(); if (!fi.exists() || !fi.isExecutable() || !fi.isFile()) return 0; QStringList configValues = evaluator->values("CONFIG"); diff --git a/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversionfactory.h b/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversionfactory.h index a5717ef3a1..d9c0f50782 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversionfactory.h +++ b/src/plugins/qt4projectmanager/qt-desktop/simulatorqtversionfactory.h @@ -48,7 +48,7 @@ public: virtual QtSupport::BaseQtVersion *restore(const QString &type, const QVariantMap &data); virtual int priority() const; - virtual QtSupport::BaseQtVersion *create(const QString &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected = false, const QString &autoDetectionSource = QString()); + virtual QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected = false, const QString &autoDetectionSource = QString()); }; } // Internal diff --git a/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.cpp b/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.cpp index 3775a74ada..f7dc6d3adb 100644 --- a/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.cpp @@ -128,9 +128,9 @@ QString GcceToolChain::makeCommand() const #endif } -QString GcceToolChain::mkspec() const +Utils::FileName GcceToolChain::mkspec() const { - return QString(); // always use default from Qt version + return Utils::FileName(); // always use default from Qt version } QString GcceToolChain::defaultMakeTarget() const diff --git a/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.h b/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.h index 4b3c0b6e73..9ffdc5b436 100644 --- a/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.h +++ b/src/plugins/qt4projectmanager/qt-s60/gccetoolchain.h @@ -50,7 +50,7 @@ public: QByteArray predefinedMacros() const; void addToEnvironment(Utils::Environment &env) const; QString makeCommand() const; - QString mkspec() const; + Utils::FileName mkspec() const; QString defaultMakeTarget() const; void setCompilerPath(const QString &); diff --git a/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp b/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp index 70dd0e7de3..9ea44df2a9 100644 --- a/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.cpp @@ -225,9 +225,9 @@ void RvctToolChain::addToEnvironment(Utils::Environment &env) const env.set(QLatin1String("LANG"), QString(QLatin1Char('C'))); } -QString RvctToolChain::mkspec() const +Utils::FileName RvctToolChain::mkspec() const { - return QString(); // Always use default from Qt version + return Utils::FileName(); // Always use default from Qt version } QString RvctToolChain::makeCommand() const diff --git a/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.h b/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.h index 5b89278880..e6105e9257 100644 --- a/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.h +++ b/src/plugins/qt4projectmanager/qt-s60/rvcttoolchain.h @@ -89,7 +89,7 @@ public: QByteArray predefinedMacros() const; QList<ProjectExplorer::HeaderPath> systemHeaderPaths() const; void addToEnvironment(Utils::Environment &env) const; - QString mkspec() const; + Utils::FileName mkspec() const; QString makeCommand() const; QString defaultMakeTarget() const; ProjectExplorer::IOutputParser *outputParser() const; diff --git a/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.cpp b/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.cpp index c93c3e50ee..64393852e0 100644 --- a/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.cpp @@ -59,7 +59,7 @@ SymbianQtVersion::SymbianQtVersion() { } -SymbianQtVersion::SymbianQtVersion(const QString &path, bool isAutodetected, const QString &autodetectionSource) +SymbianQtVersion::SymbianQtVersion(const Utils::FileName &path, bool isAutodetected, const QString &autodetectionSource) : BaseQtVersion(path, isAutodetected, autodetectionSource), m_validSystemRoot(false) { diff --git a/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.h b/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.h index d690d313d2..c405d3845d 100644 --- a/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.h +++ b/src/plugins/qt4projectmanager/qt-s60/symbianqtversion.h @@ -42,7 +42,7 @@ class SymbianQtVersion : public QtSupport::BaseQtVersion { public: SymbianQtVersion(); - SymbianQtVersion(const QString &path, bool isAutodetected = false, const QString &autodetectionSource = QString()); + SymbianQtVersion(const Utils::FileName &path, bool isAutodetected = false, const QString &autodetectionSource = QString()); SymbianQtVersion *clone() const; ~SymbianQtVersion(); diff --git a/src/plugins/qt4projectmanager/qt-s60/symbianqtversionfactory.cpp b/src/plugins/qt4projectmanager/qt-s60/symbianqtversionfactory.cpp index 167d60ec85..dc80380ee5 100644 --- a/src/plugins/qt4projectmanager/qt-s60/symbianqtversionfactory.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/symbianqtversionfactory.cpp @@ -73,9 +73,9 @@ int SymbianQtVersionFactory::priority() const return 50; } -QtSupport::BaseQtVersion *SymbianQtVersionFactory::create(const QString &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource) +QtSupport::BaseQtVersion *SymbianQtVersionFactory::create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource) { - QFileInfo fi(qmakePath); + QFileInfo fi = qmakePath.toFileInfo(); if (!fi.exists() || !fi.isExecutable() || !fi.isFile()) return 0; diff --git a/src/plugins/qt4projectmanager/qt-s60/symbianqtversionfactory.h b/src/plugins/qt4projectmanager/qt-s60/symbianqtversionfactory.h index d45b9e7b5d..62b459fced 100644 --- a/src/plugins/qt4projectmanager/qt-s60/symbianqtversionfactory.h +++ b/src/plugins/qt4projectmanager/qt-s60/symbianqtversionfactory.h @@ -48,7 +48,7 @@ public: virtual QtSupport::BaseQtVersion *restore(const QString &type, const QVariantMap &data); virtual int priority() const; - virtual QtSupport::BaseQtVersion *create(const QString &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected = false, const QString &autoDetectionSource = QString()); + virtual QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected = false, const QString &autoDetectionSource = QString()); }; } // Internal diff --git a/src/plugins/qt4projectmanager/qt-s60/winscwtoolchain.cpp b/src/plugins/qt4projectmanager/qt-s60/winscwtoolchain.cpp index 1f4b64610a..c317fcc92d 100644 --- a/src/plugins/qt4projectmanager/qt-s60/winscwtoolchain.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/winscwtoolchain.cpp @@ -183,9 +183,9 @@ void WinscwToolChain::addToEnvironment(Utils::Environment &env) const } -QString WinscwToolChain::mkspec() const +Utils::FileName WinscwToolChain::mkspec() const { - return QString(); // Always use default from Qt version + return Utils::FileName(); // Always use default from Qt version } QString WinscwToolChain::makeCommand() const diff --git a/src/plugins/qt4projectmanager/qt-s60/winscwtoolchain.h b/src/plugins/qt4projectmanager/qt-s60/winscwtoolchain.h index 83770ef97a..6003e96bbe 100644 --- a/src/plugins/qt4projectmanager/qt-s60/winscwtoolchain.h +++ b/src/plugins/qt4projectmanager/qt-s60/winscwtoolchain.h @@ -60,7 +60,7 @@ public: QByteArray predefinedMacros() const; QList<ProjectExplorer::HeaderPath> systemHeaderPaths() const; void addToEnvironment(Utils::Environment &env) const; - QString mkspec() const; + Utils::FileName mkspec() const; QString makeCommand() const; virtual QString debuggerCommand() const; QString defaultMakeTarget() const; diff --git a/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp b/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp index 3aa0ce69a4..f4699251d2 100644 --- a/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt4buildconfiguration.cpp @@ -123,7 +123,7 @@ static inline QString msgBuildConfigNotApplicable(const QString &d, const QtSupp const Target *target) { return QString::fromLatin1("Warning: Buildconfiguration '%1' : Qt '%2' from %3 not supported by target '%4'"). - arg(d, qtVersion->displayName(), qtVersion->qmakeCommand(), target->id()); + arg(d, qtVersion->displayName(), qtVersion->qmakeCommand().toUserOutput(), target->id()); } bool Qt4BuildConfiguration::fromMap(const QVariantMap &map) @@ -171,7 +171,7 @@ bool Qt4BuildConfiguration::fromMap(const QVariantMap &map) if (!toolChain()) { if (version && version->isValid()) { qWarning("Warning: No tool chain available for '%s' from %s used in '%s'.", - qPrintable(version->displayName()), qPrintable(version->qmakeCommand()), + qPrintable(version->displayName()), qPrintable(version->qmakeCommand().toUserOutput()), qPrintable(target()->id())); } else { qWarning("Warning: No tool chain available for invalid Qt version used in '%s'.", @@ -475,7 +475,7 @@ bool Qt4BuildConfiguration::compareToImportFrom(const QString &makefile) { QMakeStep *qs = qmakeStep(); if (QFileInfo(makefile).exists() && qs) { - QString qmakePath = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(makefile); + Utils::FileName qmakePath = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(makefile); QtSupport::BaseQtVersion *version = qtVersion(); if (!version) return false; @@ -495,17 +495,17 @@ bool Qt4BuildConfiguration::compareToImportFrom(const QString &makefile) // are not interested in), splitting them up into individual strings: extractSpecFromArguments(&userArgs, workingDirectory, version, &actualArgs), actualArgs = qs->moreArguments() + actualArgs + qs->moreArgumentsAfter(); - QString actualSpec = qs->mkspec(); + Utils::FileName actualSpec = qs->mkspec(); QString qmakeArgs = result.second; QStringList parsedArgs; - QString parsedSpec = extractSpecFromArguments(&qmakeArgs, workingDirectory, version, &parsedArgs); + Utils::FileName parsedSpec = extractSpecFromArguments(&qmakeArgs, workingDirectory, version, &parsedArgs); if (debug) { qDebug()<<"Actual args:"<<actualArgs; qDebug()<<"Parsed args:"<<parsedArgs; - qDebug()<<"Actual spec:"<<actualSpec; - qDebug()<<"Parsed spec:"<<parsedSpec; + qDebug()<<"Actual spec:"<<actualSpec.toString(); + qDebug()<<"Parsed spec:"<<parsedSpec.toString(); } // Comparing the sorted list is obviously wrong @@ -530,15 +530,15 @@ bool Qt4BuildConfiguration::compareToImportFrom(const QString &makefile) return true; // Actual spec is the default one // qDebug()<<"AS vs VS"<<actualSpec<<version->mkspec(); - if ((actualSpec == version->mkspec() || actualSpec == "default") - && (parsedSpec == version->mkspec() || parsedSpec == "default" || parsedSpec.isEmpty())) + if ((actualSpec == version->mkspec() || actualSpec == Utils::FileName::fromString(QLatin1String("default"))) + && (parsedSpec == version->mkspec() || parsedSpec == Utils::FileName::fromString(QLatin1String("default")) || parsedSpec.isEmpty())) return true; } } else if (debug) { qDebug()<<"different qmake buildconfigurations buildconfiguration:"<<qmakeBuildConfiguration()<<" Makefile:"<<result.first; } } else if (debug) { - qDebug()<<"diffrent qt versions, buildconfiguration:"<<version->qmakeCommand()<<" Makefile:"<<qmakePath; + qDebug()<<"diffrent qt versions, buildconfiguration:"<<version->qmakeCommand().toString()<<" Makefile:"<<qmakePath.toString(); } } return false; @@ -558,11 +558,11 @@ bool Qt4BuildConfiguration::removeQMLInspectorFromArguments(QString *args) return removedArgument; } -QString Qt4BuildConfiguration::extractSpecFromArguments(QString *args, - const QString &directory, const QtSupport::BaseQtVersion *version, - QStringList *outArgs) +Utils::FileName Qt4BuildConfiguration::extractSpecFromArguments(QString *args, + const QString &directory, const QtSupport::BaseQtVersion *version, + QStringList *outArgs) { - QString parsedSpec; + Utils::FileName parsedSpec; bool ignoreNext = false; bool nextIsSpec = false; @@ -572,7 +572,7 @@ QString Qt4BuildConfiguration::extractSpecFromArguments(QString *args, ait.deleteArg(); } else if (nextIsSpec) { nextIsSpec = false; - parsedSpec = QDir::cleanPath(ait.value()); + parsedSpec = Utils::FileName::fromUserInput(ait.value()); ait.deleteArg(); } else if (ait.value() == QLatin1String("-spec") || ait.value() == QLatin1String("-platform")) { nextIsSpec = true; @@ -592,49 +592,39 @@ QString Qt4BuildConfiguration::extractSpecFromArguments(QString *args, } if (parsedSpec.isEmpty()) - return QString(); + return Utils::FileName(); - QString baseMkspecDir = version->versionInfo().value("QMAKE_MKSPECS"); + Utils::FileName baseMkspecDir = Utils::FileName::fromUserInput(version->versionInfo().value("QMAKE_MKSPECS")); if (baseMkspecDir.isEmpty()) - baseMkspecDir = version->versionInfo().value("QT_INSTALL_DATA") + "/mkspecs"; + baseMkspecDir = Utils::FileName::fromUserInput(version->versionInfo().value("QT_INSTALL_DATA") + "/mkspecs"); -#ifdef Q_OS_WIN - baseMkspecDir = baseMkspecDir.toLower(); - parsedSpec = parsedSpec.toLower(); -#endif // if the path is relative it can be // relative to the working directory (as found in the Makefiles) // or relatively to the mkspec directory // if it is the former we need to get the canonical form // for the other one we don't need to do anything - if (QFileInfo(parsedSpec).isRelative()) { - if(QFileInfo(directory + QLatin1Char('/') + parsedSpec).exists()) { - parsedSpec = QDir::cleanPath(directory + QLatin1Char('/') + parsedSpec); -#ifdef Q_OS_WIN - parsedSpec = parsedSpec.toLower(); -#endif + if (parsedSpec.toFileInfo().isRelative()) { + if (QFileInfo(directory + QLatin1Char('/') + parsedSpec.toString()).exists()) { + parsedSpec = Utils::FileName::fromUserInput(directory + QLatin1Char('/') + parsedSpec.toString()); } else { - parsedSpec = baseMkspecDir + QLatin1Char('/') + parsedSpec; + parsedSpec = Utils::FileName::fromUserInput(baseMkspecDir.toString() + QLatin1Char('/') + parsedSpec.toString()); } } - QFileInfo f2(parsedSpec); + QFileInfo f2 = parsedSpec.toFileInfo(); while (f2.isSymLink()) { - parsedSpec = f2.symLinkTarget(); - f2.setFile(parsedSpec); + parsedSpec = Utils::FileName::fromString(f2.symLinkTarget()); + f2.setFile(parsedSpec.toString()); } - if (parsedSpec.startsWith(baseMkspecDir)) { - parsedSpec = parsedSpec.mid(baseMkspecDir.length() + 1); + if (parsedSpec.isChildOf(baseMkspecDir)) { + parsedSpec = parsedSpec.relativeChildPath(baseMkspecDir); } else { - QString sourceMkSpecPath = version->sourcePath() + "/mkspecs"; - if (parsedSpec.startsWith(sourceMkSpecPath)) { - parsedSpec = parsedSpec.mid(sourceMkSpecPath.length() + 1); + Utils::FileName sourceMkSpecPath = Utils::FileName::fromString(version->sourcePath().toString() + "/mkspecs"); + if (parsedSpec.isChildOf(sourceMkSpecPath)) { + parsedSpec = parsedSpec.relativeChildPath(sourceMkSpecPath); } } -#ifdef Q_OS_WIN - parsedSpec = parsedSpec.toLower(); -#endif return parsedSpec; } @@ -837,7 +827,7 @@ void Qt4BuildConfiguration::importFromBuildDirectory() else mkfile.append(makefile()); - QString qmakePath = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(mkfile); + Utils::FileName qmakePath = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(mkfile); if (!qmakePath.isEmpty()) { QtSupport::QtVersionManager *vm = QtSupport::QtVersionManager::instance(); QtSupport::BaseQtVersion *version = vm->qtVersionForQMakeBinary(qmakePath); @@ -851,7 +841,7 @@ void Qt4BuildConfiguration::importFromBuildDirectory() QtSupport::BaseQtVersion::QmakeBuildConfigs qmakeBuildConfig = result.first; QString additionalArguments = result.second; - QString parsedSpec = Qt4BuildConfiguration::extractSpecFromArguments(&additionalArguments, directory, version); + Utils::FileName parsedSpec = Qt4BuildConfiguration::extractSpecFromArguments(&additionalArguments, directory, version); const bool enableQmlDebugger = Qt4BuildConfiguration::removeQMLInspectorFromArguments(&additionalArguments); @@ -861,8 +851,8 @@ void Qt4BuildConfiguration::importFromBuildDirectory() QMakeStep *qs = qmakeStep(); qs->setUserArguments(additionalArguments); qs->setLinkQmlDebuggingLibrary(enableQmlDebugger); - if (!parsedSpec.isEmpty() && parsedSpec != QLatin1String("default") && qs->mkspec() != parsedSpec) { - Utils::QtcProcess::addArgs(&additionalArguments, (QStringList() << "-spec" << parsedSpec)); + if (!parsedSpec.isEmpty() && parsedSpec != Utils::FileName::fromString(QLatin1String("default")) && qs->mkspec() != parsedSpec) { + Utils::QtcProcess::addArgs(&additionalArguments, (QStringList() << QLatin1String("-spec") << parsedSpec.toUserOutput())); qs->setUserArguments(additionalArguments); } diff --git a/src/plugins/qt4projectmanager/qt4buildconfiguration.h b/src/plugins/qt4projectmanager/qt4buildconfiguration.h index 1bb12488c7..7631325c10 100644 --- a/src/plugins/qt4projectmanager/qt4buildconfiguration.h +++ b/src/plugins/qt4projectmanager/qt4buildconfiguration.h @@ -108,7 +108,7 @@ public: bool compareToImportFrom(const QString &makefile); static bool removeQMLInspectorFromArguments(QString *args); - static QString extractSpecFromArguments(QString *arguments, + static Utils::FileName extractSpecFromArguments(QString *arguments, const QString &directory, const QtSupport::BaseQtVersion *version, QStringList *outArgs = 0); diff --git a/src/plugins/qt4projectmanager/qt4project.cpp b/src/plugins/qt4projectmanager/qt4project.cpp index a99037840b..3959f77e2f 100644 --- a/src/plugins/qt4projectmanager/qt4project.cpp +++ b/src/plugins/qt4projectmanager/qt4project.cpp @@ -559,7 +559,7 @@ void Qt4Project::updateCppCodeModel() if (rootQt4ProjectNode()) allIncludePaths.append(rootQt4ProjectNode()->resolvedMkspecPath()); else if (activeBC->qtVersion()) - allIncludePaths.append(activeBC->qtVersion()->mkspecPath()); + allIncludePaths.append(activeBC->qtVersion()->mkspecPath().toString()); allIncludePaths.append(predefinedIncludePaths); @@ -966,7 +966,7 @@ QtSupport::ProFileReader *Qt4Project::createProFileReader(Qt4ProFileNode *qt4Pro QStringList args; if (QMakeStep *qs = bc->qmakeStep()) { args = qs->parserArguments(); - m_proFileOption->qmakespec = qs->mkspec(); + m_proFileOption->qmakespec = qs->mkspec().toString(); } else { args = bc->configCommandLineArguments(); } diff --git a/src/plugins/qt4projectmanager/qt4projectconfigwidget.cpp b/src/plugins/qt4projectmanager/qt4projectconfigwidget.cpp index 9dafa8fe90..68be86bb38 100644 --- a/src/plugins/qt4projectmanager/qt4projectconfigwidget.cpp +++ b/src/plugins/qt4projectmanager/qt4projectconfigwidget.cpp @@ -357,7 +357,7 @@ void Qt4ProjectConfigWidget::updateImportLabel() else makefile.append(m_buildConfiguration->makefile()); - QString qmakePath = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(makefile); + Utils::FileName qmakePath = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(makefile); QtSupport::BaseQtVersion *version = m_buildConfiguration->qtVersion(); // check that there's a makefile if (!qmakePath.isEmpty()) { @@ -367,7 +367,7 @@ void Qt4ProjectConfigWidget::updateImportLabel() if (mc == QtSupport::QtVersionManager::DifferentProject) { incompatibleBuild = true; } else if (mc == QtSupport::QtVersionManager::SameProject) { - if (qmakePath != (version ? version->qmakeCommand() : QString())) { + if (qmakePath != (version ? version->qmakeCommand() : Utils::FileName())) { // and that the qmake path is different from the current version // import enable visible = true; diff --git a/src/plugins/qt4projectmanager/qt4target.cpp b/src/plugins/qt4projectmanager/qt4target.cpp index b903efe0b8..54ce902480 100644 --- a/src/plugins/qt4projectmanager/qt4target.cpp +++ b/src/plugins/qt4projectmanager/qt4target.cpp @@ -303,21 +303,21 @@ ProjectExplorer::ToolChain *Qt4BaseTarget::preferredToolChain(ProjectExplorer::B return Target::preferredToolChain(bc); QList<ProjectExplorer::ToolChain *> tcs = possibleToolChains(bc); - const QString mkspec = qtBc->qtVersion()->mkspec(); + const Utils::FileName mkspec = qtBc->qtVersion()->mkspec(); foreach (ProjectExplorer::ToolChain *tc, tcs) if (tc->mkspec() == mkspec) return tc; return tcs.isEmpty() ? 0 : tcs.at(0); } -QString Qt4BaseTarget::mkspec(const Qt4BuildConfiguration *bc) const +Utils::FileName Qt4BaseTarget::mkspec(const Qt4BuildConfiguration *bc) const { QtSupport::BaseQtVersion *version = bc->qtVersion(); // We do not know which abi the Qt version has, so let's stick with the defaults if (version && version->qtAbis().count() == 1 && version->qtAbis().first().isNull()) - return QString(); + return Utils::FileName(); - const QString tcSpec = bc->toolChain() ? bc->toolChain()->mkspec() : QString(); + const Utils::FileName tcSpec = bc->toolChain() ? bc->toolChain()->mkspec() : Utils::FileName(); if (!version) return tcSpec; if (!tcSpec.isEmpty() && version->hasMkspec(tcSpec)) @@ -1185,7 +1185,7 @@ QList<BuildConfigurationInfo> BuildConfigurationInfo::checkForBuild(const QStrin QList<BuildConfigurationInfo> infos; foreach (const QString &file, makefiles) { QString makefile = directory + '/' + file; - QString qmakeBinary = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(makefile); + Utils::FileName qmakeBinary = QtSupport::QtVersionManager::findQMakeBinaryFromMakefile(makefile); if (qmakeBinary.isEmpty()) continue; if (QtSupport::QtVersionManager::makefileIsFor(makefile, proFilePath) != QtSupport::QtVersionManager::SameProject) @@ -1204,15 +1204,15 @@ QList<BuildConfigurationInfo> BuildConfigurationInfo::checkForBuild(const QStrin QtSupport::QtVersionManager::scanMakeFile(makefile, version->defaultBuildConfig()); QString additionalArguments = makefileBuildConfig.second; - QString parsedSpec = Qt4BuildConfiguration::extractSpecFromArguments(&additionalArguments, directory, version); - QString versionSpec = version->mkspec(); + Utils::FileName parsedSpec = Qt4BuildConfiguration::extractSpecFromArguments(&additionalArguments, directory, version); + Utils::FileName versionSpec = version->mkspec(); QString specArgument; // Compare mkspecs and add to additional arguments - if (parsedSpec.isEmpty() || parsedSpec == versionSpec || parsedSpec == "default") { + if (parsedSpec.isEmpty() || parsedSpec == versionSpec || parsedSpec == Utils::FileName::fromString("default")) { // using the default spec, don't modify additional arguments } else { - specArgument = "-spec " + Utils::QtcProcess::quoteArg(parsedSpec); + specArgument = "-spec " + Utils::QtcProcess::quoteArg(parsedSpec.toUserOutput()); } Utils::QtcProcess::addArgs(&specArgument, additionalArguments); diff --git a/src/plugins/qt4projectmanager/qt4target.h b/src/plugins/qt4projectmanager/qt4target.h index daab9ad976..64f2c604a9 100644 --- a/src/plugins/qt4projectmanager/qt4target.h +++ b/src/plugins/qt4projectmanager/qt4target.h @@ -92,7 +92,7 @@ public: QList<ProjectExplorer::ToolChain *> possibleToolChains(ProjectExplorer::BuildConfiguration *bc) const; ProjectExplorer::ToolChain *preferredToolChain(ProjectExplorer::BuildConfiguration *) const; - virtual QString mkspec(const Qt4BuildConfiguration *bc) const; + virtual Utils::FileName mkspec(const Qt4BuildConfiguration *bc) const; signals: void buildDirectoryInitialized(); diff --git a/src/plugins/qt4projectmanager/winceqtversion.cpp b/src/plugins/qt4projectmanager/winceqtversion.cpp index c86852f182..a18635f6be 100644 --- a/src/plugins/qt4projectmanager/winceqtversion.cpp +++ b/src/plugins/qt4projectmanager/winceqtversion.cpp @@ -44,7 +44,7 @@ WinCeQtVersion::WinCeQtVersion() { } -WinCeQtVersion::WinCeQtVersion(const QString &path, const QString &archType, +WinCeQtVersion::WinCeQtVersion(const Utils::FileName &path, const QString &archType, bool isAutodetected, const QString &autodetectionSource) : QtSupport::BaseQtVersion(path, isAutodetected, autodetectionSource), m_archType(ProjectExplorer::Abi::ArmArchitecture) @@ -104,7 +104,7 @@ void WinCeQtVersion::fromMap(const QVariantMap &map) // named <Description>-<Architecture>-<Compiler> with no other '-' characters. m_archType = ProjectExplorer::Abi::ArmArchitecture; - const QStringList splitSpec = mkspec().split("-"); + const QStringList splitSpec = mkspec().toString().split("-"); if (splitSpec.length() == 3) { const QString archString = splitSpec.value(1); if (archString.contains("x86", Qt::CaseInsensitive)) diff --git a/src/plugins/qt4projectmanager/winceqtversion.h b/src/plugins/qt4projectmanager/winceqtversion.h index 60f37ff39a..2b15528602 100644 --- a/src/plugins/qt4projectmanager/winceqtversion.h +++ b/src/plugins/qt4projectmanager/winceqtversion.h @@ -42,7 +42,7 @@ class WinCeQtVersion : public QtSupport::BaseQtVersion { public: WinCeQtVersion(); - WinCeQtVersion(const QString &path, const QString &archType, + WinCeQtVersion(const Utils::FileName &path, const QString &archType, bool isAutodetected = false, const QString &autodetectionSource = QString()); ~WinCeQtVersion(); WinCeQtVersion *clone() const; diff --git a/src/plugins/qt4projectmanager/winceqtversionfactory.cpp b/src/plugins/qt4projectmanager/winceqtversionfactory.cpp index 26a42fd549..e7fe956f15 100644 --- a/src/plugins/qt4projectmanager/winceqtversionfactory.cpp +++ b/src/plugins/qt4projectmanager/winceqtversionfactory.cpp @@ -69,9 +69,9 @@ int WinCeQtVersionFactory::priority() const return 50; } -QtSupport::BaseQtVersion *WinCeQtVersionFactory::create(const QString &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource) +QtSupport::BaseQtVersion *WinCeQtVersionFactory::create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource) { - QFileInfo fi(qmakePath); + QFileInfo fi = qmakePath.toFileInfo(); if (!fi.exists() || !fi.isExecutable() || !fi.isFile()) return 0; diff --git a/src/plugins/qt4projectmanager/winceqtversionfactory.h b/src/plugins/qt4projectmanager/winceqtversionfactory.h index f0a9ac3253..f290704dbb 100644 --- a/src/plugins/qt4projectmanager/winceqtversionfactory.h +++ b/src/plugins/qt4projectmanager/winceqtversionfactory.h @@ -49,8 +49,9 @@ public: virtual int priority() const; - virtual QtSupport::BaseQtVersion *create(const QString &qmakePath, ProFileEvaluator *evaluator, - bool isAutoDetected = false, const QString &autoDetectionSource = QString()); + virtual QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, + bool isAutoDetected = false, const QString &autoDetectionSource = QString()); + }; } // Internal |