Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
cmake-configure-variables.qdoc
Go to the documentation of this file.
1// Copyright (C) 2022 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
3
4/* NOTE: The variables documented here are available when running CMake, they
5** are not available in a deployment script. Both these and the set of
6** deploy-time variables are all members of the cmake-variables-qtcore
7** group.
8**/
9
10/*!
11\group cmake-variables-qtcore
12\title CMake Variables in Qt6 Core
13\brief Lists CMake variables defined in Qt6::Core.
14
15The following CMake variables are defined when Qt6::Core is loaded, for instance
16with
17
18\badcode
19find_package(Qt6 REQUIRED COMPONENTS Core)
20\endcode
21
22\sa{CMake Variable Reference}
23*/
24
25/*!
26\page cmake-variable-android-ndk-host-system-name.html
27\ingroup cmake-variables-qtcore
28
29\title ANDROID_NDK_HOST_SYSTEM_NAME
30\target cmake-variable-ANDROID_NDK_HOST_SYSTEM_NAME
31
32\summary {Android-specific architecture of the host system.}
33
34\cmakevariablesince 6.0
35\preliminarycmakevariable
36\cmakevariableandroidonly
37
38Usually, this variable is set by the Android NDK toolchain file. It is written out as
39part of the deployment settings for a target.
40
41\sa qt_android_generate_deployment_settings()
42\sa {Setting CMake variables and properties}
43*/
44
45/*!
46\page cmake-variable-android-sdk-root.html
47\ingroup cmake-variables-qtcore
48
49\title ANDROID_SDK_ROOT
50\target cmake-variable-ANDROID_SDK_ROOT
51
52\summary {Location of the Android SDK.}
53
54\cmakevariablesince 6.0
55\preliminarycmakevariable
56\cmakevariableandroidonly
57
58Specifies the location of the Android SDK when building for the Android platform.
59This variable is written out as part of the deployment settings for a target.
60
61\sa qt_android_generate_deployment_settings().
62\sa {Setting CMake variables and properties}
63*/
64
65/*!
66\page cmake-variable-qt-android-application-arguments.html
67\ingroup cmake-variables-qtcore
68\ingroup cmake-android-manifest-properties
69
70\title QT_ANDROID_APPLICATION_ARGUMENTS
71\target cmake-variable-QT_ANDROID_APPLICATION_ARGUMENTS
72
73\summary {List of arguments to pass to Android applications.}
74
75\cmakevariablesince 6.0
76\preliminarycmakevariable
77\cmakevariableandroidonly
78
79Contains a list of arguments to be passed to Android applications. This variable
80is written out as part of the deployment settings for a target.
81
82\sa qt_android_generate_deployment_settings()
83\sa {Setting CMake variables and properties}
84*/
85
86/*!
87\page cmake-variable-qt-android-post-build-gradle-cleanup.html
88\ingroup cmake-variables-qtcore
89\ingroup cmake-android-manifest-properties
90
91\title QT_ANDROID_POST_BUILD_GRADLE_CLEANUP
92\target cmake-variable-QT_ANDROID_POST_BUILD_GRADLE_CLEANUP
93
94\summary {Perform a Gradle cleanup after the Android package is created.}
95
96\cmakevariablesince 6.11
97\preliminarycmakevariable
98\cmakevariableandroidonly
99
100After the Android package build is done and the APK is created, perform a Gradle
101clean task to remove build artifacts. This is useful to keep disk space taken
102by Qt for Android projects at a minimal.
103
104\sa qt_android_generate_deployment_settings()
105\sa {Setting CMake variables and properties}
106*/
107
108/*!
109\page cmake-variable-qt-android-create-symlinks-only.html
110\ingroup cmake-variables-qtcore
111\ingroup cmake-android-manifest-properties
112
113\title QT_ANDROID_CREATE_SYMLINKS_ONLY
114\target cmake-variable-QT_ANDROID_CREATE_SYMLINKS_ONLY
115
116\summary {Only create symlinks for dependencies under the Gradle project directory.}
117
118\cmakevariablesince 6.11
119\preliminarycmakevariable
120\cmakevariableandroidonly
121
122Create symlinks for shared libraries, jars and resource, etc. instead of a full
123copy. This can be useful to avoid projects taking extra space, and instead directly
124use, for example, library files referenced from a Qt installation.
125
126\sa qt_android_generate_deployment_settings()
127\sa {Setting CMake variables and properties}
128*/
129
130/*!
131\page cmake-variable-qt-android-gradle-multi-module.html
132\ingroup cmake-variables-qtcore
133\ingroup cmake-android-build-properties
134
135\title QT_ANDROID_GRADLE_MULTI_MODULE
136\target cmake-variable-QT_ANDROID_GRADLE_MULTI_MODULE
137
138\summary {Builds the Android package from a multi-module Gradle project.}
139
140\cmakevariablesince 6.12
141\preliminarycmakevariable
142\cmakevariableandroidonly
143
144Set this variable to \c TRUE to package an application from a Gradle project
145that has one module per Android artifact, an \c app module for the application
146and one module for each dynamic feature:
147
148\badcode
149<build>/android-build-<target>/
150 app/ # the application module
151 <feature_1_target>/ # Dynamic feature 1
152 <feature_2_target>/ # Dynamic feature 2
153 settings.gradle # includes app and other dynamic features
154\endcode
155
156Feature modules are what \l{Android: Android Feature Delivery Documentation}
157{Play Feature Delivery} builds on, so \c qt_add_android_dynamic_features()
158requires this variable, see \l qt_add_android_dynamic_feature_java_source_dirs.
159For a complete project that uses it, see \l{Using Play Feature Delivery}.
160
161\note Using Dynamic features doesn't support multi-ABI yet.
162
163Set the variable when configuring the project:
164
165\badcode
166qt-cmake -S <source_dir> -B <build_dir> -DQT_ANDROID_GRADLE_MULTI_MODULE=ON
167\endcode
168
169 or early on before \l qt_add_executable() so that it is known before the
170 executable is created:
171
172\badcode
173set(QT_ANDROID_GRADLE_MULTI_MODULE ON)
174\endcode
175
176The variable also decides what builds the package. By default, CMake writes a
177deployment settings file and hands the rest to \l androiddeployqt, which
178resolves the Qt dependencies, copies them into the build directory, and runs
179Gradle from there. With the variable enabled, CMake deploys the dependencies
180itself as regular build steps and generates the Gradle files of every module.
181The \c apk and \c aab targets then run Gradle directly, and androiddeployqt
182isn't involved at all. The application is packaged from
183\c {android-build-<target>/app}, and the deployed files are build dependencies
184of the package. This option is generally faster and simpler since it relies on
185the CMake build graph and doesn't rely on additional deplyoment tools.
186
187The variable is available since Qt 6.11 as \c QT_USE_ANDROID_MODERN_BUNDLE.
188That name is deprecated since Qt 6.12, but is still honored if set.
189
190\sa QT_USE_TARGET_ANDROID_BUILD_DIR
191\sa qt_add_android_dynamic_feature_java_source_dirs()
192\sa {Setting CMake variables and properties}
193*/
194
195/*!
196\page cmake-variable-qt-android-deployment-type.html
197\ingroup cmake-variables-qtcore
198\ingroup cmake-android-build-properties
199
200\title QT_ANDROID_DEPLOYMENT_TYPE
201\target cmake-variable-QT_ANDROID_DEPLOYMENT_TYPE
202
203\summary {Forces or disables release package signing regardless of the build type.}
204
205\cmakevariablesince 6.7
206\cmakevariableandroidonly
207
208When set to \c Release, the \c --release flag is passed to the \c
209androiddeployqt tool, regardless of the application build type. When set to
210another value, the \c --release flag is never passed to the tool, which
211effectively disables release package signing even in Release or RelWithDebInfo
212builds. When not set, the default behavior is to use release package signing in
213build types other than Debug.
214
215This variable is not supposed to be set in CMake project files. Rather set it
216when configuring your project on the command line or in the CMake settings of
217your IDE.
218
219\sa {androiddeployqt}
220\sa {Setting CMake variables and properties}
221*/
222
223/*!
224\page cmake_variable-qt-android-multi-abi-forward-vars
225\ingroup cmake-variables-qtcore
226\ingroup cmake-android-build-properties
227
228\title QT_ANDROID_MULTI_ABI_FORWARD_VARS
229\target cmake-variable-QT_ANDROID_MULTI_ABI_FORWARD_VARS
230
231\summary {Allows to share CMake variables in multi-ABI builds.}
232
233\cmakevariablesince 6.4.2
234\preliminarycmakevariable
235\cmakevariableandroidonly
236
237Allows specifying the list of
238CMake variables that need to be forwarded from the main ABI project to
239ABI-specific subprojects. Due to the specifics of the Multi-ABI project build
240process, there is no generic way to forward the CMake cache variables
241that are specified either in the command line or in another similar way.
242
243A typical use case for the variable is propagating CMake cache variables
244specified in the command line. For example, a project has two variables
245\c{PROJECT_WIDE_VARIABLE1} and \c{PROJECT_WIDE_VARIABLE2} that affect the
246project configuration:
247\badcode
248cmake_minimum_required(VERSION 3.18)
249
250project(MyProject LANGUAGES CXX)
251
252find_package(Qt6 REQUIRED COMPONENTS Core)
253
254qt_add_executable(MyApp main.cpp)
255
256if(PROJECT_WIDE_VARIABLE1)
257 target_sources(MyApp PRIVATE sourcefile1.cpp)
258endif()
259if(PROJECT_WIDE_VARIABLE2)
260 target_sources(MyApp PRIVATE sourcefile2.cpp)
261endif()
262\endcode
263
264The above contents of \c{CMakeLists.txt} enable you to control how
265\c{MyApp} is built by setting the corresponding CMake variables from the
266command line:
267\badcode
268qt-cmake -S<source directory> -B<build directory> \
269 -DPROJECT_WIDE_VARIABLE1=ON \
270 -DPROJECT_WIDE_VARIABLE2=ON \
271 -DQT_ANDROID_MULTI_ABI_FORWARD_VARS="PROJECT_WIDE_VARIABLE1;PROJECT_WIDE_VARIABLE2"
272\endcode
273
274When configuring the application for desktop, \c{PROJECT_WIDE_VARIABLE1} and
275\c{PROJECT_WIDE_VARIABLE2} are visible in CMake listings and scripts as global
276cache variables. This doesn't work for Android Multi-ABI builds because
277ABI-specific subprojects do not inherit the cache variables from the main-ABI
278project. This issue can be solved by passing the list of required variables to
279the \c{QT_ANDROID_MULTI_ABI_FORWARD_VARS} variable, so both
280\c{PROJECT_WIDE_VARIABLE1} and \c{PROJECT_WIDE_VARIABLE2} values will be
281propagated to the ABI-specific builds.
282
283The variable can be also defined in the project's CMakeLists.txt:
284\badcode
285...
286qt_add_executable(MyApp main.cpp)
287...
288if(ANDROID)
289 set(QT_ANDROID_MULTI_ABI_FORWARD_VARS "PROJECT_WIDE_VARIABLE1;PROJECT_WIDE_VARIABLE2")
290endif()
291...
292\endcode
293
294Set the variable in this way to have a predefined set of
295variables that will always be forwarded to ABI-specific projects.
296
297\note The forwarding is done in the target finalizer, which is implicitly
298called when \l qt_add_executable() is used. The
299finalization occurs automatically when using CMake 3.19 or later.
300
301\sa qt_finalize_target(), qt_add_executable()
302*/
303
304/*!
305\page cmake-variable-qt-android-build-all-abis.html
306\ingroup cmake-variables-qtcore
307\ingroup cmake-android-build-properties
308
309\title QT_ANDROID_BUILD_ALL_ABIS
310\target cmake-variable-QT_ANDROID_BUILD_ALL_ABIS
311
312\summary {Enables building multi-ABI packages using the autodetected \Q4A SDK list.}
313
314\cmakevariablesince 6.3
315\preliminarycmakevariable
316\cmakevariableandroidonly
317
318Automatically detects available ABIs of \Q4A and uses them to
319build a package. The automatic detection expects the default directory structure
320supplied by the Qt installer, with the corresponding naming of the directories.
321\include cmake-android-supported-abis.qdocinc
322The typical directory structure looks as below:
323\badcode
324/path/to/Qt/6.x.x
325 android_armv7
326 android_arm64_v8a
327 android_x86
328 android_x86_64
329 ...
330\endcode
331The auto-detected paths can be customized using one of \c{QT_PATH_ANDROID_ABI_<ABI>} variables.
332
333The variable is set to \c FALSE by default.
334
335\note The multi-ABI project build process does not offer a generic way to
336forward the CMake cache variables that are specified either in the command line
337or in another similar way. Use QT_ANDROID_MULTI_ABI_FORWARD_VARS to specify the
338list of CMake variables to forward from the main ABI project to ABI-specific
339subprojects.
340
341\sa{QT_PATH_ANDROID_ABI_<ABI>},{QT_ANDROID_MULTI_ABI_FORWARD_VARS}
342\sa {Setting CMake variables and properties}
343*/
344
345/*!
346\page cmake-variable-qt-android-abis.html
347\ingroup cmake-variables-qtcore
348\ingroup cmake-android-build-properties
349
350\title QT_ANDROID_ABIS
351\target cmake-variable-QT_ANDROID_ABIS
352
353\summary {List of ABIs that the project packages are built for.}
354
355\cmakevariablesince 6.3
356\preliminarycmakevariable
357\cmakevariableandroidonly
358
359Specifies a list of ABIs to be used to build the project packages.
360\include cmake-android-supported-abis.qdocinc
361Each ABI should have the corresponding \Q4A either installed or
362user-built. To specify the path to the \Q4A ABI, use
363the corresponding \c{QT_PATH_ANDROID_ABI_<ABI>} variable.
364
365\note \c{QT_ANDROID_BUILD_ALL_ABIS} has the higher priority and ignores the
366QT_ANDROID_ABIS logic.
367
368\sa{QT_PATH_ANDROID_ABI_<ABI>}, {QT_ANDROID_BUILD_ALL_ABIS}
369\sa {Setting CMake variables and properties}
370*/
371
372/*!
373\page cmake-variable-qt-path-android-abi.html
374\ingroup cmake-variables-qtcore
375
376\title QT_PATH_ANDROID_ABI_<ABI>
377\target cmake-variable-QT_PATH_ANDROID_ABI_<ABI>
378
379\summary {Set of variables to specify the path to \Q4A for the corresponding ABI.}
380
381\cmakevariablesince 6.3
382\preliminarycmakevariable
383\cmakevariableandroidonly
384
385Each variable can be used to specify the path to \Q4A for the corresponding ABI.
386\include cmake-android-supported-abis.qdocinc
387
388\sa{cmake-variable-QT_ANDROID_ABIS}{QT_ANDROID_ABIS}
389\sa {Setting CMake variables and properties}
390*/
391
392/*!
393\page cmake-variable-qt-android-sign-aab.html
394\ingroup cmake-variables-qtcore
395\ingroup cmake-android-build-properties
396
397\title QT_ANDROID_SIGN_AAB
398\target cmake-variable-QT_ANDROID_SIGN_AAB
399
400\summary {Signs the .aab package with the specified keystore, alias, and store password.}
401\cmakevariablesince 6.4
402\preliminarycmakevariable
403\cmakevariableandroidonly
404
405Signs the resulting package. The path of the keystore file, the alias of the key, and passwords
406have to be specified by additional environment variables:
407\badcode
408 QT_ANDROID_KEYSTORE_PATH
409 QT_ANDROID_KEYSTORE_ALIAS
410 QT_ANDROID_KEYSTORE_STORE_PASS
411 QT_ANDROID_KEYSTORE_KEY_PASS
412\endcode
413The mentioned variables are used internally by \l{androiddeployqt}.
414
415\sa{androiddeployqt}
416\sa {Setting CMake variables and properties}
417*/
418
419/*!
420\page cmake-variable-qt-android-sign-apk.html
421\ingroup cmake-variables-qtcore
422\ingroup cmake-android-build-properties
423
424\title QT_ANDROID_SIGN_APK
425\target cmake-variable-QT_ANDROID_SIGN_APK
426
427\summary {Signs the package with the specified keystore, alias, and store password.}
428\cmakevariablesince 6.4
429\preliminarycmakevariable
430\cmakevariableandroidonly
431
432Signs the resulting package. The path of the keystore file, the alias of the key, and passwords
433have to be specified by additional environment variables:
434\badcode
435 QT_ANDROID_KEYSTORE_PATH
436 QT_ANDROID_KEYSTORE_ALIAS
437 QT_ANDROID_KEYSTORE_STORE_PASS
438 QT_ANDROID_KEYSTORE_KEY_PASS
439\endcode
440The mentioned variables are used internally by \l{androiddeployqt}.
441
442\sa{androiddeployqt}
443\sa {Setting CMake variables and properties}
444*/
445
446/*!
447\page cmake-variable-qt-android-generate-java-qml-components.html
448\ingroup cmake-variables-qtcore
449\ingroup cmake-android-build-properties
450
451\title QT_ANDROID_GENERATE_JAVA_QTQUICKVIEW_CONTENTS
452\target cmake-variable-QT_ANDROID_GENERATE_JAVA_QTQUICKVIEW_CONTENTS
453
454\summary {Enables the generation of QtQuickViewContent-based classes.}
455\cmakevariablesince 6.8
456\preliminarycmakevariable
457\cmakevariableandroidonly
458
459Set to \c TRUE to enable Java code generation for QML components of the target application. The
460generated code will be included in the resulting package. The Java package name of generated
461classes will be the same as the Android app package. If the leaf part of the package name is
462not the same as the target executable, an extra static class with the same name as the
463capitalized target executable will surround all QML modules enclosing Java classes. Each QML
464module class, again in a capitalized form, will contain \l{QtQuickViewContent} extension classes
465that represent QML components of that module.
466
467\badcode
468set(QT_ANDROID_GENERATE_JAVA_QTQUICKVIEW_CONTENTS TRUE)
469set_source_files_properties(MyView.qml PROPERTIES QT_QML_GENERATE_ANDROID_JAVA_CLASS TRUE)
470qt_add_qml_module(myapp URI MyModule QML_FILES MyView.qml)
471\endcode
472
473\sa {QT_QML_GENERATE_ANDROID_JAVA_CLASS}, {androiddeployqt}
474\sa {Setting CMake variables and properties}
475*/
476/*!
477\page cmake-variable-qt-use-target-android-build-dir.html
478\ingroup cmake-variables-qtcore
479
480\title QT_USE_TARGET_ANDROID_BUILD_DIR
481\target cmake-variable-QT_USE_TARGET_ANDROID_BUILD_DIR
482
483\summary {Enables the use of per-target Android build directories.}
484
485\cmakevariablesince 6.7
486\preliminarycmakevariable
487\cmakevariableandroidonly
488
489The variable appends the target-specific suffix to the android-build directory.
490The variable only takes an effect when it's set in \c CACHE. The variable is
491only supported by Qt Creator starting from version 13.
492If a single \c CMakeLists.txt contains more than one Android executable and
493this option is not set, you will see a warning. To disable the warning, set
494\c QT_SKIP_ANDROID_BUILD_DIR_CHECK to \c TRUE.
495
496\sa {Setting CMake variables and properties}
497*/
498
499/*!
500\page cmake-variable-qt-no-collect-build-tree-apk-deps.html
501\ingroup cmake-variables-qtcore
502
503\title QT_NO_COLLECT_BUILD_TREE_APK_DEPS
504\target cmake-variable-QT_NO_COLLECT_BUILD_TREE_APK_DEPS
505
506\summary {Prevents collecting of project-built shared library targets during Android deployment.}
507
508\cmakevariablesince 6.3
509\preliminarycmakevariable
510\cmakevariableandroidonly
511
512During project finalization, the build system collects the locations of
513all built shared library targets in the project.
514These locations are passed to \l androiddeployqt for deployment consideration when
515resolving dependencies between libraries.
516To disable this behavior, set this variable to \c TRUE.
517
518\sa qt_finalize_project()
519\sa {cmake-variable-QT_NO_COLLECT_IMPORTED_TARGET_APK_DEPS}{QT_NO_COLLECT_IMPORTED_TARGET_APK_DEPS}
520\sa {Setting CMake variables and properties}
521*/
522
523/*!
524\page cmake-variable-qt-no-collect-imported-target-apk-deps.html
525\ingroup cmake-variables-qtcore
526
527\title QT_NO_COLLECT_IMPORTED_TARGET_APK_DEPS
528\target cmake-variable-QT_NO_COLLECT_IMPORTED_TARGET_APK_DEPS
529
530\summary {Prevents collecting of imported targets during Android deployment.}
531
532\cmakevariablesince 6.5
533\preliminarycmakevariable
534\cmakevariableandroidonly
535
536When using CMake version 3.21 or later, the build system collects the locations of
537imported shared library targets that might be relevant for deployment.
538The collected targets are those that are reachable from the directory scope
539of the currently processed executable target. That includes the target's source directory
540scope and its parents.
541The collected locations are passed to \l androiddeployqt for deployment consideration when
542resolving dependencies between libraries.
543To disable this behavior, set this variable to \c TRUE.
544
545\sa qt_finalize_project()
546\sa {cmake-variable-QT_NO_COLLECT_BUILD_TREE_APK_DEPS}{QT_NO_COLLECT_BUILD_TREE_APK_DEPS}
547\sa {Setting CMake variables and properties}
548*/
549
550/*!
551\page cmake-variable-qt-host-path.html
552\ingroup cmake-variables-qtcore
553
554\title QT_HOST_PATH
555\target cmake-variable-QT_HOST_PATH
556
557\summary {Location of the host Qt installation when cross-compiling.}
558
559\cmakevariablesince 6.0
560
561When cross-compiling, this variable must be set to the install location of Qt for the host
562platform. It is used to locate tools to be run on the host (\l{moc}, \l{rcc},
563\l{androiddeployqt}, and so on). It's possible to reuse pre-installed tools
564when compiling Qt for host systems too, by using \c QT_HOST_PATH that points to
565a pre-installed host Qt and setting the \c QT_FORCE_FIND_TOOLS to \c ON. The Qt
566versions should match in this case.
567
568\sa {Setting CMake variables and properties}
569*/
570
571/*!
572\page cmake-variable-qt-no-set-xcode-development-team-id.html
573\ingroup cmake-variables-qtcore
574
575\title QT_NO_SET_XCODE_DEVELOPMENT_TEAM_ID
576\target cmake-variable-QT_NO_SET_XCODE_DEVELOPMENT_TEAM_ID
577
578\summary {Disables providing a fallback team ID during target finalization on iOS.}
579
580\cmakevariablesince 6.1
581
582When finalizing an executable target on iOS,
583\l qt_finalize_target() will populate the target's
584\c XCODE_ATTRIBUTE_DEVELOPMENT_TEAM property if it hasn't been set.
585To prevent this, set \c QT_NO_SET_XCODE_DEVELOPMENT_TEAM_ID to \c TRUE.
586
587\sa {Setting CMake variables and properties}
588*/
589
590/*!
591\page cmake-variable-qt-no-set-xcode-bundle-identifier.html
592\ingroup cmake-variables-qtcore
593
594\title QT_NO_SET_XCODE_BUNDLE_IDENTIFIER
595\target cmake-variable-QT_NO_SET_XCODE_BUNDLE_IDENTIFIER
596
597\summary {Disables providing a fallback app bundle ID during target finalization on iOS.}
598
599\cmakevariablesince 6.1
600
601When finalizing an executable target on iOS,
602\l qt_finalize_target() will populate the target's
603\c XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER and
604\c MACOSX_BUNDLE_GUI_IDENTIFIER properties if they haven't been set.
605To prevent this, set \c QT_NO_SET_XCODE_BUNDLE_IDENTIFIER to \c TRUE.
606
607\sa {Setting CMake variables and properties}
608*/
609
610/*!
611\page cmake-variable-qt-enable-verbose-deployment.html
612\ingroup cmake-variables-qtcore
613
614\title QT_ENABLE_VERBOSE_DEPLOYMENT
615\target cmake-variable-QT_ENABLE_VERBOSE_DEPLOYMENT
616
617\summary {Enables verbose mode of deployment tools.}
618
619\cmakevariablesince 6.3
620
621Enables verbose mode of the \l androiddeployqt deployment tool when it is called
622internally at build time, usually during target finalization.
623
624This variable also changes the default verbosity of install-time deployment
625scripts for other platforms (see \l qt_deploy_runtime_dependencies()), but it
626must be set before the first \c{find_package(Qt6)} call to have that effect.
627
628\sa {Setting CMake variables and properties}
629*/
630
631/*!
632\page cmake-variable-qt-deploy-support.html
633\ingroup cmake-variables-qtcore
634
635\title QT_DEPLOY_SUPPORT
636\target cmake-variable-QT_DEPLOY_SUPPORT
637
638\summary {Name of the file to include for setting up deployment support.}
639
640\cmakevariablesince 6.3
641\note The value of this variable should never be modified by project code.
642
643This configure-phase variable is set by the Core package. It is intended to be
644used as the first line of any deployment script to ensure access to the
645deployment APIs provided by Qt. Such deployment scripts do not run during
646CMake's configure phase. They are executed during installation or as
647part of a post-build rule.
648
649The following example shows one way the variable would be used when installing
650an application, along with its runtime dependencies:
651
652\include cmake-deploy-modified-variable-values.qdocinc
653
654\sa qt_deploy_runtime_dependencies(), qt_deploy_qml_imports()
655\sa {Setting CMake variables and properties}
656*/
657
658/*!
659\page cmake-variable-qt-no-standard-project-setup.html
660\ingroup cmake-variables-qtcore
661
662\title QT_NO_STANDARD_PROJECT_SETUP
663\target cmake-variable-QT_NO_STANDARD_PROJECT_SETUP
664
665\summary {Prevents subsequent calls to qt_standard_project_setup() from making any changes.}
666
667\cmakevariablesince 6.3
668
669The \l qt_standard_project_setup() command is
670typically called in the top level \c{CMakeLists.txt} file of a project. In some
671scenarios, such a project may be absorbed as a child project of a larger project
672hierarchy. A parent project may want to prevent any child project from applying
673changes to the setup. The parent project can achieve this by setting
674\c{QT_NO_STANDARD_PROJECT_SETUP} to \c TRUE before bringing in the child project
675via \l{add_subdirectory()}, \l{FetchContent_MakeAvailable()}, or other similar
676methods provided by CMake.
677
678\sa qt_standard_project_setup()
679\sa {Setting CMake variables and properties}
680*/
681
682/*!
683\page cmake-variable-qt-i18n-languages.html
684\ingroup cmake-variables-qtcore
685
686\title QT_I18N_TRANSLATED_LANGUAGES
687\target cmake-variable-QT_I18N_TRANSLATED_LANGUAGES
688
689\summary {List of languages to be used for project internationalization.}
690
691\cmakevariablesince 6.7
692
693Specifies a list of languages that are used for project
694internationalization. The single languages must be compatible with the
695string-based \l QLocale constructor.
696
697The languages in \c QT_I18N_TRANSLATED_LANGUAGES are used to:
698\list
699 \li Set up executable targets for consuming \c{.qm} files.
700 \li Automatically construct \c{.ts} file names in
701 \l qt_add_translations().
702\endlist
703
704This variable can be conveniently set with the
705\l qt_standard_project_setup() command.
706
707By default, translatable strings are considered to be written in \c{en}.
708
709\sa qt_standard_project_setup()
710\sa qt_add_translations()
711\sa {Setting CMake variables and properties}
712*/
713
714/*!
715\page cmake-variable-qt-i18n-native-language.html
716\ingroup cmake-variables-qtcore
717
718\title QT_I18N_SOURCE_LANGUAGE
719\target cmake-variable-QT_I18N_SOURCE_LANGUAGE
720
721\summary {Specifies the language of translatable strings.}
722
723\cmakevariablesince 6.7
724
725Specifies the language of translatable strings in the source code.
726The language must be compatible with the string-based \l QLocale constructor.
727
728Together with \c{QT_I18N_TRANSLATED_LANGUAGES}, this variable is used to determine the
729names of \c{.ts} files for \l qt_add_translations().
730
731This variable can be conveniently set with the
732\l qt_standard_project_setup() command.
733
734\sa qt_standard_project_setup()
735\sa qt_add_translations()
736\sa {Setting CMake variables and properties}
737*/
738
739/*!
740\page cmake-variable-qt-ios-launch-screen.html
741\ingroup cmake-variables-qtcore
742
743\title QT_IOS_LAUNCH_SCREEN
744\target cmake-variable-QT_IOS_LAUNCH_SCREEN
745
746\summary {Path to iOS launch screen storyboard used by all targets.}
747
748\cmakevariablesince 6.4
749\preliminarycmakevariable
750\cmakevariableiosonly
751
752Specifies the path to an iOS launch screen storyboard file that will be used
753by all targets within a project.
754
755\sa {Launch Screens and Launch Images}
756\sa {Setting CMake variables and properties}
757*/