diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2020-07-13 14:00:41 +0200 |
---|---|---|
committer | Alexandru Croitor <alexandru.croitor@qt.io> | 2020-07-13 15:57:01 +0200 |
commit | b2014f2eff5302562d62f7f41cbdb982479d0683 (patch) | |
tree | 9b87a0eb7d5c52072560867849d77fda9d80d35f | |
parent | 35b431cb9e46bcab29240c555e652f4f9cab0895 (diff) |
CMake: Add non-qtbase configure argument placeholders
The qtbase Coin instructions will start reading the values of the
environment variables NON_QTBASE_CONFIGURE_ARGS and
NON_QTBASE_TARGET_CONFIGURE_ARGS.
These are used to pass configure args to repositories other
than qtbase to allow disabling certain features per-repo.
Unfortunately we have to explicitly set the env var values to empty
strings so that the instructions work correctly, otherwise Coin
replaces them with a '<no value>' token, which breaks the
CMake configuration phase.
For some reason the issue only happens on the Windows MSVC
configuration, but we set them for the other configurations as well
to avoid any future breakages.
Task-nunber: QTBUG-84886
Change-Id: I4b095f71c6e484a0e67a53eb6ea9d5ca4f2a6a0c
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
-rw-r--r-- | coin/platform_configs/cmake_platforms.yaml | 11 | ||||
-rw-r--r-- | coin/platform_configs/qtbase.yaml | 2 |
2 files changed, 9 insertions, 4 deletions
diff --git a/coin/platform_configs/cmake_platforms.yaml b/coin/platform_configs/cmake_platforms.yaml index 54cdcc1a..0a975232 100644 --- a/coin/platform_configs/cmake_platforms.yaml +++ b/coin/platform_configs/cmake_platforms.yaml @@ -4,25 +4,30 @@ Configurations: Template: 'qtci-linux-Ubuntu-18.04-x86_64' Compiler: 'GCC' Configure arguments: '-DBUILD_EXAMPLES=ON -DFEATURE_developer_build=ON -DQT_NAMESPACE=TestNamespace -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}' + Environment variables: ['NON_QTBASE_CONFIGURE_ARGS='] - Template: 'qtci-linux-openSUSE-15.1-x86_64' Compiler: 'GCC' Configure arguments: '-DBUILD_EXAMPLES=OFF -DBUILD_SHARED_LIBS=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}' + Environment variables: ['NON_QTBASE_CONFIGURE_ARGS='] - Template: 'qtci-macos-10.14-x86_64' Compiler: 'Clang' Features: ['Packaging'] Configure arguments: '-DBUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_framework=ON -DCMAKE_OSX_SYSROOT:PATH=/Applications/Xcode11.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.14 -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl' + Environment variables: ['NON_QTBASE_CONFIGURE_ARGS='] - Template: 'qtci-windows-10-x86_64-17' Compiler: 'MSVC2019' Features: ['Packaging'] Configure arguments: '-G"Ninja Multi-Config" -DCMAKE_CONFIGURATION_TYPES="RelWithDebInfo;Debug" -DBUILD_EXAMPLES=OFF -DBUILD_WITH_PCH=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DFEATURE_system_zlib=OFF' + Environment variables: ['NON_QTBASE_CONFIGURE_ARGS='] - Template: 'qtci-linux-RHEL-7.6-x86_64' Compiler: 'GCC' Features: ['Packaging'] Configure arguments: '-DBUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}} -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_system_jpeg=OFF -DFEATURE_system_png=OFF -DFEATURE_system_pcre2=OFF -DFEATURE_system_harfbuzz=OFF -DFEATURE_system_doubleconversion=OFF -DFEATURE_libudev=OFF' + Environment variables: ['NON_QTBASE_CONFIGURE_ARGS='] - Template: 'qtci-linux-RHEL-7.6-x86_64' Target os: 'Android_ANY' @@ -31,7 +36,7 @@ Configurations: Target compiler: 'Clang' Features: ['Packaging'] Configure arguments: '-DBUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}} -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_system_jpeg=OFF -DFEATURE_system_png=OFF -DFEATURE_system_pcre2=OFF -DFEATURE_system_harfbuzz=OFF -DFEATURE_system_doubleconversion=OFF -DFEATURE_libudev=OFF' - Environment variables: ['TARGET_CONFIGURE_ARGS=-DBUILD_EXAMPLES=OFF -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=arm64-v8a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}}'] + Environment variables: ['TARGET_CONFIGURE_ARGS=-DBUILD_EXAMPLES=OFF -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=arm64-v8a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}}', 'NON_QTBASE_CONFIGURE_ARGS=', 'NON_QTBASE_TARGET_CONFIGURE_ARGS='] - Template: 'qtci-macos-10.14-x86_64' Target os: 'IOS_ANY' @@ -40,9 +45,9 @@ Configurations: Target compiler: 'Clang' Features: ['Packaging'] Configure arguments: '-DBUILD_EXAMPLES=OFF -DCMAKE_OSX_SYSROOT:PATH=/Applications/Xcode11.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.14 -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl' - Environment variables: ['TARGET_CONFIGURE_ARGS=-DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=OFF -DCMAKE_SYSTEM_NAME=iOS -DQT_FORCE_SIMULATOR_AND_DEVICE=ON'] + Environment variables: ['TARGET_CONFIGURE_ARGS=-DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=OFF -DCMAKE_SYSTEM_NAME=iOS -DQT_FORCE_SIMULATOR_AND_DEVICE=ON', 'NON_QTBASE_CONFIGURE_ARGS=', 'NON_QTBASE_TARGET_CONFIGURE_ARGS='] - Template: 'qtci-windows-10-x86_64-17' Compiler: 'Mingw' Configure arguments: '-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DBUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\.. -DFEATURE_system_zlib=OFF -DFEATURE_system_tiff=OFF -DFEATURE_system_freetype=OFF -DFEATURE_system_jpeg=OFF' - Environment variables: ['Path={{.Env.MINGW810}}\bin;{{.Env.Path}}'] + Environment variables: ['Path={{.Env.MINGW810}}\bin;{{.Env.Path}}', 'NON_QTBASE_CONFIGURE_ARGS='] diff --git a/coin/platform_configs/qtbase.yaml b/coin/platform_configs/qtbase.yaml index c5458add..0e768404 100644 --- a/coin/platform_configs/qtbase.yaml +++ b/coin/platform_configs/qtbase.yaml @@ -6,7 +6,7 @@ Configurations: Target os: 'QEMU' Target arch: 'armv7' Compiler: 'GCC' - Environment variables: ['TARGET_CONFIGURE_ARGS=-DBUILD_EXAMPLES=OFF -DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DQT_BUILD_TOOLS_WHEN_CROSSCOMPILING=ON -DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}/../x86_64-pokysdk-linux/usr/share/cmake/OEToolchainConfig.cmake -DQT_FEATURE_system_harfbuzz=OFF', 'QT_YOCTO_ENVSETUP={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}/../../environment-setup-armv7at2hf-neon-poky-linux-gnueabi', "QT_CMAKE_DIR=/opt/cmake-3.17.2/bin", 'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}', 'GST_PLUGIN_SCANNER=/opt/yocto-armv7/sysroots/armv7at2hf-neon-poky-linux-gnueabi/usr/libexec/gstreamer-1.0/gst-plugin-scanner', 'QT_QUICK_BACKEND=software'] + Environment variables: ['TARGET_CONFIGURE_ARGS=-DBUILD_EXAMPLES=OFF -DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DQT_BUILD_TOOLS_WHEN_CROSSCOMPILING=ON -DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}/../x86_64-pokysdk-linux/usr/share/cmake/OEToolchainConfig.cmake -DQT_FEATURE_system_harfbuzz=OFF', 'QT_YOCTO_ENVSETUP={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}/../../environment-setup-armv7at2hf-neon-poky-linux-gnueabi', "QT_CMAKE_DIR=/opt/cmake-3.17.2/bin", 'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}', 'GST_PLUGIN_SCANNER=/opt/yocto-armv7/sysroots/armv7at2hf-neon-poky-linux-gnueabi/usr/libexec/gstreamer-1.0/gst-plugin-scanner', 'QT_QUICK_BACKEND=software', 'NON_QTBASE_CONFIGURE_ARGS=', 'NON_QTBASE_TARGET_CONFIGURE_ARGS='] Configure arguments: '-DBUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}} -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_system_jpeg=OFF -DFEATURE_system_png=OFF -DFEATURE_system_pcre2=OFF -DFEATURE_system_harfbuzz=OFF -DFEATURE_system_doubleconversion=OFF -DFEATURE_libudev=OFF' - Template: 'qtci-linux-openSUSE-15.1-x86_64' |