aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/corelib/buildgraph/inputartifactscanner.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/corelib/buildgraph/inputartifactscanner.cpp')
-rw-r--r--src/lib/corelib/buildgraph/inputartifactscanner.cpp25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/lib/corelib/buildgraph/inputartifactscanner.cpp b/src/lib/corelib/buildgraph/inputartifactscanner.cpp
index 560ac0a9f..882b9627c 100644
--- a/src/lib/corelib/buildgraph/inputartifactscanner.cpp
+++ b/src/lib/corelib/buildgraph/inputartifactscanner.cpp
@@ -115,16 +115,6 @@ static void resolveDepencency(const ScanResultCache::Dependency &dependency,
result->filePath = absFilePath;
}
-static void scanWithScannerPlugin(DependencyScanner *scanner,
- FileResourceBase *fileToBeScanned,
- ScanResultCache::Result *scanResult)
-{
- QStringList dependencies = scanner->collectDependencies(fileToBeScanned);
- foreach (const QString &s, dependencies)
- scanResult->deps += ScanResultCache::Dependency(s);
- scanResult->valid = true;
-}
-
InputArtifactScanner::InputArtifactScanner(Artifact *artifact, InputArtifactScannerContext *ctx,
const Logger &logger)
: m_artifact(artifact), m_context(ctx), m_newDependencyAdded(false), m_logger(logger)
@@ -176,6 +166,10 @@ void InputArtifactScanner::scanForFileDependencies(Artifact *inputArtifact)
QList<FileResourceBase *> filesToScan;
filesToScan.append(inputArtifact);
const QSet<DependencyScanner *> scanners = scannersForArtifact(inputArtifact);
+ if (scanners.isEmpty())
+ return;
+ m_fileTagsForScanner = inputArtifact->fileTags().toStringList().join(QLatin1Char(','))
+ .toLatin1().constData();
while (!filesToScan.isEmpty()) {
FileResourceBase *fileToBeScanned = filesToScan.takeFirst();
const QString &filePathToBeScanned = fileToBeScanned->filePath();
@@ -364,6 +358,17 @@ void InputArtifactScanner::handleDependency(ResolvedDependency &dependency)
}
}
+void InputArtifactScanner::scanWithScannerPlugin(DependencyScanner *scanner,
+ FileResourceBase *fileToBeScanned,
+ ScanResultCache::Result *scanResult)
+{
+ const QStringList &dependencies
+ = scanner->collectDependencies(fileToBeScanned, m_fileTagsForScanner);
+ for (const QString &s : dependencies)
+ scanResult->deps += ScanResultCache::Dependency(s);
+ scanResult->valid = true;
+}
+
InputArtifactScannerContext::DependencyScannerCacheItem::DependencyScannerCacheItem() : valid(false)
{
}