diff options
author | hjk <[email protected]> | 2022-09-26 14:40:28 +0200 |
---|---|---|
committer | hjk <[email protected]> | 2022-09-27 06:22:23 +0000 |
commit | cbd5e5efeacfd761c06193e2e97212de04099760 (patch) | |
tree | 77aa9802ecf2cd3aa61a6bd5c926f83f0772e761 | |
parent | a098f43b6e3d43e3888db57984fb1b2a678c9bdf (diff) |
QbsPM: FilePath-ify QbsProjectImporter
Change-Id: Ia043dbfa9db401b5afa17f435eeaf4f4347290c2
Reviewed-by: Christian Stenger <[email protected]>
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsprojectimporter.cpp | 30 |
1 files changed, 14 insertions, 16 deletions
diff --git a/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp b/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp index 4c88d52b821..0010aa53343 100644 --- a/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp +++ b/src/plugins/qbsprojectmanager/qbsprojectimporter.cpp @@ -69,42 +69,40 @@ static FilePath buildDir(const FilePath &projectFilePath, const Kit *k) projectFilePath, projectName, k, QString(), BuildConfiguration::Unknown, "qbs"); } -static bool hasBuildGraph(const QString &dir) +static bool hasBuildGraph(const FilePath &dir) { - const QString &dirName = QFileInfo(dir).fileName(); - return QFileInfo::exists(dir + QLatin1Char('/') + dirName + QLatin1String(".bg")); + return dir.pathAppended(dir.fileName() + ".bg").exists(); } -static QStringList candidatesForDirectory(const QString &dir) +static FilePaths candidatesForDirectory(const FilePath &dir) { - QStringList candidates; - const QStringList &subDirs = QDir(dir).entryList(QDir::Dirs | QDir::NoDotAndDotDot); - for (const QString &subDir : subDirs) { - const QString absSubDir = dir + QLatin1Char('/') + subDir; - if (hasBuildGraph(absSubDir)) - candidates << absSubDir; + FilePaths candidates; + const FilePaths subDirs = dir.dirEntries(QDir::Dirs | QDir::NoDotAndDotDot); + for (const FilePath &subDir : subDirs) { + if (hasBuildGraph(subDir)) + candidates << subDir; } return candidates; } FilePaths QbsProjectImporter::importCandidates() { - const QString projectDir = projectFilePath().toFileInfo().absolutePath(); - QStringList candidates = candidatesForDirectory(projectDir); + const FilePath projectDir = projectFilePath().absolutePath(); + FilePaths candidates = candidatesForDirectory(projectDir); - QSet<QString> seenCandidates; + QSet<FilePath> seenCandidates; seenCandidates.insert(projectDir); const auto &kits = KitManager::kits(); for (Kit * const k : kits) { - QFileInfo fi = buildDir(projectFilePath(), k).toFileInfo(); - const QString candidate = fi.absolutePath(); + FilePath bdir = buildDir(projectFilePath(), k); + const FilePath candidate = bdir.absolutePath(); if (!seenCandidates.contains(candidate)) { seenCandidates.insert(candidate); candidates << candidatesForDirectory(candidate); } } qCDebug(qbsPmLog) << "build directory candidates:" << candidates; - return Utils::transform(candidates, &FilePath::fromString); + return candidates; } QList<void *> QbsProjectImporter::examineDirectory(const FilePath &importPath, |