Commit Graph

93 Commits

Author SHA1 Message Date
Ville-Pekka Karhu ca70ac0d16 Provisioning: Update macOS 26 ARM to official release
Update also Xcode to 26 official release

Task-number: QTQAINFRA-7196
Change-Id: I3549f0b5e7a153cb2728a66a7d69ab4378e0acb6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
2025-09-18 17:59:17 +03:00
Ville-Pekka Karhu 1554708638 Update macOS 26 ARM Tier 1 to beta 7
Task-number: QTQAINFRA-7196
Change-Id: I0073e8cd326e6959cd1c9eb39c16d32535dc16f0
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2025-08-25 15:50:49 +03:00
Tor Arne Vestbø 1d76acc7c0 Add DoNotAbortTestingOnFirstFailure to macOS 26 test configs
So that we get complete test results for all failing tests.

Change-Id: I83288f7b8865d494402ada8c8401bce932ac2510
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2025-08-08 16:50:59 +02:00
Tor Arne Vestbø 07724e3935 Add macOS 26 test and developer build configs
Effectively insignificant for now, due to COIN_CTEST_IGNORE_EXIT_CODE.

Change-Id: I78a4e37c833c30d63da69da6b3d18e40a22da621
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2025-08-06 20:25:30 +00:00
Tor Arne Vestbø eb290c48d4 Bump developer build host for macOS to macOS 15
Which gets us Xcode 16, with the macOS 15 SDK.

Pick-to: 6.9
Change-Id: I3c7936885e97e479873c4d012adca0d67765c907
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2025-04-28 12:56:08 +02:00
Tor Arne Vestbø e19ea33f09 Bump build host for macOS to macOS 15
Which gets us Xcode 16, with the macOS 15 SDK.

Pick-to: 6.9
Change-Id: I755c27f64f903b281f5d1c7947fbf370ddc3ee17
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-04-14 11:13:20 +02:00
Tor Arne Vestbø 7853bee060 Make macOS 15 a fully significant config
In practice it already is, because qtbase sets COIN_CTEST_IGNORE_EXIT_CODE
to 0 for macOS 15, and this change has propagated to qt5.git now, but this
makes it official.

macOS 15 is now a significant platform [CI Platforms]

Change-Id: I9dc8b0f56582e08560859a17304e886e7fc3020b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-02-27 21:47:28 +01:00
Tor Arne Vestbø 9de62ca203 Switch macOS packaging build from x86_64 to arm64
Reducing the load on the x86_64 machines.

Change-Id: I3c97fb1734d982b1de289eba7680a81b7dfce31c
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-02-01 02:18:49 +01:00
Tor Arne Vestbø 911c67c521 Align macOS Arm build with Intel build in preparation for packaging switch
Change-Id: I7938f18839d2ac082ac8d49982c4ff192e7d3f30
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2025-01-31 08:18:18 +01:00
Tor Arne Vestbø 7f51bdbd8d macOS: Set PostgreSQL_ROOT during provisioning rather than in each config
Decouples provisioning from build configurations.

Pick-to: 6.9 6.8
Change-Id: I53b0983ab8b20c40568c1b5b9a24bfe3c62cf531
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2025-01-31 08:18:17 +01:00
Tor Arne Vestbø ac2b15075c macOS: Set Protobuf_ROOT during provisioning rather than in each config
Decouples provisioning from build configurations.

Pick-to: 6.9 6.8
Change-Id: Ied2b60b360ef5ec5aab1dd4b2e6a0b81032d2938
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2025-01-31 08:18:13 +01:00
Tor Arne Vestbø 124957a8cb Use correct path for libiodbc and forward via ODBC_ROOT env var
The hard-coded path paths added to LIBRARY_PATH and CPLUS_INCLUDE_PATH
was not correct on Apple Silicon Macs, where homebrew installs into
/opt/homebrew/.

There's also no point in passing on the library location via compiler
environment variables, when we can use ODBC_ROOT. And we don't need
to pass it on as a CMake define, as a environment variable works just
fine. This decouples the provisioning of libiodbc from the build
configurations.

Pick-to: 6.9 6.8
Change-Id: I40aa3c1852fb0baf3366fa1a9dab85a66eef95e2
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-01-31 08:18:12 +01:00
Tor Arne Vestbø a8dd351338 coin: Make macOS 15 test configurations conditionally significant
By removing the InsignificantTests flag and adding the
COIN_CTEST_IGNORE_EXIT_CODE env var we can control the
significance at the module level.

Change-Id: I89171f6dbed8c38aed279aec01e3bad36a157f5e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2025-01-17 00:59:12 +01:00
Tor Arne Vestbø 8c74d54deb coin: Build macOS ARM developer-build in debug mode
To get as close as possible to how developers build and run
tests, and to get debug-build test coverage on macOS in CI.

Pick-to: 6.8
Change-Id: Ice12b7230d56284d352e6a73ac503588b22107bb
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2024-11-12 19:42:43 +00:00
Jani Heikkinen 0149acd42b Add 'QT_FEATURE_open62541_security=OFF' for macOS packaging build
Fixes: QTBUG-125252
Pick-to: 6.8 6.5
Change-Id: Ic6daa4c589dda54294a787261be6884cdbf3dff0
Reviewed-by: Simo Fält <simo.falt@qt.io>
2024-11-01 08:30:51 +02:00
Jukka Jokiniva c5ab2fe4fa Add -force-asserts to developer builds with -release
Fixes: QTQAINFRA-6624
Pick-to: 6.8
Change-Id: Ia8741e4a92774fee3af78c3292fa47677b36158d
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
2024-10-27 11:14:36 +03:00
Jukka Jokiniva 5bd133d752 Remove macOS 12 configuration from CI
Change-Id: Id11a67532cf8373ce0c5ead2d5b4502ffc46b4ab
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-10-25 17:13:33 +03:00
Tor Arne Vestbø aae4bb3c7e Add insignificant test configs for macOS 15 arm64
Change-Id: Ie0ec24faa92179d72910ce0a02e9994f9465415a
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2024-10-22 14:02:06 +02:00
Axel Spoerl 03f00931ec macOS platform configs: Bump image version to 107
qtci-macos-11-x86_64-107 and qtci-macos-12-x86_64-107 have been created
to add VNC accessibility.

Bump the image version used in CI, in order access debug VMs.

Task-number: QTQAINFRA-5815
Task-number: QTQAINFRA-6626
Pick-to: 6.8 6.5
Change-Id: I42c6602f9524b1fbfe47da081a7a15deff001f68
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-10-11 12:04:16 +00:00
Tor Arne Vestbø 23fc6d392a Add insignificant test configs for macOS 15 x86_64
Change-Id: If21e5bb4c0fa85d6c4b46f00ed6ffb6531704976
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2024-10-09 07:02:36 +02:00
Alexandru Croitor d278e682c6 coin: Build standalone examples in a separate build directory
Previously configurations with -make examples in their configure args
were building examples as part of the Qt library build. This has some
downsides:
- we don't build examples as a separate project, thus not ensuring
  that we build examples as our users would
- qt cmake deployment api can't be used due to various limitations in
  our tooling

Use the new qtbase instructions to instead build examples as a
separate project in a separate build directory, after Qt is built and
installed. This is similar to how we build standalone tests.

The new instructions are activated by the StandaloneExamples features.
It is opt-in as opposed to standalone tests, so we can disable the
feature in case any regressions happen.

Task-number: QTBUG-90820
Task-number: QTBUG-96232
Change-Id: I71b37b91ed09bcc0797841adf0df84cc0b111fd7
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-08-11 13:35:35 +00:00
Alexey Edelev b3fda4d0fe Remove -DFEATURE_native_grpc=OFF
The flag was removed from qtgrpc repo and has no effect now. Clean it
up from all platform configs.

Pick-to: 6.8
Change-Id: I59e200c6bcd63e03cc7c7477d502e456af8c9b01
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2024-07-19 21:31:25 +02:00
Alexandru Croitor 562b56c8d7 coin: Mark platforms that should verify the generated SBOM
Pick-to: 6.8
Task-number: QTBUG-122899
Change-Id: Ia4854f3af188e971b555cc1bd7bd6463fbbf7273
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2024-07-10 06:34:36 +02:00
Alexandru Croitor 3017e86d54 coin: Mark platforms that should generate an SBOM
Pick-to: 6.8
Task-number: QTBUG-122899
Change-Id: I3722c048ec4be894a09d3b023d6af95d4dfedc6f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2024-07-10 06:34:34 +02:00
Tor Arne Vestbø c1485ecb2c coin: Replace bare metal macOS ARM configurations with Tart VMs
Pick-to: 6.8
Change-Id: Idf84ead53ea27eedfa571ee5d7a44b7a496229bb
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2024-06-28 00:25:28 +02:00
Tor Arne Vestbø cc741a2c52 coin: Make the macOS Tart test configurations granularly significant
The significance of these configs are now controlled by the logic in
qtbase/coin/instructions/cmake_regular_test_instructions.yaml and the
per-repo override of the TART_SIGNIFICANT_TARGET_OSVERSIONS.

Change-Id: I4310eeb59ade34ed7a305a9aa08f63b23d557c07
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2024-05-31 13:57:22 +02:00
Ville-Pekka Karhu 4a4c5c1615 Platform configs: Add virtualized macOS 12 ARM tests as insignificant
Allows us to first see how macOS 12 tests in Tart on production works
before starting to move the blocking arm targets to Tart. Later configs
will be directly replaced and original ids will be used.

Change-Id: Ia4c64641af2dcdbe145e42f7aed97f5e98ef8fab
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-05-16 17:56:17 +00:00
Ville-Pekka Karhu 9387c715e9 Platform configs: Add virtualized macOS 13 ARM tests as insignificant
Allows us to first see how macOS 13 tests in Tart on production works before starting to
move the blocking arm targets to Tart. Later configs will be
directly replaced and original ids will be used.

Change-Id: I3e77d07f224bbfcb3b4673d83fb4684ad0de4887
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2024-05-15 11:48:31 +00:00
Ville-Pekka Karhu 673c5ae87f Platform Configs: Replace macOS 13 with macOS 14 as build and packaging target
This also switches to building with Xcode 15, as that's the Xcode
currently provisioned on our macOS 14 VMs.

The gRPC provisioning has been disabled for macOS 14 on ARM
due to linking errors for OpenSSL due to a faulty CMake find
scripts or tests.

Change-Id: Ia99720c8f1813bb0baf2062e3488202a4191eaf0
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-05-08 16:36:46 +00:00
Alexey Edelev 63f83fb13d Add the explicit INPUT_headersclean=ON flag for non-qtbase repos
The 'headersclean' flag is not a "feature" anymore, so qtbase doesn't
propagate it for other repositories. CI no need to set either
INPUT_headersclean=ON or add -headersclean flag to the
qt-configure-module script command line.

Task-number: QTBUG-121722
Change-Id: I6970d6a04dd51ad4d3df114212f6410b80ddc6a1
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2024-04-16 06:25:00 +02:00
Ville-Pekka Karhu 9ceb1b5ef5 Platform configs: Replace hardware macOS 14 ARM with virtualized macOS 14 ARM
Task-number: QTQAINFRA-5831
Change-Id: Ibdd2360a55855d04bf02d6047870f48319c2ce9d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-03-19 09:30:09 +00:00
Artem Dyomin a53b63019f Implement dynamical ffmpeg linking on macOS
* fix dependencies and install names (absolute => relative)
* fix compilation build of dylib on xcode 15.
* add matching build instructions to yaml.
* old macos versions don't have 'realpath', workaround is used.

Task-number: QTBUG-120989
Pick-to: 6.7 6.6 6.5
Change-Id: I22e413d8f6d05c8c7d6d09a5926691216e781fd3
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
2024-03-13 11:54:46 +00:00
Ville-Pekka Karhu dffc3dd7df Platform configs: Add virtualized macOS 14 ARM tests as insignificant
Allows us to first see tart on production load before starting to
move the blocking arm targets to tart. Later configs will be
directly replaced and original ids will be used.

Change-Id: I865e6fe46b61828b6123b69973a2a4d209697c5f
Reviewed-by: Toni Saario <toni.saario@qt.io>
2024-02-14 06:11:03 +00:00
Elias Toivola 8e8af54d12 Provisioning: Remove macOS 11 and bump minimum targets to 12
Drop macOS 11 out from dev (6.8) branch as it is EOL or very near it. This removes macOS 11 test configurations and bumps macOS targets to
12 in provision scripts.

Task-number: QTQAINFRA-6009
Change-Id: I2ea2764fb4a14eb508e39330acfc0947b94343fc
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-01-31 05:21:31 +00:00
Simo Fält a00fb312a2 COIN: Remove 'Sccache' feature from arm Mac
There is no sccache binary for arm mac so in case of failure the fail
parser reports failing sccache command as a reason.

Pick-to: 6.7
Change-Id: I3bfd6152d5be2cd00fd19762ed89ae0bc4f7ebcc
Reviewed-by: Toni Saario <toni.saario@qt.io>
2024-01-17 08:33:01 +02:00
Tor Arne Vestbø 760cf59266 Stop testing macOS developer builds on x86_64 hardware
Our x86_64 pool is overloaded, so we need to reduce jobs.

As we're testing our packaging (universal) builds (both the one built
on x86_64 and the one built on arm64) on x86_64 for all macOS platforms
we support, it should be fine to remove the x86_64 tests of the
developer builds. These developer builds are still tested on arm64,
so the only test coverage we're losing on x86_64 are the subset of
tests that depend on QT_BUILD_INTERNAL.

Change-Id: Ia83964cc77d04ba796e3a59389ce000a51dcac93
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-11-15 18:54:50 +01:00
Tor Arne Vestbø 706155cf4b coin: Make macOS 14 configurations significant
They are green on all modules now.

Fixes: QTBUG-115945
Change-Id: I63838b6aa4e033938303bb13d0881f59004275c2
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2023-11-11 17:27:48 +01:00
Tor Arne Vestbø 5de62a4a74 coin: Remove macOS 11 x86_64 developer build and arm64 packaging tests
We're running out of capacity for macOS 11 nodes, so let's reduce the
test coverage, now that macOS 11 is no longer a primary platform.

It's still supported, so we keep one x86_64 and one arm64 config.

Change-Id: I3fc4c3a12967b937ef59fd190074dac30dedd2be
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2023-10-31 01:21:06 +01:00
Tor Arne Vestbø 7cc0a72d44 coin: Add insignificant configurations for macOS 14
Change-Id: Iab3aea900d570a10a1e4100665ea2b4f7b89afbb
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2023-10-28 21:38:26 +00:00
Tor Arne Vestbø 1a5c03a20f coin: Re-order and comment macOS build configs
To clarify what we do (and don't do).

Change-Id: I719f538e7abce279b619a82b80b74bd01d1538d4
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2023-09-20 14:49:59 +02:00
Ville-Pekka Karhu 7863f9974c Replace macOS 12 ARM with macOS 13 ARM as a build target
Change-Id: I3c05bf3d33e3360b453417f48e7c7575abde837b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2023-08-01 12:25:24 +03:00
Marc Mutz 75486e8c60 Revert "Enable Unity Build on Qt Base for macOS -developer-build"
This reverts commit 6f3ff63da5.

Unity builds have not been properly tested. In particular, they have
not been tested with an "infinite" batch-size (e.g. 100,000) to
reasonably ensure that any batch-size will work and any _new_ .cpp
files being added to SOURCES will break unity-build only in a way
that's fixable by changes in _that_ .cpp file.

The CI is not a lab for experiments. A unity-related failure has
brought the branch:dev CI to a screeching halt for a day on
2023-07-20, so we're disabling the use of it on the CI until it has
been properly tested in nightly builds and locally.

Task-number: QTBUG-109394
Change-Id: Ib1605c02bc088942acc7dfe90b3b0e39f46a41e3
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-07-21 11:41:29 +02:00
Alexey Edelev b028d7499f Disable native_grpc feature for "Packaging" platforms
Native gRPC channels rely on the reference gRPC implementation that
doesn't guarantee the ABI compatibility between different versions. We
shouldn't link libQt6GRPC to any 3rdparty libraries that are not
delivered as part of Qt when make packaging builds in CI.

Task-number: QTBUG-115055
Task-number: QTBUG-110107
Pick-to: 6.6 6.5
Change-Id: Ie099b0af833d87308179d3b4eecc47738078010c
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-07-20 17:13:40 +00:00
Marc Mutz d316e8dff4 Revert "Set -unity-build-batch-size to 16"
This reverts commit 7409b0a6f3.

Reason for revert: Breaks qtbase builds.

Change-Id: I225ae701c211a0af30b1a03a8204ce47b6e91000
Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io>
2023-07-20 16:04:56 +00:00
Amir Masoud Abdol 7409b0a6f3 Set -unity-build-batch-size to 16
This changes the -unity-build-batch-size of the platforms that we are
experimenting with from 32 to 16.

Change-Id: Iefc70b482ae86313d2b2d10ff1adb862eb7e2138
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-07-19 20:57:44 +02:00
Konrad Kujawa 8db9f452d0 Add missing CMake arg to macOS developer build on ARM
Add missing OPENSSL_ROOT_DIR to macos-12-arm64-developer-build
CMAKE_ARGS.
OPENSSL_ROOT_DIR is required to run QtGRPC auto tests.
Add missing provisioning script to macOS 13 x86_64.

Fixes: QTBUG-115077
Change-Id: Ia51d6820037e93d5eddb06a2fdedfcfa87ee094e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2023-07-19 08:58:18 +02:00
Amir Masoud Abdol 6f3ff63da5 Enable Unity Build on Qt Base for macOS -developer-build
In order to monitor, and compare the performance of unity build, this
patch enables the unity build on `macos-12-arm64-developer-build`
and `macos-12-arm64-developer-build` platforms.

Change-Id: I4d8f864a821cf4cefcc10015950d0e994c7ba8a4
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2023-07-04 13:56:39 +02:00
Heikki Halmet ac33d86e9a Add macOS 13 x86_64 to CI as build and test target
macOS 12 x86_64 will be replace with macOS 13. Tests will be still run
on macOS 12

Let's keep same Xcode version (14.2) than older macOS (12) has

Task-number: QTBUG-104210
Change-Id: If3e06834156196917001f83ca391a66a6c78e84a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2023-06-20 09:32:57 +00:00
Tor Arne Vestbø 8214de5e0e Remove conan profiles
The conan experiment has ended, and the files are only bitrotting
nowadays.

Pick-to: 6.5 6.6
Change-Id: Iefdc6fa1a48bb4062b15cf035f372a2d44bddda9
Reviewed-by: Toni Saario <toni.saario@qt.io>
2023-06-20 11:32:52 +02:00
Heikki Halmet 76a06d574c Update macOS Tier 1 images to use newer OS versions
macOS 11.7.5
macOS 12.6.4
macOS 13.3

Pick-to: 6.5 6.4 6.2 5.15
Change-Id: Ib3cb27fc8716baa52893a6c52fe3589f5e7daac1
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2023-04-13 05:08:20 +00:00