aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmakeprojectmanager/qmakeproject.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmakeprojectmanager/qmakeproject.cpp')
-rw-r--r--src/plugins/qmakeprojectmanager/qmakeproject.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/plugins/qmakeprojectmanager/qmakeproject.cpp b/src/plugins/qmakeprojectmanager/qmakeproject.cpp
index 2445a823c8d..7edd8609a9b 100644
--- a/src/plugins/qmakeprojectmanager/qmakeproject.cpp
+++ b/src/plugins/qmakeprojectmanager/qmakeproject.cpp
@@ -1582,15 +1582,19 @@ void QmakeBuildSystem::buildHelper(Action action, bool isFileBuild, QmakeProFile
bc->setSubNodeBuild(profile->proFileNode());
}
- if (isFileBuild)
+ BuildStepList *buildSteps = bc->buildSteps();
+ if (isFileBuild) {
bc->setFileNodeBuild(buildableFile);
+ if (BuildStepList * const bsl = bc->makeStepOnlyList(); !bsl->isEmpty())
+ buildSteps = bsl;
+ }
if (ProjectExplorerPlugin::saveModifiedFiles()) {
if (action == BUILD)
- BuildManager::buildList(bc->buildSteps());
+ BuildManager::buildList(buildSteps);
else if (action == CLEAN)
BuildManager::buildList(bc->cleanSteps());
else if (action == REBUILD)
- BuildManager::buildLists({bc->cleanSteps(), bc->buildSteps()});
+ BuildManager::buildLists({bc->cleanSteps(), buildSteps});
}
bc->setSubNodeBuild(nullptr);