diff options
Diffstat (limited to 'src/qtattributionsscanner/main.cpp')
-rw-r--r-- | src/qtattributionsscanner/main.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/qtattributionsscanner/main.cpp b/src/qtattributionsscanner/main.cpp index b429f5b39..9a03c879d 100644 --- a/src/qtattributionsscanner/main.cpp +++ b/src/qtattributionsscanner/main.cpp @@ -20,7 +20,7 @@ int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); a.setApplicationName(u"Qt Attributions Scanner"_s); - a.setApplicationVersion(u"1.1"_s); + a.setApplicationVersion(u"1.2"_s); QCommandLineParser parser; parser.setApplicationDescription(tr("Processes attribution files in Qt sources.")); @@ -47,6 +47,9 @@ int main(int argc, char *argv[]) tr("Paths in documentation are made relative to this " "directory."), u"directory"_s); + QCommandLineOption noCheckPathsOption( + u"no-check-paths"_s, + tr("Do not check whether referenced file paths exist in basedir.")); QCommandLineOption outputOption({ u"o"_s, u"output"_s }, tr("Write generated data to <file>."), u"file"_s); @@ -57,12 +60,17 @@ int main(int argc, char *argv[]) parser.addOption(inputFormatOption); parser.addOption(filterOption); parser.addOption(baseDirOption); + parser.addOption(noCheckPathsOption); parser.addOption(outputOption); parser.addOption(verboseOption); parser.addOption(silentOption); parser.process(a.arguments()); + using Scanner::Checks, Scanner::Check; + Checks checks = Check::All; + checks.setFlag(Check::Paths, !parser.isSet(noCheckPathsOption)); + LogLevel logLevel = NormalLog; if (parser.isSet(verboseOption) && parser.isSet(silentOption)) { std::cerr << qPrintable(tr("--verbose and --silent cannot be set simultaneously.")) << std::endl; @@ -99,12 +107,12 @@ int main(int argc, char *argv[]) if (logLevel == VerboseLog) std::cerr << qPrintable(tr("Recursively scanning %1 for attribution files...").arg( QDir::toNativeSeparators(path))) << std::endl; - std::optional<QList<Package>> p = Scanner::scanDirectory(path, formats, logLevel); + std::optional<QList<Package>> p = Scanner::scanDirectory(path, formats, checks, logLevel); if (!p) return 1; packages = *p; } else if (pathInfo.isFile()) { - std::optional<QList<Package>> p = Scanner::readFile(path, logLevel); + std::optional<QList<Package>> p = Scanner::readFile(path, checks, logLevel); if (!p) return 1; packages = *p; |