androiddeployqt: make --help documentation-friendly

Change-Id: I08558d23230ec162928fea2c413ae8e2498617d7
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
This commit is contained in:
Ville Voutilainen 2023-02-06 08:41:41 +02:00
parent edc62595f2
commit 1ebf8c529d

View File

@ -559,112 +559,112 @@ Options parseOptions()
void printHelp()
{
fprintf(stderr, "Syntax: %s --output <destination> [options]\n"
"\n"
" Creates an Android package in the build directory <destination> and\n"
" builds it into an .apk file.\n"
"\n"
" Optional arguments:\n"
" --input <inputfile>: Reads <inputfile> for options generated by\n"
" qmake. A default file name based on the current working\n"
" directory will be used if nothing else is specified.\n"
"\n"
" --deployment <mechanism>: Supported deployment mechanisms:\n"
" bundled (default): Includes Qt files in stand-alone package.\n"
" unbundled: Assumes native libraries are present on the device\n"
" and does not include them in the APK.\n"
"\n"
" --aab: Build an Android App Bundle.\n"
"\n"
" --no-build: Do not build the package, it is useful to just install\n"
" a package previously built.\n"
"\n"
" --install: Installs apk to device/emulator. By default this step is\n"
" not taken. If the application has previously been installed on\n"
" the device, it will be uninstalled first.\n"
"\n"
" --reinstall: Installs apk to device/emulator. By default this step\n"
" is not taken. If the application has previously been installed on\n"
" the device, it will be overwritten, but its data will be left\n"
" intact.\n"
"\n"
" --device [device ID]: Use specified device for deployment. Default\n"
" is the device selected by default by adb.\n"
"\n"
" --android-platform <platform>: Builds against the given android\n"
" platform. By default, the highest available version will be\n"
" used.\n"
"\n"
" --release: Builds a package ready for release. By default, the\n"
" package will be signed with a debug key.\n"
"\n"
" --sign <url/to/keystore> <alias>: Signs the package with the\n"
" specified keystore, alias and store password.\n"
" Optional arguments for use with signing:\n"
" --storepass <password>: Keystore password.\n"
" --storetype <type>: Keystore type.\n"
" --keypass <password>: Password for private key (if different\n"
" from keystore password.)\n"
" --sigfile <file>: Name of .SF/.DSA file.\n"
" --digestalg <name>: Name of digest algorithm. Default is\n"
" \"SHA1\".\n"
" --sigalg <name>: Name of signature algorithm. Default is\n"
" \"SHA1withRSA\".\n"
" --tsa <url>: Location of the Time Stamping Authority.\n"
" --tsacert <alias>: Public key certificate for TSA.\n"
" --internalsf: Include the .SF file inside the signature block.\n"
" --sectionsonly: Don't compute hash of entire manifest.\n"
" --protected: Keystore has protected authentication path.\n"
" --jarsigner: Deprecated, ignored.\n"
"\n"
" NOTE: To conceal the keystore information, the environment variables\n"
" QT_ANDROID_KEYSTORE_PATH, and QT_ANDROID_KEYSTORE_ALIAS are used to\n"
" set the values keysotore and alias respectively.\n"
" Also the environment variables QT_ANDROID_KEYSTORE_STORE_PASS,\n"
" and QT_ANDROID_KEYSTORE_KEY_PASS are used to set the store and key\n"
" passwords respectively. This option needs only the --sign parameter.\n"
"\n"
" --jdk <path/to/jdk>: Used to find the jarsigner tool when used\n"
" in combination with the --release argument. By default,\n"
" an attempt is made to detect the tool using the JAVA_HOME and\n"
" PATH environment variables, in that order.\n"
"\n"
" --qml-import-paths: Specify additional search paths for QML\n"
" imports.\n"
"\n"
" --verbose: Prints out information during processing.\n"
"\n"
" --no-generated-assets-cache: Do not pregenerate the entry list for\n"
" the assets file engine.\n"
"\n"
" --aux-mode: Operate in auxiliary mode. This will only copy the\n"
" dependencies into the build directory and update the XML templates.\n"
" The project will not be built or installed.\n"
"\n"
" --apk <path/where/to/copy/the/apk>: Path where to copy the built apk.\n"
"\n"
" --qml-importscanner-binary <path/to/qmlimportscanner>: Override the\n"
" default qmlimportscanner binary path. By default the\n"
" qmlimportscanner binary is located using the Qt directory\n"
" specified in the input file.\n"
"\n"
" --depfile <path/to/depfile>: Output a dependency file.\n"
"\n"
" --builddir <path/to/build/directory>: build directory. Necessary when\n"
" generating a depfile because ninja requires relative paths.\n"
"\n"
" --no-rcc-bundle-cleanup: skip cleaning rcc bundle directory after\n"
" running androiddeployqt. This option simplifies debugging of\n"
" the resource bundle content, but it should not be used when deploying\n"
" a project, since it litters the 'assets' directory.\n"
"\n"
" --copy-dependencies-only: resolve application dependencies and stop\n"
" deploying process after all libraries and resources that the\n"
" application depends on have been copied.\n"
"\n"
" --help: Displays this information.\n",
qPrintable(QCoreApplication::arguments().at(0))
);
fprintf(stderr, R"(
Syntax: androiddeployqt --output <destination> [options]
Creates an Android package in the build directory <destination> and
builds it into an .apk file.
Optional arguments:
--input <inputfile>: Reads <inputfile> for options generated by
qmake. A default file name based on the current working
directory will be used if nothing else is specified.
--deployment <mechanism>: Supported deployment mechanisms:
bundled (default): Includes Qt files in stand-alone package.
unbundled: Assumes native libraries are present on the device
and does not include them in the APK.
--aab: Build an Android App Bundle.
--no-build: Do not build the package, it is useful to just install
a package previously built.
--install: Installs apk to device/emulator. By default this step is
not taken. If the application has previously been installed on
the device, it will be uninstalled first.
--reinstall: Installs apk to device/emulator. By default this step
is not taken. If the application has previously been installed on
the device, it will be overwritten, but its data will be left
intact.
--device [device ID]: Use specified device for deployment. Default
is the device selected by default by adb.
--android-platform <platform>: Builds against the given android
platform. By default, the highest available version will be
used.
--release: Builds a package ready for release. By default, the
package will be signed with a debug key.
--sign <url/to/keystore> <alias>: Signs the package with the
specified keystore, alias and store password.
Optional arguments for use with signing:
--storepass <password>: Keystore password.
--storetype <type>: Keystore type.
--keypass <password>: Password for private key (if different
from keystore password.)
--sigfile <file>: Name of .SF/.DSA file.
--digestalg <name>: Name of digest algorithm. Default is
"SHA1".
--sigalg <name>: Name of signature algorithm. Default is
"SHA1withRSA".
--tsa <url>: Location of the Time Stamping Authority.
--tsacert <alias>: Public key certificate for TSA.
--internalsf: Include the .SF file inside the signature block.
--sectionsonly: Don't compute hash of entire manifest.
--protected: Keystore has protected authentication path.
--jarsigner: Deprecated, ignored.
NOTE: To conceal the keystore information, the environment variables
QT_ANDROID_KEYSTORE_PATH, and QT_ANDROID_KEYSTORE_ALIAS are used to
set the values keysotore and alias respectively.
Also the environment variables QT_ANDROID_KEYSTORE_STORE_PASS,
and QT_ANDROID_KEYSTORE_KEY_PASS are used to set the store and key
passwords respectively. This option needs only the --sign parameter.
--jdk <path/to/jdk>: Used to find the jarsigner tool when used
in combination with the --release argument. By default,
an attempt is made to detect the tool using the JAVA_HOME and
PATH environment variables, in that order.
--qml-import-paths: Specify additional search paths for QML
imports.
--verbose: Prints out information during processing.
--no-generated-assets-cache: Do not pregenerate the entry list for
the assets file engine.
--aux-mode: Operate in auxiliary mode. This will only copy the
dependencies into the build directory and update the XML templates.
The project will not be built or installed.
--apk <path/where/to/copy/the/apk>: Path where to copy the built apk.
--qml-importscanner-binary <path/to/qmlimportscanner>: Override the
default qmlimportscanner binary path. By default the
qmlimportscanner binary is located using the Qt directory
specified in the input file.
--depfile <path/to/depfile>: Output a dependency file.
--builddir <path/to/build/directory>: build directory. Necessary when
generating a depfile because ninja requires relative paths.
--no-rcc-bundle-cleanup: skip cleaning rcc bundle directory after
running androiddeployqt. This option simplifies debugging of
the resource bundle content, but it should not be used when deploying
a project, since it litters the 'assets' directory.
--copy-dependencies-only: resolve application dependencies and stop
deploying process after all libraries and resources that the
application depends on have been copied.
--help: Displays this information.
)");
}
// Since strings compared will all start with the same letters,