diff options
Diffstat (limited to 'src/plugins/qmakeprojectmanager')
-rw-r--r-- | src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp | 25 | ||||
-rw-r--r-- | src/plugins/qmakeprojectmanager/qmakebuildconfiguration.h | 1 |
2 files changed, 25 insertions, 1 deletions
diff --git a/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp b/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp index 572adb1a76..191778bcd4 100644 --- a/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp +++ b/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp @@ -38,20 +38,23 @@ #include <coreplugin/documentmanager.h> #include <coreplugin/icore.h> +#include <projectexplorer/buildmanager.h> #include <projectexplorer/buildsteplist.h> #include <projectexplorer/kit.h> +#include <projectexplorer/projectexplorer.h> #include <projectexplorer/projectexplorerconstants.h> #include <projectexplorer/projectmacroexpander.h> #include <projectexplorer/target.h> #include <projectexplorer/toolchain.h> #include <projectexplorer/toolchainmanager.h> + #include <qtsupport/qtkitinformation.h> #include <qtsupport/qtversionmanager.h> + #include <utils/mimetypes/mimedatabase.h> #include <utils/qtcassert.h> #include <utils/qtcprocess.h> #include <utils/qtcassert.h> -#include <android/androidmanager.h> #include <QDebug> #include <QInputDialog> @@ -696,4 +699,24 @@ bool QmakeBuildConfiguration::LastKitState::operator !=(const LastKitState &othe return !operator ==(other); } +bool QmakeBuildConfiguration::regenerateBuildFiles(Node *node) +{ + QMakeStep *qs = qmakeStep(); + if (!qs) + return false; + + qs->setForced(true); + + BuildManager::buildList(stepList(ProjectExplorer::Constants::BUILDSTEPS_CLEAN)); + BuildManager::appendStep(qs, ProjectExplorerPlugin::displayNameForStepId(ProjectExplorer::Constants::BUILDSTEPS_CLEAN)); + + QmakeProFileNode *proFile = nullptr; + if (node && node != target()->project()->rootProjectNode()) + proFile = dynamic_cast<QmakeProFileNode *>(node); + + setSubNodeBuild(proFile); + + return true; +} + } // namespace QmakeProjectManager diff --git a/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.h b/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.h index 62685a36b8..d7a0996a44 100644 --- a/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.h +++ b/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.h @@ -113,6 +113,7 @@ signals: protected: bool fromMap(const QVariantMap &map) override; + bool regenerateBuildFiles(ProjectExplorer::Node *node = nullptr) override; private: void kitChanged(); |