macOS: Split building and testing stages

We now build with the latest Xcode available, and then run the tests
on all the supported deployment target (10.14, 10.15, 11).

At this point we have the following build/test coverage:

  - Packaging build, all modules tested on:
    - 10.14 (significant)
    - 10.15 (insignificant)
    - 11.x (insignificant)

  - Developer build, qtbase/declarative tested on:
    - 10.14 (significant)
    - 10.15 (insignificant)
    - 11.x (insignificant)

Change-Id: I309bbf5ace7b22b768203f579e29f7a9e2b589b9
Reviewed-by: Toni Saario <toni.saario@qt.io>
This commit is contained in:
Toni Saario
2021-01-12 18:09:36 +02:00
committed by Tor Arne Vestbø
parent b22c2c5757
commit b57b2358cb
5 changed files with 77 additions and 70 deletions

View File

@@ -3,7 +3,8 @@ Include: [
cmake_platforms_qemu.yaml,
cmake_platforms_target_android_host_linux.yaml,
cmake_platforms_target_android_host_macos.yaml,
cmake_platforms_target_android_host_windows.yaml
cmake_platforms_target_android_host_windows.yaml,
macos.yaml
]
Configurations:
-
@@ -58,54 +59,6 @@ Configurations:
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DBUILD_SHARED_LIBS=OFF -DFEATURE_sql_mysql=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
Environment variables: ['NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache']
-
Id: 'macos-10.14-host'
Template: 'qtci-macos-10.14-x86_64'
Compiler: 'Clang'
Features: ['Packaging', 'Sccache']
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_headersclean=ON -DFEATURE_framework=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DODBC_ROOT=/usr/local/opt/libiodbc -DPostgreSQL_ROOT={{.Env.POSTGRESQLBINPATH}}/..'
Environment variables: [
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
]
-
Template: 'qtci-macos-10.14-x86_64'
Compiler: 'Clang'
Features: ['DisableTests', 'Sccache']
Configure arguments: '-DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_framework=OFF -DQT_NAMESPACE=TestNamespace -DQT_BUILD_EXAMPLES=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
Environment variables: [
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
]
-
Id: 'macos-10.15-host'
Template: 'qtci-macos-10.15-x86_64-100'
Compiler: 'Clang'
Features: ['Packaging', 'Sccache', 'InsignificantTests']
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_headersclean=ON -DFEATURE_framework=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DODBC_ROOT=/usr/local/opt/libiodbc -DPostgreSQL_ROOT={{.Env.POSTGRESQLBINPATH}}/..'
Environment variables: [
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
]
-
Template: 'qtci-macos-10.15-x86_64-100'
Compiler: 'Clang'
Features: ['Sccache', 'InsignificantTests']
Configure arguments: '-DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_WITH_PCH=OFF -DFEATURE_framework=OFF -DQT_NAMESPACE=TestNamespace -DQT_BUILD_EXAMPLES=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
Environment variables: [
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
]
-
Id: 'macos-11.0-host'
Template: 'qtci-macos-11.0-x86_64-100'
Compiler: 'Clang'
Features: ['Packaging', 'Sccache', 'InsignificantTests']
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_headersclean=ON -DFEATURE_framework=ON -DCMAKE_OSX_SYSROOT:PATH=/Applications/Xcode12.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DODBC_ROOT=/usr/local/opt/libiodbc -DPostgreSQL_ROOT={{.Env.POSTGRESQLBINPATH}}/..'
Environment variables: [
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
]
-
Template: 'qtci-windows-10-x86_64-52'
Compiler: 'MSVC2019'

View File

@@ -0,0 +1,20 @@
Version: 2
Configurations:
-
Id: 'macos-10.14-x86_64-developer-build-tests'
Template: 'qtci-macos-10.14-x86_64'
Compiler: 'Clang'
Features: ['Sccache', 'TestOnly']
Platform dependency: 'macos-latest-xcode-x86_64-developer-build'
-
Id: 'macos-10.15-x86_64-developer-build-tests'
Template: 'qtci-macos-10.15-x86_64-100'
Compiler: 'Clang'
Features: ['Sccache', 'TestOnly', 'InsignificantTests']
Platform dependency: 'macos-latest-xcode-x86_64-developer-build'
-
Id: 'macos-11-x86_64-developer-build-tests'
Template: 'qtci-macos-11.0-x86_64-100'
Compiler: 'Clang'
Features: ['Sccache', 'TestOnly', 'InsignificantTests']
Platform dependency: 'macos-latest-xcode-x86_64-developer-build'

View File

@@ -0,0 +1,46 @@
Version: 2
Configurations:
# Build with latest Xcode
-
Id: 'macos-latest-xcode-x86_64-packaging-build'
Template: 'qtci-macos-11.0-x86_64-100'
Compiler: 'Clang'
Features: ['Packaging', 'Sccache', 'DoNotRunTests']
Configure arguments: '-DQT_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_headersclean=ON -DFEATURE_framework=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DODBC_ROOT=/usr/local/opt/libiodbc -DPostgreSQL_ROOT={{.Env.POSTGRESQLBINPATH}}/..'
Environment variables: [
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
]
# Then run tests on all supported deployment targets
-
Id: 'macos-10.14-x86_64-tests'
Template: 'qtci-macos-10.14-x86_64'
Compiler: 'Clang'
Features: ['Sccache', 'TestOnly']
Platform dependency: 'macos-latest-xcode-x86_64-packaging-build'
-
Id: 'macos-10.15-x86_64-tests'
Template: 'qtci-macos-10.15-x86_64-100'
Compiler: 'Clang'
Features: ['Sccache', 'TestOnly', 'InsignificantTests']
Platform dependency: 'macos-latest-xcode-x86_64-packaging-build'
-
Id: 'macos-11-x86_64-tests'
Template: 'qtci-macos-11.0-x86_64-100'
Compiler: 'Clang'
Features: ['Sccache', 'TestOnly', 'InsignificantTests']
Platform dependency: 'macos-latest-xcode-x86_64-packaging-build'
# Build developer builds for all modules, but only run tests for qtbase and declarative.
# See macos-developer-build-tests.yaml for the tests
-
Id: 'macos-latest-xcode-x86_64-developer-build'
Template: 'qtci-macos-11.0-x86_64-100'
Compiler: 'Clang'
Features: ['Sccache', 'DoNotRunTests']
Configure arguments: '-DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_WITH_PCH=OFF -DFEATURE_framework=OFF -DQT_NAMESPACE=TestNamespace -DQT_BUILD_EXAMPLES=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
Environment variables: [
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
]

View File

@@ -1,15 +1,9 @@
Version: 2
Include: [cmake_platforms.yaml]
Include: [
cmake_platforms.yaml,
macos-developer-build-tests.yaml
]
Configurations:
-
Template: 'qtci-macos-10.14-x86_64'
Compiler: 'Clang'
Features: ['Sccache']
Configure arguments: '-DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_WITH_PCH=OFF -DFEATURE_framework=OFF -DQT_NAMESPACE=TestNamespace -DQT_BUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
Environment variables: [
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
]
-
Template: 'qtci-linux-CentOS-8.1-x86_64-50'
Target os: 'Android_ANY'

View File

@@ -1,12 +1,6 @@
Version: 2
Include: [cmake_platforms.yaml]
Configurations:
-
Template: 'qtci-macos-10.14-x86_64'
Compiler: 'Clang'
Features: ['Sccache']
Configure arguments: '-DFEATURE_developer_build=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_WITH_PCH=OFF -DFEATURE_framework=OFF -DQT_NAMESPACE=TestNamespace -DQT_BUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
Environment variables: [
'NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache',
'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
]
Include: [
cmake_platforms.yaml,
macos-developer-build-tests.yaml
]
Configurations: []