summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2023-05-02 14:24:56 +0200
committerChristian Kandeler <christian.kandeler@qt.io>2023-05-02 15:04:30 +0000
commit6bf6b89fe801aae10a8391d4ec0f1ed66b2cf34e (patch)
tree33ad4e52db08b8bc75bf78c7aadd93dc3f61dd0d
parentba5e09f03f27e9454794e1658a764c3ad67ed946 (diff)
downloadqt-creator-6bf6b89fe801aae10a8391d4ec0f1ed66b2cf34e.tar.gz
GenericProjectManager: Do not make every subdir an include dir
Large projects can have thousands of subdirectories, only a tiny subset of which are supposed to be include directories. Use the directory name as a heuristic instead. Fixes: QTCREATORBUG-29099 Change-Id: I207ea2b7d2739c4f6c27fa96865dfde2570caf8a Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
-rw-r--r--src/plugins/genericprojectmanager/genericproject.cpp5
-rw-r--r--src/plugins/genericprojectmanager/genericprojectwizard.cpp2
2 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/genericprojectmanager/genericproject.cpp b/src/plugins/genericprojectmanager/genericproject.cpp
index 518b765bcb..fbe77e74a9 100644
--- a/src/plugins/genericprojectmanager/genericproject.cpp
+++ b/src/plugins/genericprojectmanager/genericproject.cpp
@@ -330,8 +330,9 @@ bool GenericBuildSystem::addFiles(Node *, const FilePaths &filePaths_, FilePaths
QSet<QString> toAdd;
for (const QString &filePath : filePaths) {
- const QString directory = QFileInfo(filePath).absolutePath();
- if (!includes.contains(directory))
+ const QFileInfo fi(filePath);
+ const QString directory = fi.absolutePath();
+ if (fi.fileName() == "include" && !includes.contains(directory))
toAdd << directory;
}
diff --git a/src/plugins/genericprojectmanager/genericprojectwizard.cpp b/src/plugins/genericprojectmanager/genericprojectwizard.cpp
index 27d2a3932b..1f125ff321 100644
--- a/src/plugins/genericprojectmanager/genericprojectwizard.cpp
+++ b/src/plugins/genericprojectmanager/genericprojectwizard.cpp
@@ -141,6 +141,8 @@ Core::GeneratedFiles GenericProjectWizard::generateFiles(const QWizard *w,
const QDir dir(projectPath.toString());
for (const QString &path : paths) {
QFileInfo fileInfo(path);
+ if (fileInfo.fileName() != "include")
+ continue;
QDir thisDir(fileInfo.absoluteFilePath());
if (! thisDir.entryList(nameFilters, QDir::Files).isEmpty()) {