aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCristian Adam <[email protected]>2025-05-14 12:31:23 +0200
committerCristian Adam <[email protected]>2025-05-16 13:51:39 +0000
commit927ee16f165160ff9933b4f6272a0b2e7defe486 (patch)
tree2471bd086a7c4db4540215f6fbb5c976d51b0b73
parent30778315caa6009036f6852906c91b923d857e7f (diff)
CMakePM: Filter out external and CMake internal files as project files
The number of cmake files set to `project()->setExtraProjectFiles` went for a project like Qt Creator from 1533 to 489. Task-number: QTCREATORBUG-32209 Change-Id: I3ad69a41c01f1de534b6a7621c3323b5f4912558 Reviewed-by: Alessandro Portale <[email protected]>
-rw-r--r--src/plugins/cmakeprojectmanager/cmakebuildsystem.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/cmakeprojectmanager/cmakebuildsystem.cpp b/src/plugins/cmakeprojectmanager/cmakebuildsystem.cpp
index 3541e9fd55c..ca23831cbaa 100644
--- a/src/plugins/cmakeprojectmanager/cmakebuildsystem.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakebuildsystem.cpp
@@ -1566,11 +1566,12 @@ void CMakeBuildSystem::checkAndReportError(QString &errorMessage)
static QSet<FilePath> projectFilesToWatch(const QSet<CMakeFileInfo> &cmakeFiles)
{
- return Utils::transform(Utils::filtered(cmakeFiles,
- [](const CMakeFileInfo &info) {
- return !info.isGenerated;
- }),
- [](const CMakeFileInfo &info) { return info.path; });
+ QSet<FilePath> result;
+ for (const CMakeFileInfo &info : cmakeFiles) {
+ if (!info.isGenerated && !info.isCMake && !info.isExternal)
+ result.insert(info.path);
+ }
+ return result;
}
void CMakeBuildSystem::updateProjectData()