Commit Graph

50 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
Nils Petter Skålerud
13db7987b8 Stop compiling FFmpeg Android arm64 on old macOS x86 hosts
Android FFmpeg provisioning requires 'readelf', which is provided by
binutils package. This package is shown to be flaky on older macOS x86
hosts. It is not critical that we compile that we compile Android
FFmpeg on these hosts, so this patch removes them.

Pick-to: 6.10 6.8
Change-Id: I6722f2c543b022a998573cc76ffc671378a4fcb5
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 033329cb00)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2026-02-12 18:19:07 +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
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
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
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
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
Bartlomiej Moskal
b5e6c9e59b Coin: Dynamically linked FFmpeg for Android (on macOS host)
Prepare for turning on dynamically linked FFmpeg on macOS:
  - install binutils (for readelf) on macOS;
  - readelf need to be used with absolute path on macOS. Prepare
    workaround solution for this system in
    fix_ffmpeg_dependencies.sh script;
  - install patchelf on macOS;
  - ensuring compatibility of sed call on Linux and macOS;

Pick-to: 6.8
Task-number: QTBUG-122010
Change-Id: I810566786de4363b4383f29467c6ca4395f9f668
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2024-06-17 13:44:26 +02: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
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
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
Lucie Gérard
eecfb19548 Use SPDX license identifiers
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
License files are organized under LICENSES directory.

Pick-to: 6.5 6.6
Task-number: QTBUG-67283
Task-number: QTBUG-108364
Change-Id: If26e4d35c780db4a7982bb84872b251dad24716e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2023-06-12 12:10:41 +00:00
Tony Sarajärvi
58ddf7133c Correct the domain of ci-files01-hki
It's hasn't been .intra.qt.io for quite some time, it
has worked through an alias we have on the DNS server.

Change-Id: I0bc17668dacfea64c276bb553e75e4be16e97659
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2023-06-12 12:10:26 +00:00
Samuel Mira
99afe7199e Fix FFmpeg provisioning for Android in arm64, x86 and x86_64
Added install-ffmpeg-android script for the android cross-compile
Removed android stuff from install-ffmpeg
Changed the yaml variables to include the target arch
Added the arm64 target arch

Task-number: QTQAINFRA-5476
Pick-to: 6.5
Change-Id: Id9609ed0427f2fc42f7f27e7787a81ad145f59be
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
2023-04-26 22:44:30 +00:00
Heikki Halmet
e266a9e604 Provisioning: Add Docker for macOS
Needed by RTA tests

Pick-to: 6.5 6.4
Task-number: QTQAINFRA-5171
Change-Id: I26ac10421ba32d68ffdef523fd97f710cd6bcaab
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2023-01-12 12:28:47 +00:00
Heikki Halmet
eb0dd02a4a Provisioning: Upgrade Xcode version to 14.2 for macOS 12 & 13
Change also upgrades command line tools

Pick-to: 6.4 6.2 5.15
Change-Id: I6cdceba07dcecf5b0be394dc147c16e084800763
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-12-20 08:35:15 +00:00
Konrad Kujawa
63d72293b7 Add provisioning for gRPC
Add provisioning scripts to install gRPC.
gRPC is requirement to build QtGrpc

Task-number: QTBUG-105492
Change-Id: I1a6d008a1d2c1616000909aacdb721401f706168
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2022-12-07 07:57:21 +01:00
Heikki Halmet
20c8f11006 Provisioning: Update Xcode version to 14.1
Command line tools are also updated

Pick-to: 6.4
Change-Id: Ic1d0882d395e014a4f33ed139c90800b3ba71cbf
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-11-09 06:08:20 +00:00
Ville-Pekka Karhu
eee152ca70 Provisioning: Update to Xcode 14 on macOS 12 Intel
Change-Id: I95e0c590b74f14aec4fd16a104e429a64c442414
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-10-11 14:16:29 +00:00
Edward Welbourne
74fc1bcaec Remove stray first line from provisioning script
Having a blank line before the shbang makes the shbang not work.

Pick-to: 6.4
Change-Id: I523c4eab8746da2b898eacf3f54f73d63dbd2786
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2022-09-28 18:38:03 +02:00
Heikki Halmet
8a72b1de99 Support multiple Android NDK versions
We need to verify latest Android NDK version in all
Qt6 branches and we need to retain the NDK version we
had when the specific branch was released at the first time.

Verification of the latest NDK will be done during integrations
in 'dev' branch and with older brances it will be done using
nightly build targets

Task-number: QTQAINFRA-4990
Change-Id: I2a96e419d403820f55f4244230c28ad09dc9095b
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2022-09-20 10:30:05 +03:00
Alexey Edelev
134c07923c Rename protobuf provisioning scripts
Use correct protobuf project name for provisioning scripts.
This also should trigger provisioning for all the involved platforms.

Change-Id: I4cfa74c1d41f497db528ee3ae152db1d51de821a
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2022-09-08 10:27:57 +02:00
Assam Boudjelthia
8cc7a5f450 Coin: Add Android OpenSSL scripts to macOS 12 provisioning target
Fixes: QTBUG-105594
Pick-to: 6.4 6.3 6.3.2
Change-Id: I4980f27e216c627c1675d04ed1bb5f5b9d62f2c0
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2022-08-29 04:35:51 +00:00
Piotr Srebrny
51c663d171 Build static FFmpeg library on macOS
This patch modifies linux/ffmpeg-install.sh to work also for macOS.
The FFmpeg libraries are installed under /usr/local both for Linux
and macOS.

Since macOS x64 does not have the lzma lib for arm64 architecture
installed by default, I disable this libraries for FFmpeg. This
only affects the TIFF image decoder that we do not use.

Added the execute permission to the ubuntu scripts.

Change-Id: Ib8623c6a9bcdd24c89045ede0494839fb9cd2ecc
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-07-28 09:56:16 +02:00
Heikki Halmet
e5b819e26d Disable Software Updates for macOS
Pick-to: 6.3 6.2 5.15
Change-Id: Id80d66cfebaa17311d7bfd927f3ce33ba0b81661
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2022-05-03 08:33:22 +03:00
Heikki Halmet
789c276431 Update NDK to r23b
This also fixes Android OpenSSL installation

NDK update will be added only to dev and 6.3 branches

Task-number: QTQAINFRA-4837
Change-Id: I1233217e71f345d30f3dec83d7477d3c6e3b6c2d
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2022-04-12 11:45:04 +00:00
Kai Köhne
becb423e80 Replace LGPL2.1 only header with LGPL3 one
This is in line with e.g. qtbase. Also remove outdated/unreferenced
license files.

Pick-to: 6.3
Change-Id: I5d3370ab453610f9c8165ff9e57db7ad4a785370
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-12-19 19:47:15 +00:00
Ville-Pekka Karhu
fe35c4dbb0 macOS: Upgrade Xcode to 13.2
Task-number: QTQAINFRA-4607
Pick-to: 6.2
Pick-to: 6.3
Pick-to: 5.15
Change-Id: Ice52c8f4199e124d92b994cab38151dd712986bf
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2021-12-19 14:39:54 +02:00
Ville-Pekka Karhu
20c580e5db macOS provisioning: Disable bluetooth
Pick-to: 6.2
Pick-to: 6.3
Change-Id: Ia981b4ab37a6ca15a566feb2fdc176253b419193
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2021-12-19 14:39:48 +02:00
Alexandru Croitor
6e7de2b76c Coin:Android: set ANDROID_SDK_ROOT explicitly in macOS 12 config
... and remove ANDROID_{SDK,NDK}_HOME as they are
deprecated and might not work even.

Amends 7e2882d0a7

Augments d59825d250

Pick-to: 6.2 6.3
Task-number: QTBUG-97002
Change-Id: I96fb543521d70784d75e524d8b48ac72c42e6815
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2021-12-13 12:38:55 +01:00
Ville-Pekka Karhu
dbb4cd06aa Provisioning: Enable keyboard navigation between controls on macOS
Task-number: QTQAINFRA-4660
Pick-to: 6.2
Change-Id: I12f2995c797e573d5072145c100ee64e98e133ce
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2021-12-11 19:31:16 +00:00
Heikki Halmet
249603dc4f Provisioning: bump Android platform sdk and build tools version to 31
Use latest platform and build tools with macOS 12

Pick-to: 6.2
Change-Id: If3021f8f727c1775ad14b16897c7e9db3ea08ad1
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2021-11-17 18:19:39 +02:00
Tor Arne Vestbø
5de9c0fee3 Build iODBC library as universal binary on macOS 11+
As per instructions here:

  https://github.com/openlink/iODBC/blob/develop/README_MACOSX.md

Task-number: QTBUG-93204
Pick-to: 6.2 6.2.2
Change-Id: Ica8d0f8c8d1d497bf0172a5762ae2d419b0ffc95
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2021-11-17 17:19:39 +01:00
Tor Arne Vestbø
5733455993 coin: Align PostgreSQL provisioning between macOS 11 and macOS 12
Pick-to: 6.2
Change-Id: I48770c6c6a33375f621b228fc61b23a2c97f787c
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-11-17 11:13:48 +01:00
Ville-Pekka Karhu
7e2882d0a7 Provisioning: Add macOS Monterey (12) x86 to CI
This will also upgrade Xcode to version 13.1

Task-number: QTQAINFRA-4508
Pick-to: 6.2
Change-Id: Idce56d429b4cd8c7eea3b75e8d91d2f281c0c871
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-11-16 14:52:03 +02:00