Commit Graph

172 Commits

Author SHA1 Message Date
Aku Pietikäinen
19b819ebf3 Update homebrew to version 4.6.8 and git to latest installer
Change-Id: I2c13ce86b3aceae47afab7e1af1489c2d355aad2
Pick-to: 6.9 6.8 6.5
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit ae2ae67c61)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2025-09-09 06:19:37 +00:00
Aku Pietikäinen
014d327331 Use correct PATH for homebrew based on architecture
Task-number: QTQAINFRA-6903
Change-Id: I1b5f529e8e94a7e609b5be1704ed83f6380f4cc5
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
(cherry picked from commit f73de1b6a8)
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-08-29 10:47:22 +00:00
Tor Arne Vestbø
ff0c5876af coin: Force detach Docker volume unmount
Change-Id: I6c19b374adf3d4cd75a3307474e973af96613378
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit e8f8c9e845)
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2025-08-29 10:47:18 +00:00
Aku Pietikäinen
d37592b726 Change libiodbc brew to use local tap
Installing directly from rb file no longer supported by
homebrew without HOMEBREW_DEVELOPER set after https://github.com/Homebrew/brew/pull/20414
was merged.

Create local tap for install to avoid need for homebrew developer mode.

Task-number: QTQAINFRA-7344
Change-Id: Id59af01875b16d1757b1dba36c2ba04bf973c212
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit a9b7487138)
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-08-29 10:47:15 +00:00
Aku Pietikäinen
8d22b36de0 Update homebrew after installation
Get rid of incompatibility errors between homebrew client and server.

Tark-number: QTQAINFRA-6903
Pick-to: 6.9 6.8 6.5
Change-Id: If42b721084f770763a378b93b3386733ab48828f
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
(cherry picked from commit 1dffbe8157)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2025-07-14 06:16:17 +00:00
Nils Petter Skålerud
298d280d64 Coin, FFmpeg, macOS: Add output parameter to 'install-ffmpeg-macos.sh'
This patch adds an optional parameter to the provisioning script
'install-ffmpeg-macos.sh', allowing us to override the output directory
for which the finalized library is installed.

This is particularly useful for local builds, where we often need
multiple different versions of FFmpeg installed, for different Qt
versions.

This patch has no impact for existing coin workflows.

Pick-to: 6.9 6.8
Change-Id: If31922e931db19ab189850b975ce0131a64321b4
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 708548742b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2025-06-25 19:47:55 +00:00
Elias Toivola
03f8208be9 Android: set macOS nightly targets for older NDK versions
This change makes macOS provisioning also install older NDKs for
Android (if set), which will be used in nightly targets.

Task-number: QTQAINFRA-7069
Change-Id: Ie176c5ea69a1398afa69691ad6f37b7af2f66dfc
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit bf04a7a94d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2025-06-24 10:36:51 +00:00
Rami Potinkara
09ea302a62 Provisioning: Remove OpenSSL 1
This patch removes OpenSSL 1 related sections.

Task-number: QTQAINFRA-7069
Change-Id: If565fb2223b17497553a77fda47fe9dfbdccb32a
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 16d8060467)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2025-06-24 10:36:48 +00:00
Nils Petter Skålerud
03d15483a1 Coin, FFmpeg, macOS: Apply 'prefix' consistently
In the provisioning script 'install-ffmpeg-macos.sh', we have a variable
'prefix' controlling where to install the finalized library. The value
of this prefix is sometimes hardcoded into some of the temporary build
directories, making the script break if we actually modify the 'prefix'
variable. This means we currently cannot easily change the output directory.

This patch modifies 'install-ffmpeg-macos.sh' so that the 'prefix' is
applied consistently throughout the script, allowing us to change
the output directory in the future.

Pick-to: 6.9 6.8
Change-Id: Id0b1bb23513b7bccf02f0c4073e4177f651792dd
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-05-18 11:12:05 +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
Aku Pietikäinen
cf026224dd Add missing escape when adding Homebrew to PATH
Task-number: QTQAINFRA-6903
Pick-to: 6.9 6.8 6.5 5.15
Change-Id: I2f97621d3413df17f9b969113e863974bd739cac
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2025-03-31 07:21:36 +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
Simo Fält
fda391a753 Provisioning: Allow retry when disabling spotlight indexing
Task-number: QTQAINFRA-5996
Change-Id: I05ef6d33d74448ee830d137b137c6ee73f6e0518
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2025-02-25 19:36:29 +00: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
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ø
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
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
Matti Paaso
5128df0130 Update Java version into 17
Jenkins needs version 17 to get agent running in VM

Task-number: QTQAINFRA-6263
Pick-to: 6.2 6.5 6.8
Change-Id: I57daadad6baa2e7e538874769af3fbe0cdd42878
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2024-11-09 16:46:30 +02:00
Tor Arne Vestbø
b3758bde8d coin: Fix or silence shellcheck warnings in TCC permissions script
Change-Id: I4905e062532518b02ad4c4187057028484fc8e1d
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2024-10-27 10:14:19 +02:00
Alexandru Croitor
400776459b CMake: Update provisioned CMake to version 3.30.5
Pick-to: 6.8
Fixes: QTQAINFRA-6484
Change-Id: Iacccb9f43059c78080e338da6680f5c50284c057
Reviewed-by: Simo Fält <simo.falt@qt.io>
2024-10-27 10:13:54 +02:00
Alexandru Croitor
6f991b55a3 coin: Explicitly specify SBOM_PYTHON_APPS_PATH for all platforms
Instead of relying on the qtbase coin instructions to compute the
SBOM_PYTHON_APPS_PATH path based on the platform, which does not work
reliably, especially when multiple python installations are present,
explicitly specify the path in the provisioning scripts.

Amends 1f2fb6312c

Pick-to: 6.8
Task-number: QTBUG-122899
Task-number: QTBUG-124453
Task-number: QTBUG-125211
Change-Id: I097fd1c4119a203d82f88c477dbf0fc0f67f19f2
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2024-10-25 16:13:04 +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
Matti Paaso
73cc61c389 Update java in macOS x64
Android requires java 17 in Qt 6.8 and RTA needs java 17 into VMs
to compile Qt examples.

Task-number: QTQAINFRA-6492
Pick-to: 6.8
Change-Id: I873c188154c2eae2a9eebddb94279c41ca822576
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2024-09-24 07:35:38 +03:00
Fredrik Ålund
90308d841e Update Mimer SQL macOS binaries
The Mimer SQL macOS binaries had a problem fixed in version
11.0.8E. Update provisioning script with new version. Since Mimer SQL
on macOS is now universal binary only, remove the arm64 and x86_64
versions.

Fixes: QTQAINFRA-6559
Pick-to: 6.8
Change-Id: I7e202ffc945167db79430846571cd7e1bb5158f6
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-09-09 18:31:33 +02:00
Tor Arne Vestbø
3a5f7bb8d8 coin: Add kTCCServiceScreenCapture permission to ssh/bootstrap-agent
The screen capture permission might be useful for Qt Multimedia, and
also allows us to do screen capturing of the state of the VM in case
of test failures.

For macOS 15 we need to work around the monthly nagging that an
app has permission to capture the screen, otherwise this popup
may interfere with test runs.

Pick-to: 6.8
Change-Id: I0398488c78b19a85ba527b780b264e0b915b6024
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2024-08-26 22:53:57 +02:00
Tor Arne Vestbø
5368f47fe0 coin: Extend TCC permissions to SSH server and bundled boostrap agent
We are experimenting with various ways of running and packaging the
bootstrap agent. To support this, let's add the required permissions
to both a standalone bootstrap-agent executable, as well as an app
bundled version of it, if found.

In addition, add the permissions to sshd-keygen-wrapper, which is
the responsible process for the SSH server, and any ssh login
sessions spawned by that. This serves two purposes. Firstly, this
matches the permissions between a coin run (by the bootstrap agent)
and what a developer will see when SSH'ing into the CI machine to
debug an issue. Secondly, we might use ssh as an entrypoint to
run the bootstrap-agent, in which case we need the permissions
on sshd-keygen-wrapper anyways, so that they are inherited by
the bootstrap-agent.

Pick-to: 6.8
Change-Id: I576349e93ca19d98384490c99102966e8ffe2833
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2024-08-26 21:26:13 +02:00
Tor Arne Vestbø
3ad98d0b27 coin: Give coin agent permission to access Bluetooth
The Qt Connectivity tests rely on this.

Pick-to: 6.8
Change-Id: I7218485e583ebe2c8d381a0104012a86350e6eac
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
2024-07-08 16:48:33 +02:00
Eike Ziller
c872c35cc6 COIN: Fix sccache installation on ARM Macs
Install the ARM sccache binary to fix

/usr/local/sccache/sccache: Bad CPU type in executable

Pick-to: 6.8 6.7
Change-Id: I033a7c8cf88d0d1ad35a4406a5d2a878da8d17a7
Reviewed-by: Toni Saario <toni.saario@qt.io>
2024-06-25 04:21:33 +00:00
Alexandru Croitor
1f2fb6312c coin: Add python packages to allow validating Qt generated SBOM files
Add a sbom_requirements.txt file and install it using the
various platform specific pip installations.

Partially restores b87b44168c but
without the wheel cache.

Pick-to: 6.8
Task-number: QTBUG-122899
Change-Id: I8002898866acbc226ffebb59dcf5b3a58237ea34
Reviewed-by: Toni Saario <toni.saario@qt.io>
2024-06-20 06:56:17 +02:00
Simo Fält
f9bb6b202a Provisioning: Add retry for disabling Spotlight indexing
Task-number: QTQAINFRA-5996
Pick-to: 6.8
Change-Id: I6c85816f7b490fbb2423cbf7d0efe862056bc001
Reviewed-by: Toni Saario <toni.saario@qt.io>
2024-06-18 19:24:44 +03:00
Simo Fält
65ab75dbe9 Provisioning: Update Python to 3.11.9 on macOS x86_64
This is required to create Qt for Python wheels for Android.

Pick-to: 6.8
Change-Id: Ifc4bab4ef90c81096d8d1c7026b6dead894439d2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-06-07 06:26:16 +00:00
Tony Sarajärvi
f074859391 Fix shellcheck problems
Change-Id: I277fd923f62aa5888d7e18c89471909732da30e5
Reviewed-by: Liang Qi <liang.qi@qt.io>
2024-04-28 06:06:50 +00:00
Tor Arne Vestbø
0a8f1050f9 Fix shellcheck warnings in set_tcc_permissions.sh
Pick-to: 6.7
Change-Id: I6b4de6e02e92d4c85fbb58cb1573a0ab3a178b24
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2024-04-03 13:57:31 +02: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
Tor Arne Vestbø
b4de4de742 coin: Give bootstrap-agent permission to use microphone on macOS
The bootstrap-agent is the 'responsible process' in TCC terms when
it comes to whether a test should be allowed to access the microphone.

 https://www.qt.io/blog/the-curious-case-of-the-responsible-process

By giving this process the permission explicitly, by modifying the
TCC database, we ensure that all tests run as child processes also
get this permission.

Change-Id: Ia03084ac89f0717ac6457b0035769f4a9863495b
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2024-03-11 09:17:21 +00: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
Artem Dyomin
231d089553 Retain symlinks upon making universal macOS binaries
Saving symlinks is important when we build dynamic libs,
it will be needed for building QtMM + dynamic ffmpeg.

Task-number: QTBUG-120989
Pick-to: 6.7 6.6 6.5
Change-Id: I58c040a81f1fa6a3b316ace864fda0687415fd0a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-02-12 16:17:10 +00:00
Simo Fält
adf2deefeb COIN: Move arm Mac brew and pyenv install script under common directory
Pick-to: 6.7
Change-Id: I83c6b017d81bc98431f0d0421167890466e5b855
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2024-02-02 07:23:25 +00:00
Artem Dyomin
f87f27dc62 Revert "Retain symlinks upon making universal macos binaries"
This reverts commit a3c489b272.

Reason for revert: Mistakenly replaced 'set -e' => 'set -x' just hides the problem on macOS 11 and 12. The patch needs to be investigated again

Pick-to: 6.7
Change-Id: I238395fd2ae1fc362a0c9af02e2d48acce22e0dc
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2023-12-28 19:10:31 +00:00
Artem Dyomin
a3c489b272 Retain symlinks upon making universal macos binaries
Saving symlinks is important when we build dynamic libs,
it will be needed for building QtMM + dynamic ffmpeg.

Pick-to: 6.7 6.6 6.5
Change-Id: Ic356a9c3df727a1afe14e8553728952d3b106ba3
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2023-12-24 16:48:27 +00:00
Elias Toivola
782e1700cf Update Android NDK to version r26b
Revision 26.1.10909125. Also prebuilt OpenSSL 3.0.7 with it.

Task-number: QTQAINFRA-5771
Pick-to: 6.7
Change-Id: I0dbe1f2d38f277bcb805f5b7ac1f30e25aabd1f8
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
2023-12-22 02:46:33 +00:00
Alexandru Croitor
bae2268c47 CMake: Update provisioned CMake to version 3.27.7
We want access to the debugger, and also to be in sync with the CMake
shipped with the Qt SDK.

Task-number: QTBUG-118138
Change-Id: I4b43b9543e8e6ef23c9608a8e1c623ee16edfbd5
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2023-11-15 09:14:29 +01:00
Casimir Saastamoinen
23116e7331 Configure pip for internal cache
Task-number: QTQAINFRA-5531
Change-Id: I89c5502f62b2777a06b8f301a9fbaca1a3f8859d
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2023-11-05 12:06:07 +03: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
Tony Sarajärvi
070b3bf26e Remove unused variable from mimersql.sh
Change-Id: I1f77dfcac4988c0e377b68b9d6b85cf265869aea
Reviewed-by: Fredrik Ålund <fredrik.alund@mimer.com>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2023-11-05 09:05:43 +00:00
Fredrik Ålund
b073e4c5d8 Mimer SQL: Do not unpack directly to /usr/local and use sudo
Unpacking the Mimer SQL universal binary package fails on macOS 14-arm.
Do not unpack directly to /usr/local and use sudo. Verify that all
directories exist.

Fixes: QTBUG-111219
Pick-to: 6.6
Change-Id: I5f1bf3413103c07a94a47b5421c41b8b1234ca22
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2023-10-20 05:31:03 +00: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