aboutsummaryrefslogtreecommitdiffstats
path: root/tools/qmlimportscanner/main.cpp
diff options
context:
space:
mode:
authorCraig Scott <craig.scott@qt.io>2021-11-30 14:34:29 +1100
committerFabian Kosmale <fabian.kosmale@qt.io>2021-12-13 18:14:38 +0100
commite954a7f69491b72d1ad9144c20f66713b5017940 (patch)
tree19e3c7d5df6a1cb558c02a3efb7311072bc1e02b /tools/qmlimportscanner/main.cpp
parent3a4828460e8aa7beae587e505777ac35cb482a4f (diff)
Add CMake deploy support for QML module apps
Task-number: QTBUG-98545 Pick-to: 6.3 Change-Id: I2d04ccbae0288c88ada399552e8f9c20e221b21d Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'tools/qmlimportscanner/main.cpp')
-rw-r--r--tools/qmlimportscanner/main.cpp22
1 files changed, 21 insertions, 1 deletions
diff --git a/tools/qmlimportscanner/main.cpp b/tools/qmlimportscanner/main.cpp
index b48ab4eeec..85542cbba8 100644
--- a/tools/qmlimportscanner/main.cpp
+++ b/tools/qmlimportscanner/main.cpp
@@ -648,6 +648,7 @@ int main(int argc, char *argv[])
QStringList qmlImportPaths;
QStringList qrcFiles;
bool generateCmakeContent = false;
+ QString outputFile;
int i = 1;
while (i < args.count()) {
@@ -676,6 +677,14 @@ int main(int argc, char *argv[])
generateCmakeContent = true;
} else if (arg == QLatin1String("-qrcFiles")) {
argReceiver = &qrcFiles;
+ } else if (arg == QLatin1String("-output-file")) {
+ if (i >= args.count()) {
+ std::cerr << "-output-file requires an argument\n";
+ return 1;
+ }
+ outputFile = args.at(i);
+ ++i;
+ continue;
} else {
std::cerr << qPrintable(appName) << ": Invalid argument: \""
<< qPrintable(arg) << "\"\n";
@@ -716,6 +725,17 @@ int main(int argc, char *argv[])
content = QJsonDocument(QJsonArray::fromVariantList(imports)).toJson();
}
- std::cout << content.constData() << std::endl;
+ if (outputFile.isEmpty()) {
+ std::cout << content.constData() << std::endl;
+ } else {
+ QFile f(outputFile);
+ if (!f.open(QIODevice::WriteOnly | QIODevice::Text)) {
+ std::cerr << qPrintable(appName) << ": Unable to write to output file: \""
+ << qPrintable(outputFile) << "\"\n";
+ return 1;
+ }
+ QTextStream out(&f);
+ out << content << "\n";
+ }
return 0;
}