summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@qt.io>2017-06-20 12:21:24 +0200
committerTobias Hunger <tobias.hunger@qt.io>2017-06-20 13:39:40 +0000
commite42f3db9f0ab1ec28bf9ba414add84d3b552118f (patch)
treead767fbfffa706b4386ce01e6dd9c682a37166a3
parentdac2a188ded0dd2c07cd354fc00331c9603793d8 (diff)
downloadqt-creator-e42f3db9f0ab1ec28bf9ba414add84d3b552118f.tar.gz
CMake: Avoid duplicate build targets
Make sure that build targets that get added explicitly are never reported by any of the readers, too. This makes sure entries will not show up twice in the UI. Task-number: QTCREATORBUG-18409 Change-Id: Id5039add262211fd87cd5c2884df2af0fcf24577 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
-rw-r--r--src/plugins/cmakeprojectmanager/builddirmanager.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/plugins/cmakeprojectmanager/builddirmanager.cpp b/src/plugins/cmakeprojectmanager/builddirmanager.cpp
index ca2fd4bd6a..d474c95cab 100644
--- a/src/plugins/cmakeprojectmanager/builddirmanager.cpp
+++ b/src/plugins/cmakeprojectmanager/builddirmanager.cpp
@@ -336,7 +336,12 @@ QList<CMakeBuildTarget> BuildDirManager::buildTargets() const
m_buildTargets.append(utilityTarget(CMakeBuildStep::installTarget(), this));
m_buildTargets.append(utilityTarget(CMakeBuildStep::testTarget(), this));
- m_buildTargets.append(m_reader->buildTargets());
+ m_buildTargets.append(Utils::filtered(m_reader->buildTargets(), [](const CMakeBuildTarget &bt) {
+ return bt.title == CMakeBuildStep::allTarget()
+ || bt.title == CMakeBuildStep::cleanTarget()
+ || bt.title == CMakeBuildStep::installTarget()
+ || bt.title == CMakeBuildStep::testTarget();
+ }));
}
return m_buildTargets;
}