diff options
author | Christian Kandeler <christian.kandeler@theqtcompany.com> | 2016-05-27 13:59:39 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@theqtcompany.com> | 2016-05-27 17:45:53 +0000 |
commit | b4e11b191becd0f5e2c405d9cd65ecb098d3faec (patch) | |
tree | 74272e4631fae9f26b5e34579001bf796ee542bd | |
parent | d89fc0bfeaecc367d88ac26e57e255a7ae1fb5fe (diff) | |
download | qt-creator-b4e11b191becd0f5e2c405d9cd65ecb098d3faec.tar.gz |
QbsProjectManager: Prevent transient build dirs from becoming permanent.
If "dry run" is enabled for the project resolving step, then the rule
execution step needs it too.
Task-number: QTCREATORBUG-16343
Change-Id: I6db7ad68b447299d2b4848f128a262e6097786d4
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsprojectparser.cpp | 4 | ||||
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsprojectparser.h | 1 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/plugins/qbsprojectmanager/qbsprojectparser.cpp b/src/plugins/qbsprojectmanager/qbsprojectparser.cpp index af53e1bce8..22fc1112d9 100644 --- a/src/plugins/qbsprojectmanager/qbsprojectparser.cpp +++ b/src/plugins/qbsprojectmanager/qbsprojectparser.cpp @@ -93,7 +93,8 @@ void QbsProjectParser::parse(const QVariantMap &config, const Environment &env, // Some people don't like it when files are created as a side effect of opening a project, // so do not store the build graph if the build directory does not exist yet. - params.setDryRun(!QFileInfo::exists(dir)); + m_dryRun = !QFileInfo::exists(dir); + params.setDryRun(m_dryRun); params.setBuildRoot(dir); params.setProjectFilePath(m_projectFilePath); @@ -151,6 +152,7 @@ void QbsProjectParser::handleQbsParsingDone(bool success) void QbsProjectParser::startRuleExecution() { qbs::BuildOptions options; + options.setDryRun(m_dryRun); options.setExecuteRulesOnly(true); m_ruleExecutionJob = m_project.buildAllProducts( options, qbs::Project::ProductSelectionWithNonDefault, this); diff --git a/src/plugins/qbsprojectmanager/qbsprojectparser.h b/src/plugins/qbsprojectmanager/qbsprojectparser.h index c00450e574..be008a4ef0 100644 --- a/src/plugins/qbsprojectmanager/qbsprojectparser.h +++ b/src/plugins/qbsprojectmanager/qbsprojectparser.h @@ -75,6 +75,7 @@ private: qbs::BuildJob *m_ruleExecutionJob; qbs::ErrorInfo m_error; qbs::Project m_project; + bool m_dryRun; QFutureInterface<bool> *m_fi; int m_currentProgressBase; |