summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/qt4projectmanager/makestep.cpp29
-rw-r--r--src/plugins/qt4projectmanager/makestep.h1
-rw-r--r--src/plugins/qt4projectmanager/qmakestep.cpp1
3 files changed, 23 insertions, 8 deletions
diff --git a/src/plugins/qt4projectmanager/makestep.cpp b/src/plugins/qt4projectmanager/makestep.cpp
index 319a938a73..4c6c084ce3 100644
--- a/src/plugins/qt4projectmanager/makestep.cpp
+++ b/src/plugins/qt4projectmanager/makestep.cpp
@@ -166,14 +166,23 @@ bool MakeStep::init()
ProjectExplorer::ToolChain *toolchain = bc->toolChain();
- if (bc->subNodeBuild()){
- if(!bc->subNodeBuild()->makefile().isEmpty()) {
+ if (bc->subNodeBuild()) {
+ QString makefile = bc->subNodeBuild()->makefile();
+ if(!makefile.isEmpty()) {
Utils::QtcProcess::addArg(&args, QLatin1String("-f"));
- Utils::QtcProcess::addArg(&args, bc->subNodeBuild()->makefile());
+ Utils::QtcProcess::addArg(&args, makefile);
+ m_makeFileExists = QDir(workingDirectory).exists(makefile);
+ } else {
+ m_makeFileExists = QDir(workingDirectory).exists("Makefile");
+ }
+ } else {
+ if (!bc->makefile().isEmpty()) {
+ Utils::QtcProcess::addArg(&args, QLatin1String("-f"));
+ Utils::QtcProcess::addArg(&args, bc->makefile());
+ m_makeFileExists = QDir(workingDirectory).exists(bc->makefile());
+ } else {
+ m_makeFileExists = QDir(workingDirectory).exists("Makefile");
}
- } else if (!bc->makefile().isEmpty()) {
- Utils::QtcProcess::addArg(&args, QLatin1String("-f"));
- Utils::QtcProcess::addArg(&args, bc->makefile());
}
Utils::QtcProcess::addArgs(&args, m_userArgs);
@@ -215,6 +224,13 @@ void MakeStep::run(QFutureInterface<bool> & fi)
return;
}
+ if (!m_makeFileExists) {
+ if (!m_clean)
+ emit addOutput(tr("Makefile not found. Please check your build settings"), BuildStep::MessageOutput);
+ fi.reportResult(m_clean);
+ return;
+ }
+
// Warn on common error conditions:
bool canContinue = true;
foreach (const ProjectExplorer::Task &t, m_tasks) {
@@ -228,7 +244,6 @@ void MakeStep::run(QFutureInterface<bool> & fi)
return;
}
-
AbstractProcessStep::run(fi);
}
diff --git a/src/plugins/qt4projectmanager/makestep.h b/src/plugins/qt4projectmanager/makestep.h
index 599b78e82e..6a5a030899 100644
--- a/src/plugins/qt4projectmanager/makestep.h
+++ b/src/plugins/qt4projectmanager/makestep.h
@@ -115,6 +115,7 @@ protected:
private:
void ctor();
bool m_clean;
+ bool m_makeFileExists;
QString m_userArgs;
QString m_makeCmd;
QList<ProjectExplorer::Task> m_tasks;
diff --git a/src/plugins/qt4projectmanager/qmakestep.cpp b/src/plugins/qt4projectmanager/qmakestep.cpp
index fa46167afc..8ad8afdc92 100644
--- a/src/plugins/qt4projectmanager/qmakestep.cpp
+++ b/src/plugins/qt4projectmanager/qmakestep.cpp
@@ -257,7 +257,6 @@ void QMakeStep::run(QFutureInterface<bool> &fi)
}
// Warn on common error conditions:
-
bool canContinue = true;
foreach (const ProjectExplorer::Task &t, m_tasks) {
addTask(t);