diff options
Diffstat (limited to 'cmake/configure-cmake-mapping.md')
-rw-r--r-- | cmake/configure-cmake-mapping.md | 105 |
1 files changed, 56 insertions, 49 deletions
diff --git a/cmake/configure-cmake-mapping.md b/cmake/configure-cmake-mapping.md index 5a102f8d0e..d504bd8d4b 100644 --- a/cmake/configure-cmake-mapping.md +++ b/cmake/configure-cmake-mapping.md @@ -1,17 +1,16 @@ The following table describes the mapping of configure options to CMake arguments. -Note that not everything is implemented in configure/configure.bat yet. -The effort of this is tracked in QTBUG-85373 and QTBUG-85349. | configure | cmake | Notes | |---------------------------------------|---------------------------------------------------|-----------------------------------------------------------------| | -prefix /opt/qt6 | -DCMAKE_INSTALL_PREFIX=/opt/qta6 | | +| -no-prefix (only available in Qt6) | -DCMAKE_INSTALL_PREFIX=$PWD (with bash) | In Qt5 this was done by specifying -prefix $PWD | +| or -DFEATURE_no_prefix=ON | | | -extprefix /opt/qt6 | -DCMAKE_STAGING_PREFIX=/opt/qt6 | | -| -hostprefix /where/ever | n/a | When cross-building Qt, we do not build for host system anymore | -| -external-hostbindir /path/to/host/qt | -DQT_HOST_PATH=/path/to/host/qt | | | -bindir <dir> | -DINSTALL_BINDIR=<dir> | similar for -headerdir -libdir and so on | -| -host*dir <dir> | n/a | | +| -hostdatadir <dir> | -DINSTALL_MKSPECSDIR=<dir> | | +| -qt-host-path <dir> | -DQT_HOST_PATH=<dir> | | | -help | n/a | Handled by configure[.bat]. | -| -verbose | | | +| -verbose | --log-level=STATUS | Sets the CMake log level to STATUS. The default one is NOTICE. | | -continue | | | | -redo | n/a | Handled by configure[.bat]. | | -recheck [test,...] | | | @@ -19,10 +18,9 @@ The effort of this is tracked in QTBUG-85373 and QTBUG-85349. | -no-feature-foo | -DFEATURE_foo=OFF | | | -list-features | | At the moment: configure with cmake once, | | | | then use ccmake or cmake-gui to inspect the features. | -| -list-libraries | | | -| -opensource | | | -| -commercial | | | -| -confirm-license | | | +| -opensource | n/a | | +| -commercial | n/a | | +| -confirm-license | n/a | | | -release | -DCMAKE_BUILD_TYPE=Release | | | -debug | -DCMAKE_BUILD_TYPE=Debug | | | -debug-and-release | -G "Ninja Multi-Config" | | @@ -41,69 +39,76 @@ The effort of this is tracked in QTBUG-85373 and QTBUG-85349. | -static | -DBUILD_SHARED_LIBS=OFF | | | -framework | -DFEATURE_framework=ON | | | -platform <target> | -DQT_QMAKE_TARGET_MKSPEC=<mkspec> | | -| -xplatform <target> | -DQT_QMAKE_TARGET_MKSPEC=<mkspec> | Only used for generating qmake-compatibility files. | +| -xplatform <target> | -DQT_QMAKE_TARGET_MKSPEC=<mkspec> | Used for generating qmake-compatibility files. | +| | | If passed 'macx-ios-clang', will configure an iOS build. | | -device <name> | equivalent to -xplatform devices/<name> | | | -device-option <key=value> | -DQT_QMAKE_DEVICE_OPTIONS=key1=value1;key2=value2 | Only used for generation qmake-compatibility files. | | | | The device options are written into mkspecs/qdevice.pri. | | -appstore-compliant | -DFEATURE_appstore_compliant=ON | | +| -qtinlinenamespace | -DQT_INLINE_NAMESPACE=ON | Make the namespace specified by -qtnamespace an inline one. | | -qtnamespace <name> | -DQT_NAMESPACE=<name> | | -| -qtlibinfix <infix> | | | -| -testcocoon | | | -| -gcov | | | +| -qtlibinfix <infix> | -DQT_LIBINFIX=<infix> | | +| -coverage <tool> | -DINPUT_coverage=<tool> | Enables code coverage using the specified tool. | +| -gcov | -DINPUT_coverage=gcov | Enables code coverage using the gcov tool. | | -trace [backend] | -DINPUT_trace=yes or -DINPUT_trace=<backend> | | | | or -DFEATURE_<backend> | | -| -sanitize <arg> | -DFEATURE_sanitize_<arg> | | -| -coverage <arg> | | | -| -c++std c++2a | -DFEATURE_cxx2a=ON | | +| -sanitize address -sanitize undefined | -DFEATURE_sanitize_address=ON | Directly setting -DECM_ENABLE_SANITIZERS=foo is not supported | +| | -DFEATURE_sanitize_undefined=ON | | +| -c++std c++20 | -DFEATURE_cxx20=ON | | | -sse2/-sse3/-ssse3/-sse4.1 | -DFEATURE_sse4=ON | | | -mips_dsp/-mips_dspr2 | -DFEATURE_mips_dsp=ON | | | -qreal <type> | -DQT_COORD_TYPE=<type> | | | -R <string> | -DQT_EXTRA_RPATHS=path1;path2 | | | -rpath | negative CMAKE_SKIP_BUILD_RPATH | | | | negative CMAKE_SKIP_INSTALL_RPATH | | -| -reduce-exports | | | +| | negative CMAKE_MACOSX_RPATH | | +| -reduce-exports | -DFEATURE_reduce_exports=ON | | | -reduce-relocations | -DFEATURE_reduce_relocations=ON | | | -plugin-manifests | | | | -static-runtime | -DFEATURE_static_runtime=ON | | | -pch | -DBUILD_WITH_PCH=ON | | | -ltcg | -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON or | | | | -DCMAKE_INTERPROCEDURAL_OPTIMIZATION_<CONFIG>=ON | | -| -linker [bfd,gold,lld] | -DINPUT_linker=<name> or | | +| -linker [bfd,gold,lld,mold] | -DINPUT_linker=<name> or | | | | -DFEATURE_use_<name>_linker=ON | | | -incredibuild-xge | n/a | This option enables remote distribution of Visual Studio | | | | custom build steps for moc, uic, and rcc. | | | | This lacks support in CMake. | | -ccache | -DQT_USE_CCACHE=ON | | -| -make-tool <tool> | n/a | | -| -mp | n/a | | -| -warnings-are-errors | -DWARNINGS_ARE_ERRORS=ON or | | -| | -DFEATURE_warnings_are_errors=ON | | -| -silent | n/a | | -| -sysroot <dir> | -DCMAKE_SYSROOT=<dir> | Should be provided by a toolchain file that's | -| | | passed via -DCMAKE_TOOLCHAIN_FILE=<filename> | -| -no-gcc-sysroot | n/a | The corresponding CMake variables are CMAKE_SYSROOT_LINK | -| | | and CMAKE_SYSROOT_COMPILE. | -| | | They are usually set in a toolchain file. | +| -unity-build | -DQT_UNITY_BUILD=ON | | +| -unity-build-batch-size <int> | -DQT_UNITY_BUILD_BATCH_SIZE=<int> | | +| -warnings-are-errors | -DWARNINGS_ARE_ERRORS=ON | | | -no-pkg-config | -DFEATURE_pkg_config=OFF | | +| -vcpkg | -DQT_USE_VCPKG=ON | | | -D <string> | -DQT_EXTRA_DEFINES=<string1>;<string2> | | | -I <string> | -DQT_EXTRA_INCLUDEPATHS=<string1>;<string2> | | | -L <string> | -DQT_EXTRA_LIBDIRS=<string1>;<string2> | | | -F <string> | -DQT_EXTRA_FRAMEWORKPATHS=<string1>;<string2> | | -| -sdk <sdk> | | | -| -android-sdk path | | | -| -android-ndk path | | | -| -android-ndk-platform | | | -| -android-ndk-host | | | -| -android-abis | | | -| -android-style-assets | | | +| -sdk <sdk> | -DQT_APPLE_SDK=<value> | Should be provided a value like 'iphoneos' or 'iphonesimulator' | +| | | If no value is provided, a simulator_and_device build is | +| | | assumed. | +| -android-sdk <path> | -DANDROID_SDK_ROOT=<path> | | +| -android-ndk <path> | -DCMAKE_TOOLCHAIN_FILE=<toolchain file in NDK> | | +| -android-ndk-platform android-23 | -DANDROID_PLATFORM=android-23 | | +| -android-abis <abi_1>,...,<abi_n> | -DANDROID_ABI=<abi_1> | only one ABI can be specified | +| -android-style-assets | -DFEATURE_android_style_assets=ON | | | -android-javac-source | -DQT_ANDROID_JAVAC_SOURCE=7 | Set the javac build source version. | | -android-javac-target | -DQT_ANDROID_JAVAC_TARGET=7 | Set the javac build target version. | -| -skip <repo> | -DBUILD_<repo>=OFF | | -| -make <part> | -DBUILD_TESTING=ON | A way to turn on tools explicitly is missing. | -| | -DBUILD_EXAMPLES=ON | | -| -nomake <part> | -DBUILD_TESTING=OFF | A way to turn off tools explicitly is missing. | -| | -DBUILD_EXAMPLES=OFF | | -| -no-gui | | | +| -skip <repo>,...,<repo_n> | -DBUILD_<repo>=OFF | | +| -skip-tests <repo>,...,<repo_n> | -DQT_BUILD_TESTS_PROJECT_<repo>=OFF | | +| -skip-examples <repo>,...,<repo_n> | -DQT_BUILD_EXAMPLES_PROJECT_<repo>=OFF | | +| -submodules <repo>,...,<repo_n> | -DQT_BUILD_SUBMODULES=<repo>;...;<repo> | | +| -make <part> | -DQT_BUILD_TESTS=ON | A way to turn on tools explicitly is missing. If tests/examples | +| | -DQT_BUILD_EXAMPLES=ON | are enabled, you can disable their building as part of the | +| | | 'all' target by also passing -DQT_BUILD_TESTS_BY_DEFAULT=OFF or | +| | | -DQT_BUILD_EXAMPLES_BY_DEFAULT=OFF. Note that if you entirely | +| | | disable tests/examples at configure time (by using | +| | | -DQT_BUILD_TESTS=OFF or -DQT_BUILD_EXAMPLES=OFF) you can't then | +| | | build them separately, after configuration. | +| -nomake <part> | -DQT_BUILD_TESTS=OFF | A way to turn off tools explicitly is missing. | +| | -DQT_BUILD_EXAMPLES=OFF | | +| -install-examples-sources | -DQT_INSTALL_EXAMPLES_SOURCES=ON | | +| -no-gui | -DFEATURE_gui=OFF | | | -no-widgets | -DFEATURE_widgets=OFF | | | -no-dbus | -DFEATURE_dbus=OFF | | | -dbus [linked/runtime] | -DINPUT_dbus=[linked/runtime] | | @@ -113,7 +118,6 @@ The effort of this is tracked in QTBUG-85373 and QTBUG-85349. | -doubleconversion | -DFEATURE_doubleconversion=ON | | | | -DFEATURE_system_doubleconversion=ON/OFF | | | -glib | -DFEATURE_glib=ON | | -| -eventfd | -DFEATURE_eventfd=ON | | | -inotify | -DFEATURE_inotify=ON | | | -icu | -DFEATURE_icu=ON | | | -pcre | -DFEATURE_pcre2=ON | | @@ -137,10 +141,10 @@ The effort of this is tracked in QTBUG-85373 and QTBUG-85349. | | -DFEATURE_system_harfbuzz=ON/OFF | | | -gtk | -DFEATURE_gtk3=ON | | | -lgmon | n/a | QNX-specific | -| -no-opengl | | | -| -opengl <api> | | | -| -opengles3 | | | -| -egl | | | +| -no-opengl | -DINPUT_opengl=no | | +| -opengl <api> | -DINPUT_opengl=<api> | | +| -opengles3 | -DFEATURE_opengles3=ON | | +| -egl | -DFEATURE_egl=ON | | | -qpa <name> | -DQT_QPA_DEFAULT_PLATFORM=<name> | | | -xcb-xlib | -DFEATURE_xcb_xlib=ON | | | -direct2d | -DFEATURE_direct2d=ON | | @@ -160,7 +164,10 @@ The effort of this is tracked in QTBUG-85373 and QTBUG-85349. | -xkbcommon | -DFEATURE_xkbcommon=ON | | | -gif | -DFEATURE_gif=ON | | | -ico | -DFEATURE_ico=ON | | -| -libpng | -DFEATURE_libpng=ON | | -| -libjpeg | -DFEATURE_libjpeg=ON | | +| -libpng | -DFEATURE_png=ON | | +| -libjpeg | -DFEATURE_jpeg=ON | | | -sql-<driver> | -DFEATURE_sql_<driver>=ON | | | -sqlite [qt/system] | -DFEATURE_system_sqlite=OFF/ON | | +| -disable-deprecated-up-to <hex_version> | -DQT_DISABLE_DEPRECATED_UP_TO=<hex_version> | | +| -mimetype-database-compression <type> | -DINPUT_mimetype_database_compression=<type> | Sets the compression type for mime type database. Supported | +| | | types: gzip, zstd, none. | |