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>
This commit is contained in:
Christian Kandeler
2023-05-02 14:24:56 +02:00
parent ba5e09f03f
commit 6bf6b89fe8
2 changed files with 5 additions and 2 deletions

View File

@@ -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;
}