@@ -62,7 +62,7 @@ int main(int argc, char **argv)
62
62
}
63
63
}
64
64
65
- if (argc < 2 || (firstArgument. startsWith ( " - " )) ) {
65
+ if (argc < 2 ) {
66
66
qInfo () << " " ;
67
67
qInfo () << " Usage: linuxdeployqt <app-binary|desktop file> [options]" ;
68
68
qInfo () << " " ;
@@ -82,6 +82,7 @@ int main(int argc, char **argv)
82
82
qInfo () << " -no-translations : Skip deployment of translations." ;
83
83
qInfo () << " -qmake=<path> : The qmake executable to use." ;
84
84
qInfo () << " -qmldir=<path> : Scan for QML imports in the given path." ;
85
+ qInfo () << " -show-exclude-libs : Print exclude libraries list." ;
85
86
qInfo () << " -verbose=<0-3> : 0 = no output, 1 = error/warning (default)," ;
86
87
qInfo () << " 2 = normal, 3 = debug." ;
87
88
qInfo () << " -version : Print version statement and exit." ;
@@ -212,6 +213,79 @@ int main(int argc, char **argv)
212
213
extern QStringList excludeLibs;
213
214
extern bool copyCopyrightFiles;
214
215
216
+ // Check arguments
217
+ for (int i = 1 ; i < argc; ++i) {
218
+ QByteArray argument = QByteArray (argv[i]);
219
+ if (argument == QByteArray (" -no-plugins" )) {
220
+ LogDebug () << " Argument found:" << argument;
221
+ plugins = false ;
222
+ } else if (argument == QByteArray (" -appimage" )) {
223
+ LogDebug () << " Argument found:" << argument;
224
+ appimage = true ;
225
+ bundleAllButCoreLibs = true ;
226
+ } else if (argument == QByteArray (" -no-strip" )) {
227
+ LogDebug () << " Argument found:" << argument;
228
+ runStripEnabled = false ;
229
+ } else if (argument == QByteArray (" -bundle-non-qt-libs" )) {
230
+ LogDebug () << " Argument found:" << argument;
231
+ bundleAllButCoreLibs = true ;
232
+ } else if (argument.startsWith (QByteArray (" -verbose" ))) {
233
+ LogDebug () << " Argument found:" << argument;
234
+ int index = argument.indexOf (" =" );
235
+ bool ok = false ;
236
+ int number = argument.mid (index+1 ).toInt (&ok);
237
+ if (!ok)
238
+ LogError () << " Could not parse verbose level" ;
239
+ else
240
+ logLevel = number;
241
+ } else if (argument.startsWith (QByteArray (" -executable" ))) {
242
+ LogDebug () << " Argument found:" << argument;
243
+ int index = argument.indexOf (' =' );
244
+ if (index == -1 )
245
+ LogError () << " Missing executable path" ;
246
+ else
247
+ additionalExecutables << argument.mid (index+1 );
248
+ } else if (argument.startsWith (QByteArray (" -qmldir" ))) {
249
+ LogDebug () << " Argument found:" << argument;
250
+ qmldirArgumentUsed = true ;
251
+ int index = argument.indexOf (' =' );
252
+ if (index == -1 )
253
+ LogError () << " Missing qml directory path" ;
254
+ else
255
+ qmlDirs << argument.mid (index+1 );
256
+ } else if (argument.startsWith (" -no-copy-copyright-files" )) {
257
+ LogDebug () << " Argument found:" << argument;
258
+ copyCopyrightFiles = false ;
259
+ } else if (argument == QByteArray (" -always-overwrite" )) {
260
+ LogDebug () << " Argument found:" << argument;
261
+ alwaysOwerwriteEnabled = true ;
262
+ } else if (argument.startsWith (" -qmake=" )) {
263
+ LogDebug () << " Argument found:" << argument;
264
+ int index = argument.indexOf (" =" );
265
+ qmakeExecutable = argument.mid (index+1 );
266
+ } else if (argument == QByteArray (" -no-translations" )) {
267
+ LogDebug () << " Argument found:" << argument;
268
+ skipTranslations = true ;
269
+ } else if (argument.startsWith (" -extra-plugins=" )) {
270
+ LogDebug () << " Argument found:" << argument;
271
+ int index = argument.indexOf (" =" );
272
+ extraQtPlugins = QString (argument.mid (index + 1 )).split (" ," );
273
+ } else if (argument.startsWith (" -exclude-libs=" )) {
274
+ LogDebug () << " Argument found:" << argument;
275
+ int index = argument.indexOf (" =" );
276
+ excludeLibs = QString (argument.mid (index + 1 )).split (" ," );
277
+ } else if (argument.startsWith (" -show-exclude-libs" )) {
278
+ qInfo () << EXCLUDELIST;
279
+ return 0 ;
280
+ } else if (argument.startsWith (" --" )) {
281
+ LogError () << " Error: arguments must not start with --, only -:" << argument << " \n " ;
282
+ return 1 ;
283
+ } else {
284
+ LogError () << " Unknown argument:" << argument << " \n " ;
285
+ return 1 ;
286
+ }
287
+ }
288
+
215
289
/* FHS-like mode is for an application that has been installed to a $PREFIX which is otherwise empty, e.g., /path/to/usr.
216
290
* In this case, we want to construct an AppDir in /path/to. */
217
291
if (QDir ().exists ((QDir::cleanPath (appBinaryPath + " /../../bin" ))) == true ) {
@@ -363,75 +437,6 @@ int main(int argc, char **argv)
363
437
}
364
438
}
365
439
366
- for (int i = 2 ; i < argc; ++i) {
367
- QByteArray argument = QByteArray (argv[i]);
368
- if (argument == QByteArray (" -no-plugins" )) {
369
- LogDebug () << " Argument found:" << argument;
370
- plugins = false ;
371
- } else if (argument == QByteArray (" -appimage" )) {
372
- LogDebug () << " Argument found:" << argument;
373
- appimage = true ;
374
- bundleAllButCoreLibs = true ;
375
- } else if (argument == QByteArray (" -no-strip" )) {
376
- LogDebug () << " Argument found:" << argument;
377
- runStripEnabled = false ;
378
- } else if (argument == QByteArray (" -bundle-non-qt-libs" )) {
379
- LogDebug () << " Argument found:" << argument;
380
- bundleAllButCoreLibs = true ;
381
- } else if (argument.startsWith (QByteArray (" -verbose" ))) {
382
- LogDebug () << " Argument found:" << argument;
383
- int index = argument.indexOf (" =" );
384
- bool ok = false ;
385
- int number = argument.mid (index+1 ).toInt (&ok);
386
- if (!ok)
387
- LogError () << " Could not parse verbose level" ;
388
- else
389
- logLevel = number;
390
- } else if (argument.startsWith (QByteArray (" -executable" ))) {
391
- LogDebug () << " Argument found:" << argument;
392
- int index = argument.indexOf (' =' );
393
- if (index == -1 )
394
- LogError () << " Missing executable path" ;
395
- else
396
- additionalExecutables << argument.mid (index+1 );
397
- } else if (argument.startsWith (QByteArray (" -qmldir" ))) {
398
- LogDebug () << " Argument found:" << argument;
399
- qmldirArgumentUsed = true ;
400
- int index = argument.indexOf (' =' );
401
- if (index == -1 )
402
- LogError () << " Missing qml directory path" ;
403
- else
404
- qmlDirs << argument.mid (index+1 );
405
- } else if (argument.startsWith (" -no-copy-copyright-files" )) {
406
- LogDebug () << " Argument found:" << argument;
407
- copyCopyrightFiles = false ;
408
- } else if (argument == QByteArray (" -always-overwrite" )) {
409
- LogDebug () << " Argument found:" << argument;
410
- alwaysOwerwriteEnabled = true ;
411
- } else if (argument.startsWith (" -qmake=" )) {
412
- LogDebug () << " Argument found:" << argument;
413
- int index = argument.indexOf (" =" );
414
- qmakeExecutable = argument.mid (index+1 );
415
- } else if (argument == QByteArray (" -no-translations" )) {
416
- LogDebug () << " Argument found:" << argument;
417
- skipTranslations = true ;
418
- } else if (argument.startsWith (" -extra-plugins=" )) {
419
- LogDebug () << " Argument found:" << argument;
420
- int index = argument.indexOf (" =" );
421
- extraQtPlugins = QString (argument.mid (index + 1 )).split (" ," );
422
- } else if (argument.startsWith (" -exclude-libs=" )) {
423
- LogDebug () << " Argument found:" << argument;
424
- int index = argument.indexOf (" =" );
425
- excludeLibs = QString (argument.mid (index + 1 )).split (" ," );
426
- } else if (argument.startsWith (" --" )) {
427
- LogError () << " Error: arguments must not start with --, only -:" << argument << " \n " ;
428
- return 1 ;
429
- } else {
430
- LogError () << " Unknown argument:" << argument << " \n " ;
431
- return 1 ;
432
- }
433
- }
434
-
435
440
if (appimage) {
436
441
if (checkAppImagePrerequisites (appDirPath) == false ){
437
442
LogError () << " checkAppImagePrerequisites failed\n " ;
0 commit comments