Commit Graph

31 Commits

Author SHA1 Message Date
Nils Petter Skålerud
189740e5e1 macOS ARM, Python: Combine Python provisioning into common script
The Python provisioning on macOS ARM hosts is done multiple times
across separate targets.

This patch moves the code into a common script 'macos/python-arm.sh'.
As a drive-by, we bump the version of all targets to 3.12.11, whch is
the same as the one used in the macOS 15 ARM host.

Pick-to: 6.10 6.8
Change-Id: I8c1f6f7d635fe47b9faa34dbe6988e89252dc2c9
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit f0b54a51f7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2025-12-19 14:04:53 +00:00
Nils Petter Skålerud
7b36e50c64 Provisioning: Use local mirror for pyenv on macOS ARM hosts
On macOS hosts we are using external mirrors for installing with pyenv.
We should instead pull the necessary files from our local mirror.

Pick-to: 6.10 6.8
Change-Id: I6ba67dfd7cd37809164c7e2c4bcf89d07d45b1b2
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit bb77943c0f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2025-12-19 14:04:53 +00:00
Tero Heikkinen
cdf01ee62c sbom: New SBOM_PYTHON_INTERP_PATH env to use correct python3 for SBOM
To all linux, macOS and Windows platforms.

Task-number: QTQAINFRA-7554
Change-Id: I677440fb9faf3f3d36744b59f91f0036449b639b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-11-22 21:41:06 +02:00
Tatiana Borisova
0ac4df3e52 Add maven provisioning for qtopenapi build
Change-Id: I4439cb8d8f1327e474d272819557e8e64ef17c83
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-10-24 09:14:33 +00:00
Tatiana Borisova
493a11caee Update Golang provisioning
- replace the linux/install-golang.sh to the unix/install-golang.sh
  for macos and linux provisioning configurations.

NOTE:
The Golang version is updated from 1.22.4 to 1.25.2.

Task-number: QTBUG-140130
Change-Id: Ic5e7a93bcad4d82210bcd5c7f4144153c938a603
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-10-16 09:04:27 +00:00
Tor Arne Vestbø
ed82b7ec6f Remove QNX provisioning from macOS Apple Silicon
The toolchain is x86_64 only, which trips up xcodebuild if Rosetta2
is not installed: https://github.com/swiftlang/swift-build/issues/836

We don't have any CI configurations that build QNX on macOS, so we
don't need to install it.

Pick-to: 6.10 6.8 6.5
Change-Id: I8714438c6373e613f28f67b48d2f4f78a723bc9d
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
2025-10-04 07:47:15 +02:00
Matti Paaso
986d4b8760 Provisioning: Fix pyenv installation
Task-number: QTQAINFRA-7439
Pick-to: 6.10 6.8 6.5
Change-Id: I02202d1b53ab5442e04b6e5c0d7ff3119686f117
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-10-02 22:02:10 +03:00
Dominik Holland
cd85327e85 Provisioning: Downgrade python 3.13. to 3.12 for macOS packaging config
Nuitka doesn't support Python 3.13 yet.

Pick-to: 6.10
Change-Id: I577237b50e16053346d6adbb137a63a0ba41257b
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-09-25 21:35:55 +02:00
Simo Fält
10a687324c Provisioning: Install openjdk@21 for QtBridges
Pick-to: 6.10
Change-Id: Ibad51807cf188016e761e76bc62c1fd80aabfbc7
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-09-24 06:23:01 +00:00
Rami Potinkara
875297edfc Android: FFmpeg to support 16KB page sizes
This patch adds needed linker flags for FFmpeg Android
compilation to get FFmpeg binary to be compliant for
16KB page size. 16KB page size is compliant with 4KB
page size.

This patch updates Android OpenSSL to be version 3.0.7,
which is build with two NDK's: NDK27c and NDK29-beta2.
Both with 16KB page size support. They are build with https://github.com/KDAB/android_openssl/pull/69
just changing OpenSSL version from 3.1.1 to 3.0.7 and
NDK version from 25.2.9519653 to 27.2.12479018 (27c) and
another build with 29.0.13599879 (beta2). The both build
artefacts are added to CI-files to be usable.

As the 16KB page size is applicable only to 64-bit ABI's
this patch adds the variable to 90-install-ffmpeg.sh files
for android-x86_64 and android-arm64.

Change is picked to all branches using Android 15 or newer
as Android 15 introduced the 16KB page size support.

Fixes: QTBUG-139762
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I50bab81b97dad3e9d8c1e834c1928949d1e19687
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-09-23 15:05:59 +00:00
Tatiana Borisova
3e8edbc4ca Add openapi-generator-cli.jar for playground/qtopenapi provisioning
Related to 33dd0de8fb51bb83230b8c2524d5aae28ffc799b

Task-number: QTBUG-138144
Change-Id: I2aa4a67f8c14de6645f5e821d269474646e616f3
Reviewed-by: Toni Saario <toni.saario@qt.io>
2025-09-21 16:06:17 +02:00
Matti Paaso
66fd8fb132 Provisioning: Fix macos nodejs installation
Brew install started to fail on older macos arm versions. Getting
rid of all brew install to avoid future problems with it.

Task-number: QTAINFRA-7408
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I22eddfad1f49b0814841a5d554100fdffd329593
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-09-18 12:12:44 +03:00
Rami Potinkara
1ce81f80e4 Android 16: Introduce NDK r29-beta2 as preview NDK
This patch introduces preview NDK. Environment variables related to
preview NDK's are marked with _PREVIEW. The patch introduces NDK
29.0.13599879-beta2 as first _PREVIEW NDK. This preview NDK will be
first used in insignificant platforms Android 16.

Task-number: QTQAINFRA-7290
Fixes: QTQAINFRA-7291
Change-Id: Id093b8f71970f77409bd805d6d1d153f47ade762
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
2025-09-15 20:59:39 +03:00
Simo Fält
e8106d5615 Provisioning: Update python 3.9 to 3.13 for macOS packaging config
After swapping the packaging node from x86_64 to arm64 the
default python got downgraded from 3.11 to 3.9.

Pick-to: 6.10
Change-Id: Iea65e3c3d959c22e1a12d2a4f12ba466de4dbf24
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-09-12 07:20:18 +03:00
Toni Saario
b8995e0ebc Delete macOS GCA keys and dhcp lease after provisioning
This ensures that link-local IPv6 address is unique per
each VM.

Task-number: QTQAINFRA-7383
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I53434ec3a158cec09f03c96087a401ef05f47b86
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2025-09-09 05:01:58 +00:00
Aku Pietikäinen
1126034d5b Use common p7zip install script and remove unnecessary brew update
Change-Id: Id704953bf2eb9a2cfb11dbdb47451aed7bbc736b
Task-number: QTQAINFRA-7381
Pick-to: 6.10 6.9 6.8 6.5
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-09-09 05:01:55 +00:00
Axel Spoerl
f379f4552f Unix provisioning: Don't hardcode dynamic libclang version in file names
coin/provisioning/common/unix/libclang-v100-dyn.sh had the libclang
version 10.0 hard coded in the filename.
All local provisioning scripts calling the latter also had the same
version hard coded in their respective filenames.
At the same time coin/provisioning/common/unix/libclang-v100-dyn.sh
sets the version to be downloaded in a local variable.

When the download version is bumped, there is a mismatch between file
names and actually installed version.

Remove version from common installer and related local scripts.

Task-number: QTQAINFRA-7353
Change-Id: I7489489056e611d6ab84862dafbe48e4e2532780
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-08-22 12:33:57 +02:00
Alexey Edelev
c259d85b8e Relax jq dependency from provisioning
We may read the installed package information from the 'vcpkg list'
command instead of parsing the vcpkg.json. Also instead of using
the jq as a parser, use the cmake script. This allows skipping the
jq installation.

Change-Id: Id3ace62f8f40ff1bd059878da3fd13e466861830
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-05-15 06:19:40 +02:00
Cristian Le
5628f067e4 Add an overall requirements.txt file
This allows to more easily expand python packages

Change-Id: I86dd14cb2f38989ee1b4efdac1089f573f1d6307
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-05-07 17:41:30 +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
Rami Potinkara
a242bb2e3e Provisioning: Update Android NDK to LTS version r27c
This patch updates Android NDK from LTS r26b to LTS r27c.
The version is 27.2.12479018

Task-number: QTQAINFRA-6479
Task-number: QTQAINFRA-6655
Pick-to: 6.9.0 6.9 6.8.3 6.8 6.5
Change-Id: Ic791cfd5d5dd2a439f96590b6f6f8ca0ac4fb5ae
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
2025-03-13 10:09:08 +00:00
Aku Pietikäinen
f23cd54e7f Homebrew flakiness improvements
Use prebuilt package stored in intranet when possible and use
intranet mirror when git is required.

Task-number: QTQAINFRA-6903
Pick-to: 6.9 6.8 6.5 5.15
Change-Id: I1630098756c2e9b4f551686679e98a40af5eef2d
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-02-25 21:36:41 +02:00
Rami Potinkara
9e5bb886b0 Provisioning: bump Android sdkBuildToolsVersion to 35
This patch bumps the sdkBuildToolsVersion used in Coin to 35.

Task-number: QTBUG-129461
Task-number: QTBUG-130283
Pick-to: 6.9 6.8 6.5
Change-Id: I2e1fbdfd23cb854ec50625ff29331adc61abc32c
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-02-25 21:36:35 +02:00
Konsta Alajärvi
b0d999c087 Provisioning: bump Android sdkApiLevel to 35
This patch bumps the sdkApiLevel used in Coin to 35.

Task-number: QTBUG-129461
Task-number: QTBUG-130283
Pick-to: 6.9 6.8 6.5
Change-Id: Ia26248982a2807b2d3554d1a7a7394efcf13f834
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-02-25 21:36:17 +02:00
Artem Dyomin
39ad0317d1 Decouple install-ffmpeg on linux and macos specific files
The FFmpeg building flow has become too different on linux and macos.
Decoupling the logic makes it more simple to follow.

The CR also fixes nits and shellcheck warnings in install-ffmpeg.

Pick-to: 6.8 6.9
Change-Id: I28639d28c7210809e52ff18ce612da52f8754285
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
2025-01-17 07:15:13 +01:00
Tor Arne Vestbø
a8b2d9bcdc Enable crash reporting via Swift on macOS 15
Swift 5.9 includes built in crash reporting, printing stack traces,
libraries, and registers to stdout/err.

https://www.swift.org/blog/swift-5.9-backtraces/

As (Core)Foundation is written in Swift nowadays, we get this feature
for free even in our "C++" apps, as we always link to CoreFoundation.

Our test binaries have been taught how to hook into this, so the
remaining step is to enable it via the SWIFT_BACKTRACE env var.

Pick-to: 6.9
Change-Id: I72dbd9ea934ecc3091766456509f4bd42b2bdab8
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-01-14 06:24:18 +01:00
Ville-Pekka Karhu
1f6f97a141 Provisioning: Add Simulator Runtime installation to macOS
Task-number: QTQAINFRA-6774
Pick-to: 6.9 6.8
Change-Id: I2461911d20ba2fda7b2c53d38b0e688139501e22
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2024-12-10 14:30:40 +00:00
Jøger Hansegård
2728b7ac6f Add provisioning of FFmpeg for Android and iOS with qtci-macos
This patch adds FFmpeg provisioning for Android and iOS for
qtci-macos-12..15-arm..x86-64 by syncing with qtci-macos-13-x86_64
where this was already done.

Pick-to: 6.8
Change-Id: I070514cbff12504db7c6fa77111e12d7e500ce30
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-10-30 08:17:28 +02:00
Aku Pietikäinen
cfd06e54fd Enable vnc remote management on macOS
Task-number: QTQAINFRA-6668
Pick-to: 6.8 6.5
Change-Id: I5af8e460059cdcaad22f637e1c92d9a46950f775
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-10-19 11:33:33 +03:00
Ville-Pekka Karhu
ecaa03df21 Provisioning: Update Xcode to official 16 for macOS 15
Task-number: QTQAINFRA-6578
Change-Id: Ie642355d482211c7b29f788fce44082abe904f7d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-09-18 12:43:47 +03:00
Tor Arne Vestbø
3cf0048d2c Test macOS 15 in CI
Change-Id: Ic8dcca193fdbbada26b95d92c365daaa2bd9c6b1
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-08-10 19:05:13 +02:00