diff options
Diffstat (limited to 'qmake/doc/src/qmake-manual.qdoc')
-rw-r--r-- | qmake/doc/src/qmake-manual.qdoc | 101 |
1 files changed, 88 insertions, 13 deletions
diff --git a/qmake/doc/src/qmake-manual.qdoc b/qmake/doc/src/qmake-manual.qdoc index 05116b7b1b..60c6a10ba0 100644 --- a/qmake/doc/src/qmake-manual.qdoc +++ b/qmake/doc/src/qmake-manual.qdoc @@ -927,13 +927,9 @@ qmake ANDROID_ABIS="armeabi-v7a arm64-v8a" \endcode - Or directly in the \c .pro file: - - \badcode - ANDROID_ABIS = \ - armeabi-v7a \ - arm64-v8a - \endcode + \note It is possible to use this variable inside the *.pro file, however, + it is not recommended since it will override any ABIs specified on the + \c qmake command line. \target ANDROID_API_VERSION \section1 ANDROID_API_VERSION @@ -994,6 +990,19 @@ to enable OpenSSL in your application. For more information, see \l{Adding OpenSSL Support for Android}. + To include external libraries for multiple ABIs, where each ABIs has its own + directory, use the following: + + \badcode + for (abi, ANDROID_ABIS): ANDROID_EXTRA_LIBS += $$PWD/$${abi}/library_name.so + \endcode + + Otherwise, if the ABI is included in the library name, use the following: + + \badcode + for (abi, ANDROID_ABIS): ANDROID_EXTRA_LIBS += $$PWD/library_name_$${abi}.so + \endcode + \target ANDROID_EXTRA_PLUGINS \section1 ANDROID_EXTRA_PLUGINS @@ -1109,7 +1118,7 @@ \note This variable applies only to Android targets. Specifies the target Android API level for the project. By default, this - variable is set to API level 28. + variable is set to API level 31. \target ANDROID_VERSION_CODE \section1 ANDROID_VERSION_CODE @@ -1133,6 +1142,8 @@ Specifies project configuration and compiler options. The values are recognized internally by qmake and have special meaning. + \note The values are case-sensitive. + The following \c CONFIG values control compiler and linker flags: \table @@ -1186,6 +1197,11 @@ \row \li c11 \li C11 support is enabled. This option has no effect if the compiler does not support C11, or can't select the C standard. By default, the compiler default is used. + \row \li c17 \li C17, also known as C18, support is enabled. + This option has no effect if the compiler does not support C17, or + can't select the C standard. + By default, the compiler default is used. + \row \li c18 \li This is an alias for the \c{c17} value. \row \li strict_c \li Disables support for C compiler extensions. By default, they are enabled. \row \li c++11 \li C++11 support is enabled. This option has no effect if @@ -1201,6 +1217,9 @@ \row \li c++2a \li C++2a support is enabled. This option has no effect if the compiler does not support C++2a, or can't select the C++ standard. By default, support is disabled. + \row \li c++2b \li c++2b support is enabled. This option has no effect if + the compiler does not support c++2b, or can't select the C++ standard. + By default, support is disabled. \row \li c++latest \li Support for the latest C++ language standard is enabled that is supported by the compiler. By default, this option is disabled. @@ -1232,6 +1251,9 @@ subproject. \row \li no_include_pwd \li Do not add the current directory to INCLUDEPATHS. + \row \li compile_included_sources \li By default, qmake does not + compile source files that are included in other source files. This + option disables this behavior. \endtable When you use the \c debug_and_release option (which is the default under @@ -1823,9 +1845,33 @@ \target QML_IMPORT_PATH \section1 QML_IMPORT_PATH - This variable is only used by \l{Qt Creator Manual}{Qt Creator}. + This variable is only used by \l{Qt Creator Manual}{Qt Creator}. If you have + an extra module that is kept outside of your Qt installation, you can + specify its path here. + See \l{Qt Creator: Using QML Modules with Plugins} for details. + \target QMLPATHS + \section1 QMLPATHS + + Expects a list of import paths that point to root directories of trees of + QML modules. For example, if you have a custom location for your QML + modules, you can specify it here. + + \note The path entries for QMLPATHS point to root directories of trees of + QML modules. This is the concept of import paths the QML engine understands. + You can pass the same paths via the \c QML_IMPORT_PATH \e environment variable + to your QML application, but they are \e different from the expected contents + of the \l QML_IMPORT_PATH \e qmake variable. The latter expects paths to + \e individual modules to be processed by Qt Creator only. + + \note The contents of QMLPATHS are \e not automatically passed to your + application. Rather, they are only used at build time. In particular, + qmlimportscanner uses them to find any QML modules it may need to mark as + imported by your application. + + \sa QQmlEngine::addImportPath() + \target QMAKE_systemvariable \section1 QMAKE @@ -1872,6 +1918,33 @@ See \l{Platform Notes#Creating Frameworks}{Platform Notes} for more information about creating library bundles. + A project can also use this variable to bundle application translation + files. The exact syntax depends on whether the project is using Xcode's + legacy build system or its new build system. + + For example when the following project snippet is built using the + legacy build system: + + \snippet code/doc_src_qmake-manual.pro 188 + + Xcode will ignore the original location of \c InfoPlist.strings + and the file will placed into the bundle \c Resources directory + under the provided \c translations_en.path path, so + \c Resources/en.lproj/InfoPlist.strings + + With the new build system, the relative location of the file is + preserved, which means the file will incorrectly be placed under + \c Resources/en.lproj/en.lproj/InfoPlist.strings + + To ensure correct file placement, the project can either move + the original file not to be in a sub-directory or it can choose + not to specify the \c translations_en.path variable. + + \snippet code/doc_src_qmake-manual.pro 189 + + See \qtbug QTBUG-98417 for more details on how the Xcode build + system changed its behavior in bundling translation files. + \section1 QMAKE_BUNDLE_EXTENSION \note This variable is used on \macos, iOS, tvOS, and watchOS only. @@ -2613,7 +2686,8 @@ together. This variable is normally empty and therefore nothing is executed. - \note This variable takes no effect on Xcode projects. + \warning This variable is not supported when using the Xcode + generator and the new Xcode build system. \section1 QMAKE_PROJECT_NAME @@ -3345,7 +3419,7 @@ \li publisher \li Display name of the publisher. Defaults to \c{Default publisher display name}. \row - \li publisher_id + \li publisherid \li The publisher's distinguished name (default: \c{CN=MyCN}). \row \li target @@ -4078,8 +4152,9 @@ Tests whether a file with the given \c filename exists. If the file exists, the function succeeds; otherwise it fails. - If a regular expression is specified for the filename, this function - succeeds if any file matches the regular expression specified. + + The \c filename argument may contain wildcards. + In that case, this function succeeds if any file matches. For example: \snippet code/doc_src_qmake-manual.pro 63 |