Commit Graph

34 Commits

Author SHA1 Message Date
Tero Heikkinen
4a184bed88 Unix: Bash scripts needs to be executable
Pick-to: 6.10 6.8 6.5
Task-number: QTQAINFRA-7709
Change-Id: Ia8802cc2c5e7fb8ed63e261f70fb343cd55a1dfa
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
(cherry picked from commit 0ab91c0886)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2026-02-23 05:30:25 +00:00
Nils Petter Skålerud
1d998afee6 Move install-ffmpeg-ios.sh into macos folder
Currently this script is stored under unix, but it's only ever going to
be used on macos. This patch moves the script.

No functional changes.

There was a minor conflict resolution in this patch due to macOS 26 not
being present in this branch.

Pick-to: 6.10 6.8
Change-Id: Iba3d101d360e90ffaa3478689bb002b4e5f65bc1
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit ebe3124831)
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2026-02-17 21:04:29 +00:00
Johanna Äijälä
622385a2ba Provisioning: cleanup, remove Squish installations
RTA is using different means to install Squish for RTA tests, no need
to do it in general provisioning.

Change-Id: I4858a282ad7a0b1412f6dd0f4876109fe54a4c88
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
(cherry picked from commit 4bff151490)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
2026-01-02 11:56:35 +00: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
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
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
Nils Petter Skålerud
b3aee1c583 Coin, macOS: Call script 'set_tcc_permissions.sh' on macOS x86 targets
Qt Multimedia needs correct permissions set in order to run automated
tests. This is currently being done on our macOS ARM targets, but not
x86 targets.

This patch runs the scripts on relevant x86 targets.

Pick-to: 6.10 6.9 6.8
Task-number: QTBUG-137582
Change-Id: Ia13b8f190938b44b8a14fc8c796912910a8d6d88
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2025-06-16 18:02:02 +02:00
Nils Petter Skålerud
0706273c76 Coin, FFmpeg: Fool-proof fix_ffmpeg_dependencies.sh
This script has previously failed under some configurations, while
also failing to stop provisioning.

This patch enables fast-fail behavior, catches potential issues with
missing executables early with a descriptive error message. This
should allow us to detect if the required packages are missing
in the future, and stop provisioning accordingly.

This patch also installs the necessary packages on the relevant
CI build targets.

Task-number: QTBUG-136930
Pick-to: 6.10 6.9 6.8
Change-Id: I7c781264ad67508d19fd44556a9caf0f201638d4
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-06-12 08:20:59 +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
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
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
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
Marcus Tillmanns
337206334e Coin: Add golang & upx to Linux/macOS/Windows
Qt Creator will soon start to rely on go for tools and upx for binary compression.

Right now we can't install upx on macOS which we can live with.
Leaving the script in for later re-enabling once brew has been fixed.

Pick-to: 6.7 6.8
Change-Id: I4fdc67e469153e8a0530efd58ff251629dcabdfa
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2024-09-12 19:56:28 +00:00
Bartlomiej Moskal
64aee78df8 coin: Downgrade patchelf version on CI
Downgrade patchelf version from 0.18.0 to 0.17.2 on MacOs, Linux and
Windows.

It looks like there is a problem with 0.18.0 version, when modyfing the
Android libs. It causes an unresolved dependencies error when loading a
changed library.

Fixes: QTBUG-126861
Pick-to: 6.8
Change-Id: I5a95daae0a78aadede009535b2813483afcbc99d
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
2024-07-29 19:07:18 +02:00
Ville-Pekka Karhu
6440fe6f51 Provisioning: Upgrade Xcode to version 15.3 for macOS 14 ARM and Intel
Task-number: QTQAINFRA-6211
Change-Id: I26995366ca954d6b619f5dfe70f7abb5da7a2b31
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-03-22 12:20:34 +02:00
Tony Sarajärvi
c392699a9c Fix ci-files01-hki.intra.qt.io -> ci.qt.io in provision scripts
Change-Id: I4d0a129c170583d79dd6a0c8c38aa3db95e08c31
Reviewed-by: Casimir Saastamoinen <casimir.saastamoinen@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2024-02-18 19:57:36 +00:00
Amir Masoud Abdol
d7b66b044f Provisioning: Install pkg-config on macOS
Vcpkg needs pkg-config on macOS.

Task-number: QTBUG-115715
Change-Id: Ie7ab7394d7b3073d346e05a215c8289f1ab04364
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-12-18 06:32:06 +01:00
Amir Masoud Abdol
d591095e7c Provisioning: Install jq
jq is used during the provisioning of vcpkg ports to extract the version
string of packages from vcpkg.json file.

Task-number: QTBUG-115715
Change-Id: I73d95b8d8399b25a9aa58855b9d65cac968618fc
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2023-12-18 06:32:00 +01:00
Amir Masoud Abdol
1fd6fb3565 Provisioning: Mount Vcpkg Cache Drive on macOS
Change-Id: I3038467c98a7c2a5f3b05d7b370d9ec0ea95156d
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2023-11-05 10:05:59 +01:00
Fredrik Ålund
3d354bf9c0 Add universal binary for Mimer SQL on macOS
Do not use the Mimer SQL installer on macOS since it is not universal.
Instead, use an archive with the needed library and include files.
Use a universal binary on all macOS version from 11 and up.

Fixes: QTBUG-111219
Pick-to: 6.6
Change-Id: I4a3716b1207ee966f36e977fe5f9d1016fb9efcb
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2023-10-13 09:55:21 +02:00
Artem Dyomin
aea9fc281c Install vlc binaries on ubuntu and macos for QtMM streaming tests
Cross-platform VLC provides a cmd-line interface for creating media
streams, we use it in QtMultimedia integration tests.
In the future, vlc might be replaced with something more light-weight,
but for now let's just start running the streaming tests at least on
these platform.

Pick-to: 6.5 6.6
Change-Id: I887a98a1ee8f4a9f0a08d16124303bd10fa5a6ba
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
2023-10-11 13:16:19 +00:00
Fredrik Ålund
1927326833 Install Mimer SQL on macOS
Mimer SQL is needed to build the QtSql Mimer SQL plugin.

Fixes: QTBUG-111219
Change-Id: I678c095068fd096f8632f9cdbb00b1bdf96bbe45
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-10-07 06:44:51 +00:00
Ville-Pekka Karhu
117c1b30cd Provisioning: Update macOS 14 Xcode version to 15 official release
Change-Id: Ia50d9363ba81c1a8cb9cd334a1b380a22518913e
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2023-09-28 16:46:36 +03:00
Tony Sarajärvi
620666bce4 Fix shellcheck complaints about provisioning scripts
Also adds executable attributes to shell scripts that were missing it.

Change-Id: Id52ef495147fdbfb5cb1a1f711fac530e0e85f3b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2023-09-13 06:44:02 +00:00
Lucie Gérard
6757a4c399 Add license directory and update remaining license format in coin
Pick-to: 6.5 6.6
Task-number: QTBUG-108364
Change-Id: I1250a46d60d5b4e85258b93f8f6f6fc4631b3a70
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2023-09-02 13:58:24 +02:00
Lucie Gérard
ae21de72f3 Add license header to provisioning scripts missing one
Task-number: QTBUG-108364
Pick-to: 6.5 6.6
Change-Id: I5b1d53aad917ed38f9e26e1fcc1b97b921c0603a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2023-08-31 16:25:43 +02:00
Casimir Saastamoinen
949594ef83 Give qt user access to zsh history and transfer .viminfo under qt user
Task-number: COIN-723
Change-Id: I093ba09ffc3b7500ace71b4752f17015859989c7
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2023-08-29 09:58:57 +03:00
Aku Pietikäinen
2de9e59be6 Provisioning: macOS 14 x86_64 support
Change-Id: I369beb7a790fbb94bf2c1e9a823734434ea3b3da
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2023-08-16 16:06:23 +03:00