Reorder
This commit is contained in:
+102
-102
@@ -1,6 +1,6 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
**
|
**
|
||||||
** Copyright (C) 2016-18 The Qt Company Ltd. and Simon Peter
|
** Copyright (C) 2016-19 The Qt Company Ltd. and Simon Peter
|
||||||
** Contact: https://www.qt.io/licensing/
|
** Contact: https://www.qt.io/licensing/
|
||||||
**
|
**
|
||||||
** This file is part of the tools applications of the Qt Toolkit.
|
** This file is part of the tools applications of the Qt Toolkit.
|
||||||
@@ -53,6 +53,107 @@ int main(int argc, char **argv)
|
|||||||
<< "build " << BUILD_NUMBER << " built on " << BUILD_DATE;
|
<< "build " << BUILD_NUMBER << " built on " << BUILD_DATE;
|
||||||
qInfo().noquote() << QString::fromStdString(version.str());
|
qInfo().noquote() << QString::fromStdString(version.str());
|
||||||
|
|
||||||
|
bool plugins = true;
|
||||||
|
bool appimage = false;
|
||||||
|
extern bool runStripEnabled;
|
||||||
|
extern bool bundleAllButCoreLibs;
|
||||||
|
extern bool fhsLikeMode;
|
||||||
|
extern QString fhsPrefix;
|
||||||
|
extern QStringList librarySearchPath;
|
||||||
|
extern bool alwaysOwerwriteEnabled;
|
||||||
|
QStringList additionalExecutables;
|
||||||
|
bool qmldirArgumentUsed = false;
|
||||||
|
bool skipTranslations = false;
|
||||||
|
QStringList qmlDirs;
|
||||||
|
QStringList qmlImportPaths;
|
||||||
|
QString qmakeExecutable;
|
||||||
|
extern QStringList extraQtPlugins;
|
||||||
|
extern QStringList excludeLibs;
|
||||||
|
extern QStringList ignoreGlob;
|
||||||
|
extern bool copyCopyrightFiles;
|
||||||
|
|
||||||
|
// Check arguments
|
||||||
|
for (int i = 2; i < argc; ++i) {
|
||||||
|
QByteArray argument = QByteArray(argv[i]);
|
||||||
|
|
||||||
|
if (argument == QByteArray("-no-plugins")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
plugins = false;
|
||||||
|
} else if (argument == QByteArray("-appimage")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
appimage = true;
|
||||||
|
bundleAllButCoreLibs = true;
|
||||||
|
} else if (argument == QByteArray("-no-strip")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
runStripEnabled = false;
|
||||||
|
} else if (argument == QByteArray("-bundle-non-qt-libs")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
bundleAllButCoreLibs = true;
|
||||||
|
} else if (argument.startsWith(QByteArray("-verbose"))) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
int index = argument.indexOf("=");
|
||||||
|
bool ok = false;
|
||||||
|
int number = argument.mid(index+1).toInt(&ok);
|
||||||
|
if (!ok)
|
||||||
|
LogError() << "Could not parse verbose level";
|
||||||
|
else
|
||||||
|
logLevel = number;
|
||||||
|
} else if (argument.startsWith(QByteArray("-executable"))) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
int index = argument.indexOf('=');
|
||||||
|
if (index == -1)
|
||||||
|
LogError() << "Missing executable path";
|
||||||
|
else
|
||||||
|
additionalExecutables << argument.mid(index+1);
|
||||||
|
} else if (argument.startsWith(QByteArray("-qmldir"))) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
qmldirArgumentUsed = true;
|
||||||
|
int index = argument.indexOf('=');
|
||||||
|
if (index == -1)
|
||||||
|
LogError() << "Missing qml directory path";
|
||||||
|
else
|
||||||
|
qmlDirs << argument.mid(index+1);
|
||||||
|
} else if (argument.startsWith(QByteArray("-qmlimport"))) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
int index = argument.indexOf('=');
|
||||||
|
if (index == -1)
|
||||||
|
LogError() << "Missing qml import path";
|
||||||
|
else
|
||||||
|
qmlImportPaths << argument.mid(index+1);
|
||||||
|
} else if (argument.startsWith("-no-copy-copyright-files")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
copyCopyrightFiles = false;
|
||||||
|
} else if (argument == QByteArray("-always-overwrite")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
alwaysOwerwriteEnabled = true;
|
||||||
|
} else if (argument.startsWith("-qmake=")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
int index = argument.indexOf("=");
|
||||||
|
qmakeExecutable = argument.mid(index+1);
|
||||||
|
} else if (argument == QByteArray("-no-translations")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
skipTranslations = true;
|
||||||
|
} else if (argument.startsWith("-extra-plugins=")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
int index = argument.indexOf("=");
|
||||||
|
extraQtPlugins = QString(argument.mid(index + 1)).split(",");
|
||||||
|
} else if (argument.startsWith("-exclude-libs=")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
int index = argument.indexOf("=");
|
||||||
|
excludeLibs = QString(argument.mid(index + 1)).split(",");
|
||||||
|
} else if (argument.startsWith("-ignore-glob=")) {
|
||||||
|
LogDebug() << "Argument found:" << argument;
|
||||||
|
int index = argument.indexOf("=");
|
||||||
|
ignoreGlob += argument.mid(index + 1);
|
||||||
|
} else if (argument.startsWith("--")) {
|
||||||
|
LogError() << "Error: arguments must not start with --, only -:" << argument << "\n";
|
||||||
|
return 1;
|
||||||
|
} else {
|
||||||
|
LogError() << "Unknown argument:" << argument << "\n";
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// We need to catch those errors at the source of the problem
|
// We need to catch those errors at the source of the problem
|
||||||
// https://github.com/AppImage/appimage.github.io/search?q=GLIBC&unscoped_q=GLIBC&type=Issues
|
// https://github.com/AppImage/appimage.github.io/search?q=GLIBC&unscoped_q=GLIBC&type=Issues
|
||||||
const char *glcv = gnu_get_libc_version ();
|
const char *glcv = gnu_get_libc_version ();
|
||||||
@@ -219,25 +320,6 @@ int main(int argc, char **argv)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool plugins = true;
|
|
||||||
bool appimage = false;
|
|
||||||
extern bool runStripEnabled;
|
|
||||||
extern bool bundleAllButCoreLibs;
|
|
||||||
extern bool fhsLikeMode;
|
|
||||||
extern QString fhsPrefix;
|
|
||||||
extern QStringList librarySearchPath;
|
|
||||||
extern bool alwaysOwerwriteEnabled;
|
|
||||||
QStringList additionalExecutables;
|
|
||||||
bool qmldirArgumentUsed = false;
|
|
||||||
bool skipTranslations = false;
|
|
||||||
QStringList qmlDirs;
|
|
||||||
QStringList qmlImportPaths;
|
|
||||||
QString qmakeExecutable;
|
|
||||||
extern QStringList extraQtPlugins;
|
|
||||||
extern QStringList excludeLibs;
|
|
||||||
extern QStringList ignoreGlob;
|
|
||||||
extern bool copyCopyrightFiles;
|
|
||||||
|
|
||||||
/* FHS-like mode is for an application that has been installed to a $PREFIX which is otherwise empty, e.g., /path/to/usr.
|
/* FHS-like mode is for an application that has been installed to a $PREFIX which is otherwise empty, e.g., /path/to/usr.
|
||||||
* In this case, we want to construct an AppDir in /path/to. */
|
* In this case, we want to construct an AppDir in /path/to. */
|
||||||
if (QDir().exists((QDir::cleanPath(appBinaryPath + "/../../bin"))) == true) {
|
if (QDir().exists((QDir::cleanPath(appBinaryPath + "/../../bin"))) == true) {
|
||||||
@@ -389,88 +471,6 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check arguments
|
|
||||||
for (int i = 2; i < argc; ++i) {
|
|
||||||
QByteArray argument = QByteArray(argv[i]);
|
|
||||||
|
|
||||||
if (argument == QByteArray("-no-plugins")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
plugins = false;
|
|
||||||
} else if (argument == QByteArray("-appimage")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
appimage = true;
|
|
||||||
bundleAllButCoreLibs = true;
|
|
||||||
} else if (argument == QByteArray("-no-strip")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
runStripEnabled = false;
|
|
||||||
} else if (argument == QByteArray("-bundle-non-qt-libs")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
bundleAllButCoreLibs = true;
|
|
||||||
} else if (argument.startsWith(QByteArray("-verbose"))) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
int index = argument.indexOf("=");
|
|
||||||
bool ok = false;
|
|
||||||
int number = argument.mid(index+1).toInt(&ok);
|
|
||||||
if (!ok)
|
|
||||||
LogError() << "Could not parse verbose level";
|
|
||||||
else
|
|
||||||
logLevel = number;
|
|
||||||
} else if (argument.startsWith(QByteArray("-executable"))) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
int index = argument.indexOf('=');
|
|
||||||
if (index == -1)
|
|
||||||
LogError() << "Missing executable path";
|
|
||||||
else
|
|
||||||
additionalExecutables << argument.mid(index+1);
|
|
||||||
} else if (argument.startsWith(QByteArray("-qmldir"))) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
qmldirArgumentUsed = true;
|
|
||||||
int index = argument.indexOf('=');
|
|
||||||
if (index == -1)
|
|
||||||
LogError() << "Missing qml directory path";
|
|
||||||
else
|
|
||||||
qmlDirs << argument.mid(index+1);
|
|
||||||
} else if (argument.startsWith(QByteArray("-qmlimport"))) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
int index = argument.indexOf('=');
|
|
||||||
if (index == -1)
|
|
||||||
LogError() << "Missing qml import path";
|
|
||||||
else
|
|
||||||
qmlImportPaths << argument.mid(index+1);
|
|
||||||
} else if (argument.startsWith("-no-copy-copyright-files")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
copyCopyrightFiles = false;
|
|
||||||
} else if (argument == QByteArray("-always-overwrite")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
alwaysOwerwriteEnabled = true;
|
|
||||||
} else if (argument.startsWith("-qmake=")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
int index = argument.indexOf("=");
|
|
||||||
qmakeExecutable = argument.mid(index+1);
|
|
||||||
} else if (argument == QByteArray("-no-translations")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
skipTranslations = true;
|
|
||||||
} else if (argument.startsWith("-extra-plugins=")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
int index = argument.indexOf("=");
|
|
||||||
extraQtPlugins = QString(argument.mid(index + 1)).split(",");
|
|
||||||
} else if (argument.startsWith("-exclude-libs=")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
int index = argument.indexOf("=");
|
|
||||||
excludeLibs = QString(argument.mid(index + 1)).split(",");
|
|
||||||
} else if (argument.startsWith("-ignore-glob=")) {
|
|
||||||
LogDebug() << "Argument found:" << argument;
|
|
||||||
int index = argument.indexOf("=");
|
|
||||||
ignoreGlob += argument.mid(index + 1);
|
|
||||||
} else if (argument.startsWith("--")) {
|
|
||||||
LogError() << "Error: arguments must not start with --, only -:" << argument << "\n";
|
|
||||||
return 1;
|
|
||||||
} else {
|
|
||||||
LogError() << "Unknown argument:" << argument << "\n";
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (appimage) {
|
if (appimage) {
|
||||||
if(checkAppImagePrerequisites(appDirPath) == false){
|
if(checkAppImagePrerequisites(appDirPath) == false){
|
||||||
LogError() << "checkAppImagePrerequisites failed\n";
|
LogError() << "checkAppImagePrerequisites failed\n";
|
||||||
|
|||||||
Reference in New Issue
Block a user