Commit Graph

274 Commits

Author SHA1 Message Date
Alexey Edelev
4456a7f592 Move linux vcpkg and vcpkg-ports installation files to a common unix directory
These scripts are generic for both linux and macos, we may parameterize
them and reuse on both platforms.

Change-Id: Ia61cfbbf5c91e2135e38253c4a96605015d2d1b6
Reviewed-by: Alexey Edelev <semlanik@gmail.com>
2025-12-20 19:38:10 +01:00
Nils Petter Skålerud
c5a42f267f FFmpeg, Android: Use 'llvm-strip' from Android NDK explicitly
When running 'install-ffmpeg-android.sh' on Ubuntu hosts, it may fail
due to the FFmpeg build process using the host's 'strip' executable.
This causes the build to fail due to the 'strip' throwing an error
due to it not being able to recognize the format of the .so files for
the FFmpeg Android build.

This patch solves this by explicitly using the executable 'llvm-strip'
command from the Android NDK.

Pick-to: 6.11 6.10 6.8
Change-Id: Ia32c31e3e9d1f550a026f2684362e19d663a8863
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-12-16 20:40:06 +01:00
Johanna Äijälä
4bff151490 Provisioning: cleanup, remove Squish installations
RTA is using different means to install Squish for RTA tests, no need
to do it in general provisioning.

Pick-to: 6.11
Change-Id: I4858a282ad7a0b1412f6dd0f4876109fe54a4c88
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-12-16 11:27:57 +02:00
Nils Petter Skålerud
df82dc7de2 FFmpeg, iOS: Store final .xcframework files in 'lib' folder
Currently, the iOS FFmpeg provisioning script will install .xcframework
files into a subfolder 'frameworks'. The .xcframework files fulfill a
similar purpose to ordinary .dylib files and should be placed in a
'lib' subfolder, to make provisioning more similar to how we deploy
FFmpeg for other platforms.

This patch makes us install .xcframework files in a 'lib' subfolder
instead.

Task-number: QTBUG-136480
Pick-to: 6.11 6.10
Change-Id: I91f9938b595ecff5b04d49a71e9872f5d7278cda
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-13 09:04:39 +00:00
Nils Petter Skålerud
fb6a8b0215 Android, Unix: Move android_emulator_launcher.sh to unix folder
This script is currently located in the 'linux' directory. In future
patches, it will be reused by macOS and Linux hosts.

This patch moves it into the 'unix' folder.

Pick-to: 6.11 6.10 6.8
Change-Id: Ib03b999bef0373dc9600d505b1f4ce926fa97de6
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-10 09:12:03 +00:00
Nils Petter Skålerud
bc6ba67934 Unix: Add curl fallback to check_and_set_proxy.sh
This script is stored in the directory 'provisioning/common/unix'. This
implies it can be used from Linux and macOS hosts. The script
uses the wget command, but at the time of writing, wget is not
installed on our macOS hosts. If wget is not found, this command will
assume the HTTP proxy is not found rather than fail the script
execution.

This patch rewrites this script to use curl if wget is not found.
This makes it run correctly on macOS. Additionally, it adds a fail
case if neither wget or curl is found on the system.

Pick-to: 6.11 6.10 6.8
Change-Id: Id54b9fc69307ef28eb35cf1c0042df11e704a6e2
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-10 09:11:54 +00:00
Ivan Solovev
5293a1638e Fix maven provisioning script for Unix
- Rename the sha256 variable to sha1, because that's the actual
  algorithm that was used to calculate the checksum.
- Use the `version` variable when constructing `externalUrl`.

Amends 0ac4df3e52.

Change-Id: I79d38fdf5033dce7d0b04c2d8788767b2325895f
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-12-03 06:22:03 +01:00
Tero Heikkinen
4f405340c5 openSUSE 16.0: Upgrade openSSL from 3.0.7 to 3.5.4 (LTS)
openSSL 3.2.0 or newer required for libcurl in openSUSE 16.0

This solution has possibility to leave default openSSL
version into use for others, and openSUSE 16.0 (or others)
can move to a newer version if needed.

There are currently two tests failing in this update,
but as openSUSE 16.0 is non-blocking in the CI, it
doesn't get blocked.

Tickets created to fix those:
  - QTBUG-141722
  - QTBUG-141723

Task-number: QTQAINFRA-7502
Task-number: QTQAINFRA-7455
Task-number: QTQAINFRA-7452
Change-Id: Ie9995a3afcdb09d091d75651528a94f71f5ece2a
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-11-20 08:34:40 +02:00
Elias Toivola
4dcaf6ec01 Android: move platform dependency from RHEL 8 to RHEL 9
Pick-to: 6.10 6.8 6.5
Task-number: QTQAINFRA-7498
Change-Id: I48a72860fe9d06cde1f014298e68fa28caff730d
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-10-30 13:52:12 +02:00
Nils Petter Skålerud
c3b80178ee FFmpeg, iOS: Automatically grab FFmpeg version in Info.plist manifest
Our iOS FFmpeg provisioning includes build info.plist manifest files
for the FFMpeg framework files. This manifest includes the version of
FFmpeg that we are deploying. This version string is currently
hardcoded and does not match the version we are actually building.

This patch changes the 'install-ffmpeg-ios.sh' script to
programmatically grab the FFmpeg version from our related scripts, and
inserts it in the info.plist manifest.

Pick-to: 6.10
Task-number: QTBUG-136480
Change-Id: Iafeaade2ff6f2a933a0ba48749af459eef37ab51
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-10-28 14:12:58 +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
9381c3673b Update qtopenapi provisioning
- add openSUSE15.6 build configuration for qtopenapi.
- add rhel9.4 build configuration for qtopenapi.
- delete macos15-x86_64 build configuration for qtopenapi,
  because the current qtopenapi code only builds go binaries
  targeting arm64 architecture, and the x86_64 configuration would
  fail trying to run those binaries.

Task-number: QTBUG-140130
Change-Id: Ia4f1b91345d3d7a87916ceee319a6037318fac63
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-10-16 11:04:27 +02: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
Pavel Dubsky
c3809a73ea Update FFmpeg version to n7.1.2
Task-number: QTBUG-140468
Pick-to: 6.10
Change-Id: Ia77053bd4022a9691b4729e748884fd42ee2d1a8
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-10-10 14:27:22 +02: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
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
Axel Spoerl
07134034b7 Bump dynamically linked libclang version to 20.1.3
Libclang dyn >= 14 is needed e.g. for Squish.
As a drive-by, optimize shell script.
Bump version from 10 to 20.1.3.

Task-number: QTQAINFRA-7353
Change-Id: Iba3584c056c8f06b4efe19ac42d030b4a4049d34
Reviewed-by: Andreas Muss <andreas.muss@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Stefan Gehn <stefan.gehn@qt.io>
2025-09-04 21:25:34 +02:00
Elias Toivola
ffc15eb35f Android FFmpeg: Further fix FFmpeg build directories
This fixes "does not exist" errors when trying to build multiple NDKs.

This amends 303b4c13dc

Pick-to: 6.10 6.9 6.8 6.5
Task-number: QTQAINFRA-7069
Change-Id: I29f5cd85ffb3cf12a81b5816a5601ea37446042d
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-08-31 17:38:48 +03:00
Nils Petter Skålerud
61046109cf macOS, FFmpeg: Don't use patchelf 0.18 for Android FFmpeg patching
At the time of writing, homebrew ships patchelf version 0.18.0. This
version of patchelf has a bug specific to Androd binaries. The macOS
14 arm64 host currently uses this version of patchelf. This causes an
issue during runtime linking in Qt Multimedia applications on Android.

This patch modifies the macOS 14 arm64 host to use patchelf v0.17.2
that we compile from source. It also adds warnings to the provisioning
log should someone try to use v0.18.0 in the future.

Fixes: QTBUG-136930
Pick-to: 6.10 6.9 6.8
Change-Id: Id66b560e6a1d4300a54017e9c3366720dc291944
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-08-31 16:38:39 +02: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
4170b81aea FFmpeg, Android: Add support for Android ARMv7 in Unix FFmpeg script
This patch introduces support for building FFmpeg for Android ARMv7
on Unix hosts.

Pick-to: 6.10 6.9 6.8
Change-Id: I21affa1137cb4b3aa3a5b9cfd5c71e755684db9c
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
2025-07-25 07:48:32 +02:00
Elias Toivola
82b1992011 wasm: set cache files for Emscripten 4.0.7
Files were prebuild by cloning emsdk repo in their respective VM
produced by Coin provisioning, and running './emsdk install 4.0.7' and
'./emsdk activate 4.0.7' in macOS 15 and OpenSUSE 15.6. And just
'./emsdk install 4.0.7' in Windows 10.

This amends 5510396f4d9f175e7f61a953ea0722ce57d059d4

Pick-to: 6.10
Task-number: COIN-1232
Change-Id: Ifa768173093c4b6b90599d0fff8b34a1db8b1bbc
Reviewed-by: Lorn Potter <lorn.potter@qt.io>
2025-06-29 19:21:36 +03:00
Elias Toivola
7471b6b6d2 wasm: set EMSDK_PYTHON to Python installed in provisioning
Emscripten 4.0.7 requires Python +3.8, OpenSUSE does have Python 3.11
but its path is only set to PYTHON3_EXECUTABLE envvar defined in
08-pythondev.sh.

OpenSUSE 15.6 comes with Python 3.6.15 which the previous emscripten
3.1.70 used.

Pick-to: 6.10
Change-Id: Ied63ace32b7fb252d124ad447bc56dba353ff403
Reviewed-by: Lorn Potter <lorn.potter@qt.io>
2025-06-29 19:21:28 +03:00
Lorn Potter
7a9387e445 wasm: update to Emscripten 4.0.7
Pick-to: 6.10
Change-Id: I687b2a16df17a626febc3fb87cae21240f6521ed
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
2025-06-29 19:21:25 +03:00
Nils Petter Skålerud
303b4c13dc Coin, FFmpeg, Android: Fix nightly FFmpeg build folder (Unix)
Previous patch 75fea893b1 introduced
a small bug where multiple nightly builds of FFmpeg were being
outputted into the same directory, effectively causing them to
overwrite each other.

This patch gives the nightly builds their own subfolder for outputted
library files.

Pick-to: 6.10
Task-number: QTQAINFRA-7069
Change-Id: I5f7e111708aecedd2817888948b77b8163f0452d
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-06-21 09:31:42 +00:00
Elias Toivola
75fea893b1 Build FFmpeg with each Android NDK version
Multiple Android NDKs are installed in provisoning. FFmpeg build uses
NDK in its build process for Android, so this change makes provisioning
build multiple Android FFmpeg builds, so each Android nightly can use a
FFmpeg build where its corresponding NDK version was used.

Pick-to: 6.10
Task-number: QTQAINFRA-7069
Change-Id: Ie4457c87b7b75e0c711a76bd8170e718cbda445d
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-06-19 14:46:39 +03:00
Rami Potinkara
16d8060467 Provisioning: Remove OpenSSL 1
This patch removes OpenSSL 1 related sections.

Pick-to: 6.10
Task-number: QTQAINFRA-7069
Change-Id: If565fb2223b17497553a77fda47fe9dfbdccb32a
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-06-19 14:46:32 +03:00
Elias Toivola
687b73cde0 Android: set nightly targets for older NDK versions
This change makes provisioning also install older NDKs for Android,
which will be used in nightly targets.

Pick-to: 6.10
Task-number: QTQAINFRA-7069
Change-Id: Ia8695383e94df282822da9019c33f1004a879bf6
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-06-19 14:46:29 +03:00
Nils Petter Skålerud
0583292728 Coin, FFmpeg: Check for valid envvars in install-ffmpeg-android.sh
This script requires that we have setup specific environment variables
ahead of time. If they are missing, we are prone to receiving
non-descriptive error messages.

This patch adds checks for the required environment variables, and
gives useful error messages if they are not set correctly.

Pick-to: 6.10 6.9 6.8
Change-Id: I0cfb99187f303b22dbdd46a7a848b85dbf571aad
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-06-07 10:00:50 +02:00
Nils Petter Skålerud
0e5937c8a4 Coin, FFmpeg, iOS: Add output parameter to 'install-ffmpeg-ios.sh'
This patch adds an optional parameter to the provisioning script
'install-ffmpeg-ios.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.10 6.9 6.8
Change-Id: Ib0764eb29b84ae8badcfb48424f86316f3b2b650
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-06-05 18:20:32 +00:00
Nils Petter Skålerud
d72ace1a0d Coin, FFmpeg, iOS: Apply 'prefix' consistently
In the provisioning script 'install-ffmpeg-ios.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-ios.sh' so that the 'prefix' is
applied consistently throughout the script, allowing us to change
the output directory in the future.

Pick-to: 6.10 6.9 6.8
Change-Id: I3458984aa22f8c82ed4d0bfac8ac8e71356e8789
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-06-05 18:20:26 +00:00
Alexey Edelev
9c39ae1424 Point to protobuf install prefix but not the CMake dir in protobuf_ROOT
The <Package>_ROOT should point to the package prefix, where
CMake should look for the respective cmake/, lib/cmake, and other
CMake package directories. Setting directly it to package path is
incorrect.

Pick-to: 6.8 6.9
Change-Id: Id8859c29da08144c60ed3d6301d2c65c8d602d1f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2025-05-15 06:19:45 +02:00
Nils Petter Skålerud
9c7e564d7e Coin, iOS, FFmpeg: Stop installing .dylibs in iOS FFmpeg provisioning
On iOS we no longer deploy FFmpeg .dylibs directly. As such, there is
no need to install the .dylibs during provisoning.

This patch removes this installation step during provisioning.

Pick-to: 6.9 6.8
Change-Id: I6f901113caca4b8d602490ba05db0c9dacb8f80d
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2025-04-29 06:15:00 +00:00
Paul Wicking
8c9fe2074b Update Clang libraries for QDoc to 20.1.0
* Update the version variable used to identify the correct package for
  download and cache sites.
* Update SHA1 for provisioning packages on all platforms.

Fixes: QTBUG-134304
Pick-to: 6.9 6.8
Change-Id: I2577600296e75080d503dc1a537ddbc00d0f207f
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2025-04-11 08:37:59 +01:00
Paul Dubsky
24bba3c8b5 Update FFmpeg version to n7.1.1
Task-number: QTBUG-134621
Pick-to: 6.9 6.8 6.5
Change-Id: I6255f615be533521bf1c3da85b29f96e855197e1
Reviewed-by: Bartlomiej Moskal <bartlomiej.moskal@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
2025-04-07 20:30:30 +02:00
Nils Petter Skålerud
d39ac6a4ec iOS, FFmpeg: Add variable for controlling minimum iOS version
Currently this script relies on hard-coded values specify minimum
iOS version to link against.

This patch unifies the hard-coded values into a single variable.

No functional changes.

Pick-to: 6.9 6.8
Change-Id: I12bddeb53f0fe3388ea55c841a9864722a1d5f82
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2025-04-04 16:57:51 +00:00
Nils Petter Skålerud
c4315452cb iOS, FFmpeg: Improve variable naming in FFmpeg provisioning
Currently this script overwrites a local variables and reuses it for
a (slightly) different purpose. This makes the code a bit hard to
follow.

This patch introduces a separate local variable to improve readability.

No functional changes.

Pick-to: 6.9 6.8
Change-Id: Ifa1904482f498d9b380d1ed19ab6b0104afda19b
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-04-01 05:36:01 +01:00
Nils Petter Skålerud
aa613ed85d iOS, FFmpeg: Replace arm64-simulator build with x86_64
Currently this provisioning script builds for arm64 architecture
when on iOS simulator. Qt ships x86_64 binaries for iOS simulator, and
we should build FFmpeg similarly.

This patch introduces support for x86_64-simulator in the iOS FFmpeg
provisioning script and uses it in place of arm64-simulator.

Pick-to: 6.9 6.8
Task-number: QTQAINFRA-7034
Change-Id: Ie93cffba51924cd1d78651d20dec211817cb0cef
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-04-01 05:35:53 +01:00
Timur Pocheptsov
d7d7c522b6 install-ffmpeg-ios.sh: remove redundant configure options
While writing a documentation for FFmpeg build on iOS it was found that
many options are redundant. Remove them to simplify the provisioning
script and to reduce the amount of cargo cult code.

Pick-to: 6.8 6.9
Fixes: QTBUG-133502
Change-Id: I26aab49365eaca83bcdbfeb86de0638ac701bb80
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-04-01 04:35:47 +00:00
Artem Dyomin
a442e4893f Improve the script fix_ffmpeg_dependencies
* add FFmpeg stubs to the 'Required.private' section.
  This will make the logic more robust after integration this
  in qt multimedia.
* add some script comments.
* fix shellcheck.
* add validity checks.

Pick-to: 6.8 6.9
Change-Id: I28639d21c7210109e52ff98ce682da51f8744287
Reviewed-by: Jøger Hansegård <jogerh@gmail.com>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
2025-04-01 04:35:41 +00:00
Nils Petter Skålerud
07775b2ad2 Android, FFmpeg: Allow specifying target output in FFpeg install script
The provisioning script install-ffmpeg-android.sh can be useful to run
locally to make sure we build FFmpeg with the same configuration as we
do in CI.

This patch introduce an optional parameter to this provisioning script
that allows us to specify where to install the compiled binaries.

Pick-to: 6.9
Change-Id: I7ea30bffa4753ac1fab707ed2876ddcbbca06175
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-04-01 04:35:30 +00:00
Artem Dyomin
151c0dd58f Cleanup in install-ffmpeg-android.sh
Non-functional changes:
* fix alignment
* add the keyword 'local' to local function variables

Pick-to: 6.8 6.9
Change-Id: I28639d28c7211809e52f118c1612db52f8954286
Reviewed-by: Jøger Hansegård <jogerh@gmail.com>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
2025-04-01 04:35:22 +00: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
Axel Spoerl
03d05c8781 Handle tgz extensions in InstallFromCompressedFileFromURL.sh
InstallFromCompressedFileFromURL.sh handles tar.gz, but not tgz.
Add the missing extension.

Pick-to: 6.9
Change-Id: Ie7e10e9b6963d5c24e21818dfd67bea9ab571541
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
2025-03-13 11:09:00 +01:00
Paul Wicking
9ff9d34626 Update Clang libraries for QDoc to 19.1.7
* Update the version variable used to identify the correct package for
  download and cache sites.
* Update the file names for all platforms, as these libraries are built
  directly from upstream without other patches applied on top.
* Add provisioning package locations for Windows VS2022 x64.
* Set 'vs2022' as default toolchain on Windows.
* Update call sites for `libclang.ps1` to pass `vs2022` as argument to
  the script.
* Drop Windows configurations with VS2019.
* Update cached and official URLs with the major version for Windows
  platforms.
* Update SHA1 for provisioning packages on all platforms.
* Move from RHEL 8.8 to 8.10.
* Move from RHEL 9.2 to 9.4.

Fixes: QTBUG-129506
Fixes: QTQAINFRA-6605
Task-number: QTBUG-129373
Pick-to: 6.8 6.9
Change-Id: I5146e6551a1b3c83133803f61ca6f8428cb6a14f
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2025-03-10 05:21:48 +01:00
Timur Pocheptsov
a4110ed94f FFmpeg: reduce the number of frameworks we create
to the same libraries we build e.g. on macOS. Also, clean up the
script a bit removing a duplicate configure option.

Pick-to: 6.9 6.8
Task-number: QTBUG-133502
Change-Id: If06aad102783bc3025155d3427aa68d87ad4d179
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-02-27 12:34:41 +00:00
Alexey Edelev
b2e1673d99 Update Protobuf ROOT env variable match package name
find_package looks for PackageName_ROOT and the package is now
named 'protobuf'.

Fixes: QTBUG-132901
Pick-to: 6.9
Change-Id: Ifb956e4ab52c3df059d2624eb989c97473a662a2
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2025-01-31 08:18:15 +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
Timur Pocheptsov
1968adc126 Update provisioning script to build FFmpeg for iOS
as xcframeworks, so that we can provide both arm64 and arm64-simulator
versions (the former can be used in App Store, the latter when
working with a simulator).

Pick-to: 6.8 6.9
Task-number: QTBUG-132313
Change-Id: Ic683f58dffcef8a06adb4a915c4e3abc4ab219e5
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-01-27 22:31:52 +01:00