Used by Qt Creator for cross-platform development (gocmdbridge)
Change-Id: Icac0c298169f269c006d92843243e2bed25439bc
Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
(cherry picked from commit c653ec850c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The 20260410 SDP patchset ships new majors for freetype and
fontconfig: libfreetype.so.26 (was .so.24) and libfontconfig.so.17
(was .so.1). The old sonames remain only as compatibility stubs
(libfontconfig.so.1 shrinks to a 320 KB shim vs 1.65 MB for .so.17).
Pick up the current libraries in the QEMU system image so Qt runs
against the SDP's real fontconfig/freetype, not the stubs.
Pick-to: 6.8
Change-Id: I29ceae73d861d1a398f3efd2f4b2eaab3600fc24
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 444b0dcd2d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The 2026-04-10 patchset refreshes binaries and bakes in tzdata 2026a
in the SDP tree. Added the missing targetFile= line.
Also pull the tzdata as a separately-downloadable overlay, so it can
be bumped without rebuilding the full SDP tarball. Archive root is
qnx800/target/qnx/... so it extracts onto /opt/ directly on top of
the already-extracted SDP.
Pick-to: 6.8
Change-Id: I29f675429937346825e4a0b6cfac07ce8dc391a6
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit a8ce190d22)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Current MSYS does not have a prebuild in ci-files01 cache, which makes
the msys2 install script to use pacman to externally download, which can
cause flakiness.
The prebuilt was fetched from a parked Windows 11 24h2 x64 VM, by
compressing: "C:\Utils\msys64" to .7z
Pick-to: 6.8
Task-number: QTQAINFRA-7387
Change-Id: I4bd037a6d985fc1c007ba65d8f54a73d4183cb10
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit fbda4dea61)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
To fix
- Release lock --set=10.0 doesn't work with internal repo
- Also locks epel repo to same release version 10.0
Other notes:
7zip is downgraded from 25.01-1.el10_1 to 24.09-4.el10_0. As a result,
the snld switch (introduced in 7zip 25.01) is no longer required.
Task-number: QTQAINFRA-7817
Task-number: QTQAINFRA-7614
Change-Id: Ib2daed8cbb6d53e593cb0c835b0cbc4b40fa5f9d
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
(cherry picked from commit 007c887d88)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
These flags are already provided by the function
'get_ffmpeg_config_options'. In the current we pass them again
explicitly during FFmpeg configuration.
This patch makes us rely on the function's return value.
Pick-to: 6.8
Change-Id: I4b257331cedafd7241df4360694e4ad1637267fe
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 16af59b8ac)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
OpenSSL for Windows is now prebuilt. Instructions to build OpenSSL for
Android are also changed.
Task-number: QTQAINFRA-5540
Change-Id: I40fb6964b5887c4bfee008997057a75cc70ac037
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit e2cf3590fb)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
In the current Android FFmpeg provisioning, we rely on the tool
'readelf' to be installed on the host. On macOS we currently pull this
tool through the Homebrew 'binutils' package. This has proven
unreliable on older macOS hosts.
The Android NDK provides the same tool under the name 'llvm-readelf'.
This patch makes us rely on this tool during provisioning, which is
guaranteed to be provided.
Change-Id: I47a186d2dd4b442929b82f35b4d257d011cb9d10
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 07ec75fa35)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This patch allows us to automatically grab the FFmpeg version string
from the source code directly, rather than having to explicitly specify
a version string inside ffmpeg-installation-utils.
Change-Id: I657302ab8566592390a51c6f5c3ee989d66efaaa
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit d2bc5fdeae)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The script 'install-ffmpeg.ps1' contains logic for building all targets
even if some targets fail, and then report all results at the end. When
building Android specifically, we download patchelf sources from CI,
it's possible for it to throw an exception if CI-files is not
available. This breaks the logic and makes us terminate early.
This patch encloses the Invoke-WebRequest in a try-catch.
This also makes it easier to run this script locally.
Pick-to: 6.8
Change-Id: I93d4ec905c61dc7b44b87100353353f24c27d276
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 2911978176)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
For some unknown reason the compilation has started using -std=gnu23,
which breaks the build.
Forcing "-std=gnu89" allows the build to succeed, so let's do that
as a workaround to unblock qt5, while we continue investigation why
this broke.
Task-number: QTQAINFRA-7775
Change-Id: I59a29ab9a20d5b2302d72b1e6fbbe52c7ecd277a
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
(cherry picked from commit 97af7f3855)
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Remove recovery partition to save space and update OS version to 13.7.8
Pick-to: 6.8 6.5
Task-number: QTQAINFRA-7737
Change-Id: I093aceecfac72b2faf8d9e104bda7d0d67ab09b5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This patch adds Android 17 16KB Beta3 as insignificant platform
to CI which will not abort on first test failure. At the moment
there is only 16KB compliant system image available.
Before the platform can become significant we need to wait
first released version of Android 17. When the first released
version will be added remove the Hack to alter source.properties
mentioned in this patch.
Task-number: QTBUG-143600
Pick-to: 6.8
Change-Id: Iaf2f122e6b56e496ddb8549f281cca6acd3970ac
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 5f5f9c4db4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Update from:
gcc15-15.2.0+git10201-160000.1.1.x86_64
to
gcc15-15.2.0+git10201-160000.2.1.x86_64
breaks the gcc compability check and causes "false positive"
cache hit which eventually fails with:
"created by a different GCC executable"
Sccache do not seem to see the change as build id, checksums etc.
for the gcc are the same between the versions.
Just set the value to v1 as nothing is pinning the gcc
so it will update on it's own also in future.
Change-Id: I4f2a6da95680c28ad1912751307f96df806c9930
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Build configs are not using correct version from the /opt/icu.
Task-number: QTBRIDGES-172
Change-Id: Ic90560036067de1e9d324adfb0c0e765fc521a90
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 3bf43a0827)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
build-* was matching files like build-ohos-deps.sh. Add trailing slash
to both build and build-* so only directories are excluded.
Change-Id: I8f5d8c3adcac4071320d70aed5112d037f7cc138
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 27280bf442)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This should be temporary fix until pinning or update works.
Without updates QtWebengine needs these libs to be installed directly
- libatomic
Task-number: QTQAINFRA-7773
Change-Id: I55bb3cfe671f21986753048cea5f8cf64c25f112
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
(cherry picked from commit fc6b391028)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This script currently downloads the .zip file from the web into a local
file with no file extension. This can cause issues for 7-zip when
unarchiving. This patch fixes this.
As a drive-by, we improve the names of some variables.
Pick-to: 6.8
Change-Id: Icb1b24646b54d75d825764d30a268fa6e55d0183
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 99b67a8f3f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
...based on the length of the given hash.
Additionally use -ine for string comparison, which explicitly does
case-insensitive comparison. That is what the function needs, previously
it was done implicitly by -ne.
And remove MD5, it's not used anywhere.
Pick-to: 6.10 6.8 6.5
Change-Id: Ib4303737e5e1d743dd0be1a8f829be9a0db2bc04
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit e5e813ef90)
Is needed by bindgen but not pulled in by dependencies.
Change-Id: Ic3963e580f5d03a4c6de89afcac03639d4d3c27f
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
(cherry picked from commit 073360db1e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Test tst_qurl has started to fail too often.
Task-number: QTQAINFRA-7455
Change-Id: I4f565179fdcf281740e27211a69a1a2868a44cd1
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
(cherry picked from commit 8bd36b1d0d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
install-vxworks-qemu.sh uses a variable that doesn't exist, causing
issues when we turn on more strict error-handling.
Pick-to: 6.10 6.8
Change-Id: I9d644a497e4689c7ab35c80f97548b1a1a6bdf12
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 55c0e2f24a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This amends commit 378c8719a9.
Since 378c8719a9, -skip is registered as a known option in
init-repository's option parser. This caused -skip values to be consumed
during option parsing and no longer appear in the unknown_args list that
gets forwarded to configure. As a result, -skip was silently ignored
when -init-submodules was not passed.
Fix by collecting skip modules into a dedicated list from two sources:
the -skip option values consumed by init-repository's parser, and
exclusion entries from -submodules/--module-subset. The merged list is
then forwarded to configure.
This also simplifies the previous merge logic that searched for -skip in
filtered_args, which became dead code after 378c8719a9.
Pick-to: 6.10 6.8
Task-number: QTBUG-140359
Change-Id: I816020959f86cf4b8e36ce1a62172acd442ed1d3
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 1d4da9a59b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
There have been cases where necessary symlinks have been lost when
extracting prebuilt OpenSSL builds for Android. This patch ensures the
script will always create them.
As a drive-by, the patch cleans up some behavior related to
'opensslHome' being used to write to a variable outside function scope.
Pick-to: 6.10 6.8
Change-Id: Id6fb4143aaadcbf11e1b9bc6301ef53d2043ad10
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 52b3c97ab7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Need upgrade of the IANA db to 2022g or later with Ubuntu 22.04. Ensure
zoneinfo (tzdata/timezone) always stays up to date with all Linux OS.
Both packages (tzdata/timezone) provide the same thing:
- the IANA TZ database under /usr/share/zoneinfo/
tzdata:
- Debian
- Ubuntu
- RHEL
timezone:
- openSUSE
- SLES
Pick-to: 6.10 6.8 6.5
Fixes: COIN-1282
Change-Id: I6fe7d548470d8f0f63e5451a6b5203e658575f48
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
(cherry picked from commit 9deb066d4c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
When running configure -init-submodules -skip <module>, the -skip
option was ignored because init-repository ran before -skip values
were processed. The skipped modules were still initialized.
Fix by preprocessing -skip values in qt_tl_run_main_script() before
calling qt_ir_run_main_script(). The -skip values are converted to
module-subset exclusions (e.g. -qtwebengine) and merged with the
existing module-subset option.
Also register -skip as a known option in init-repository so it can
be parsed from the optfile.
Fixes: QTBUG-140359
Pick-to: 6.10 6.8
Change-Id: I37ed916dd1c22b6d10d23821044fee807919d4a9
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 378c8719a9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
App Store requires that our FFmpeg distribution includes dSYM files for
debugging symbols.
This patch removes stripping from the FFmpeg build, generates the
dSYM files and then manually strips the dylibs afterwards.
Pick-to: 6.10 6.8
Fixes: QTBUG-143963
Change-Id: I2740f46bb0fd7e7ee9da8dede01944b89bc3db7a
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 919a4ae240)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This patch rewrites the create_framework() function to
be more readable and adds commenting.
No functional changes.
Pick-to: 6.10 6.8
Task-number: QTBUG-143963
Change-Id: Id52fb43d733fe0c815a13b15135539452999cb40
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 4df773656c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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>
The script accepts an OS parameter, which is then forwarded into the
`build_ffmpeg_android` function. This function expects a different set
of values, that are different in name only, not in meaning.
This patch makes us forward the OS parameter directly into the function
and changes the internal logic accordingly.
No functional changes.
Pick-to: 6.10 6.8
Change-Id: I5614f1cf489594cfab2966a680e87a95c7be267b
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit ade4488de9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
OpenSSL packages have differing features indicated in their file name,
separate those in their own $suffix variable for the install function to
reduce hard-coding.
The function will now rename the extracted root directory to mirror the
package name from Ci-files. This is to prevent later "OpenSSL not found"
errors in provisioning when prebuild package and its root are not named
exactly the same.
Pick-to: 6.10 6.8 6.5
Change-Id: I71019a0d2731aace00ff2eb82d63537673f6e41a
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
(cherry picked from commit aa2272379a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Currently sbom2doc is not found with RHEL 10 until this other fix
in qtbase is available: 2dc0c29502bec1ffffbbf098d749a49b494122ac
After that this temporary fix could be removed and proceed to
unify virtual env usage for all linux machines (QTQAINFRA-7642)
Task-number: QTQAINFRA-7203
Change-Id: I97adf937afa78371b290baa833c767a106c4c15e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 1e25956312)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Both of the subscription activation options needs to run
with sudo as non-root user cannot connect system.
Task-number: QTQAINFRA-7637
Change-Id: I933536d7321b9a7e54732395b6e536c5275129d3
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit 4d4e6bb490)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
With Python 3.12 SBOM needs jsonschema package newer than 4.19
but cannot uninstall current one installed by RPM:
Error:
Attempting uninstall: jsonschema
Found existing installation: jsonschema 4.19.1
error: uninstall-no-record-file
× Cannot uninstall jsonschema 4.19.1
Therefore virtual env is used to fix this.
Task-number: QTQAINFRA-7554
Change-Id: I1260ef7fdf0c1ba96acaee1738ed9612e47bedad
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 88177e9ab8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Because RHEL 10 comes with an older version of jsonschema (4.19),
which breaks cyclonedx verification at qtbase runtime.
Change-Id: Ib7044b6d4107e5382015adfdd8eb747be8605934
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 6348aa919b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Notes
- GCC 14
- Wayland is mandatory to use as X11 has been removed
- DISPLAY=:0 should not be used anymore as it's for X11
- Java JDK 21
- mysql replaced by mariadb
- gstreamer1-plugin-openh264 not available
- nodejs-16 upgraded to nodejs-22
- Squish is no longer installed in provisioning
- SBOM needs jsonschema > 4.19 to work with Python 3.12
- Has these to bypass 'Activities Overview'
- 'GNOME Classic' Desktop Session
- 'No Overview' GNOME extension
- 7z >= 25.01 multi-hop symlinks restricted with -snl switch levels
--> 7z x -snld10 allows minimal usage to use multi symlinks
- With install-vcpkg.sh and install-vcpkg-ports.sh correct path is
- ../common/linux/ and not ../common/unix/ like in 6.12 (dev)
EGL support
- No longer need to install mesa-libEGL with pinned version
- As there is no longer Xorg to crash when Wayland is used instead
Task-number: QTQAINFRA-7203
Task-number: QTQAINFRA-7202
Change-Id: If8b7bfdbc2b84259fd09276e0566b3967c364668
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit c399d002de)
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>
Both of the subscription activation options needs to run
with sudo as non-root user cannot connect system.
Task-number: QTQAINFRA-7637
Pick-to: 6.10 6.8 6.5
Change-Id: I05ea39e4c4a40b5294cc659e4d2e506ee0118848
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit 3a7915481f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This upgrade is needed to fix:
tst_QScreenCaptureBackend failed on Ubuntu 24.04 GNOME X11
Old Tier1: qtci-linux-Ubuntu-24.04-x86_64-51 - X11
New Tier1: qtci-linux-Ubuntu-24.04-x86_64-54 - X11
Other fixes included:
- 24.04.2 has also a fix to mutterlib issue
- https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/2095396
- Which caused a crash seen in journal system logs
- Installed no-overview gnome extension to fix issue: QTBUG-132070
Pick-to: 6.10
Task-number: QTQAINFRA-7007
Task-number: QTBUG-128515
Task-number: QTBUG-132070
Change-Id: I4ed86470d7b4ce82802f0a98726eb1ed51931623
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
(cherry picked from commit c6ae09efea)
- the newest 7.18.0 has some generation updates,
that affect named inline objects generation. It may be
useful from testing perspective to have the latest version
on CI.
Change-Id: Iaaaae823b7ccc1496f83e5af845bfcfa7999767f
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit e5871fa6e6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
When building on iOS, the minimum deployment target was only declared as
linker flags for the libary. However the flags can affect the run-time
features by potentially enabling APIs or affecting codegen if the
compiler can assume that certain CPU features are present.
We should therefore pass the minimum deployment target as compiler flags
as well as linker flag.
Pick-to: 6.10 6.8 6.5
Change-Id: If9b96fb31bf4173da2e4c574c1c080be075851b8
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 1a9daf1574)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This makes it easier to use a debug VM without having to use
full paths from the Android SDK and also without having to
know where they live.
Pick-to: 6.10 6.8 6.5
Change-Id: Ib6c255edae5e5773551fab1008ebdb9a5e1ff8f2
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 33695df07e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This patch updates build.gradle to set compile- and
targetSdkVersion to 36.
Task-number: QTBUG-138552
Task-number: QTBUG-138549
Pick-to: 6.10 6.8
Change-Id: I44be99956f39e7bc23e8c5a3d15289dfdd574921
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
(cherry picked from commit 45aeb45a6e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
openssl3 package installation started to fail in provisioning due
to missing dependencies. Removing installation, and rely on self
compiled version of openssl3 (09-openssl.sh). Set PKG_CONFIG_PATH
to the built openssl.
Task-number: QTQAINFRA-7620
Pick-to: 6.10 6.8 6.5
Change-Id: I4626fffe2de669686fd76b054018fb4f98983e36
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 606a8b29c8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This patch bumps:
-The sdkBuildToolsVersion used in Coin to 36.0.0
-The sdkApiLevel used in Coin to 36
Task-number: QTBUG-138550
Task-number: QTBUG-138549
Pick-to: 6.10 6.8
Change-Id: Ic63cd28ba39743e517ea3a3e2f9ec08bd5dc3267
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
(cherry picked from commit 2795f20a4e)
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
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.10 6.8
Change-Id: Ia32c31e3e9d1f550a026f2684362e19d663a8863
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit c5a42f267f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This patch
- Replaces Android 15 with Android 16 as a maximum version
- Sets Android 16 as significant and switches to r07 version
Task-number: QTQAINFRA-7299
Task-number: QTQAINFRA-7298
Pick-to: 6.10 6.8
Change-Id: Ic2ac071da7ab1763225c82e441c27f60cc25fe06
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit da6cc0ce0e)
Android arm64 and x86_64 builds now require 16KB page size alignment in
native binaries, this includes FFmpeg. When running patchelf on the
binaries, it will implicitly re-align the affected sections to 4KB page
size.
This patch solves this by using the --page-size flag for patchelf, only
for the builds that require it.
Pick-to: 6.10 6.8
Fixes: QTBUG-142332
Change-Id: Iba88bf702fd075d2b4432d9cde94f779b14de52f
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit b9c677baad)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
To fix ImportError:
/usr/lib64/python3.13/lib-dynload/
pyexpat.cpython-313-x86_64-linux-gnu.so:
undefined symbol: XML_SetAllocTrackerActivationThreshold
Current libexpat1-2.7.1-160000.2.2 did not export the Alloc Tracker
symbol but Python 3.13.11’s pyexpat module was built expecting symbol.
Therefore needs to install newer available libexpat1-2.7.1-160000.3.1
Fixes: QTQAINFRA-7650
Change-Id: Iea9b838e97830c9c6f2b1fa3be8db02447b49de4
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 6bf59c7c90)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Skip repo-clones.ci.qt.io with testserver where it should
use repo-clones-apt.ci.qt.io. Permament fix ongoing.
(related 13487118df)
Pick-to: 6.10 6.8 6.5
Task-number: QTQAINFRA-7632
Change-Id: I22bae5dfc96df82bb308233ec895f7164f4cc629
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
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.10 6.8
Change-Id: Ib03b999bef0373dc9600d505b1f4ce926fa97de6
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit fb6a8b0215)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This patch updates the Android Command-Line Tools in CI from v2.1 to
v19.0.
The zip file for the older version contained a single directory
'tools', this directory has been renamed to 'cmdline-tools' in the
newer version. This patch includes some changes to make sure we still
use the same folder structure as before.
Task-number: QTQAINFRA-7487
Pick-to: 6.10 6.8
Change-Id: Id9227241283d4c529005c4961449f50ca7af13be
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit c9a8b8f220)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The Android provisioning scripts on macOS and Linux perform many of the
same tasks, but with slightly differing approaches. Future patches will
make us run Android emulators on ARM64, which will further make these
scripts similar.
This patch performs some modifications to the macOS provisioning script
to make it more similar to the Linux one. This will help us combine
parts of these scripts in the future.
Task-number: QTQAINFRA-7487
Pick-to: 6.10 6.8
Change-Id: Idba30d07607780d1ef8c60cc5e038a034c821632
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 8a70b9e482)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Also set Packaging and JavaDoc targets for RHEL-9.6. JavaDocs feature is
removed from a non-Packaging Android Linux target.
Pick-to: 6.10
Task-number: QTQAINFRA-7326
Task-number: QTQAINFRA-7331
Change-Id: I18ec1e79e6fbe7b4ed001a3cdb648dae37b89561
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 6856189287)
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
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>
Axvion analysis will be run also in release branches and this
prevents results to be mixed between brnaches.
Task-number: QTQAINFRA-7599
Pick-to: 6.10 6.8
Change-Id: I5766d234bce2054d0dc6999ae1cac3f05c197d0e
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit c69a56646f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Needed for WebEngine based on Chromium 140
Pick-to: 6.10
Change-Id: I0cf1df1107cc8f5aa2850239608f03a7c7831676
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
(cherry picked from commit 2bd7830030)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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.10
Change-Id: I91f9938b595ecff5b04d49a71e9872f5d7278cda
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit df82dc7de2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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.10 6.8
Change-Id: Id54b9fc69307ef28eb35cf1c0042df11e704a6e2
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit bc6ba67934)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Currently, this script is hardcoded to output to the directory
'/usr/local/'. This output is stored in the variable 'prefix'. However,
this variable is used inconsistently in the script, meaning we cannot
actually modify the variable to change the output directory.
This patch does the following:
- Applies the 'prefix' variable where necessary.
- Allows an optional command-line parameter to be applied to 'prefix',
allowing one to specify where the output directory. This is
particularly useful for local builds.
No changes to current CI behavior.
Pick-to: 6.10 6.8
Change-Id: I51f83ce3844c2aa9db778b1c54091acb64a227e6
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit e3966f2ffc)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Custom patched packages for windows.
Also Add Windows on arm support.
Pick-to: 6.10 6.8
Fixes: COIN-740
Change-Id: I27f7d36b3501be2a2011b9b8dfa0ec846cd57bf5
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
(cherry picked from commit 73c4ed922a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
We need this to be able to create some dependency debian packages.
Change-Id: Ic4f3259f8bf29fa19c10394b63634f1512db47bc
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit bee5ded33b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The configuration is duplicate as it is also run on 24.04.
Pick-to: 6.10 6.8
Task-number: QTQAINFRA-7146
Change-Id: Icbd1f7379cb1f23ed8c818f25aa3e09c5fcb5a45
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 2bac4d3be9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The current script relies on some commands intentionally failing during
provisioning because they only apply to certain versions of Xcode.
These errors are silenced using pipes. This is error-prone because we
can no longer catch when these commands are failing in the case where
they should not.
This patch introduces some additional error-handling and conditionals
to make sure we only run commands when they are intended to succeed.
Pick-to: 6.10 6.8
Change-Id: Ic5048f54adb31d263e28f51312f44fe3b55e6fe5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
(cherry picked from commit ba6a77312d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This reverts commit aecfc7e23b.
Reason for revert: QtOpenAPI can use the zlib that is bundled with
Qt now (which is the case for all MSVC configurations in CI), and
that commit broke qtinsighttracker.
Task-number: QTBUG-138968
Fixes: QTBUG-142771
Change-Id: I69344c52572a472baed96a136aecbe33b310da16
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
Reviewed-by: Tatiana Borisova <tatiana.borisova@qt.io>
(cherry picked from commit 8fb136fc8a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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>
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>
Commit d6918d7ac5 broke init-repository if
you did not pass an --alternates option.
Pick-to: 6.10 6.8
Task-number: QTBUG-142712
Fixes: QTBUG-142744
Change-Id: Ia727b420a34a46e52f0f05e549aabe2c975c6d7e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 6bd3b23b6c)
When using --alternates with a relative path, nested submodules
(e.g., qtdeclarative/tests/auto/qml/ecmascripttests/test262) failed
because the alternates path wasn't adjusted for the changed working
directory depth. The --alternates option worked correctly with absolute
paths.
Fix by converting the passed alternates path to an absolute path.
Pick-to: 6.10 6.8
Fixes: QTBUG-142712
Change-Id: Ief7a87768d9ff17bb2832ae363f573ecae58d5ee
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit d6918d7ac5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
installing libc++-20-dev and libgstreamer1.0-dev on the same system
causes problems:
* using the llvm apt repo, it will uninstall libgstreamer1.0-dev
* using ubuntu's repo, it will break gstreamer's pkg-config integration
reason is that libgstreamer1.0-dev depends on libunwind-dev, but llvm's
libunwind-20-dev does not provide the pkg-config files.
as temporary workaround we basically revert
e5b56d1d37.
Change-Id: Ib4626d17339256d56c4764e3167f4e9fe4b9c909
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
(cherry picked from commit e9a003f0c3)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This helps with the test stability when code.qt.io is down or slow.
Pick-to: 6.10
Change-Id: I0bdaaa06772a94e73cb33d3f827e4e327123b60a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit 160e6135bb)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Renamed files since it leads to misunderstanding due to their index.
Our CI system sees only two first digits, so 100 is seen as 10
and executed with other 10s which is misleading.
Pick-to: 6.10 6.8
Change-Id: Iabb548c622d71df8a3593cc171b7e0c2e2ae0287
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit b276b549f7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Updating for raising the compiler requirements.
Also adds Ubuntu 22 to test with GCC 11
Since Qt Creator branches can use the same Qt branches
that define these platforms, keep one RHEL 8 job
for Qt Creator 18. Mark it in the features, so the
Qt Creator 19+ configuration can filter these out.
Pick-to: 6.10
Change-Id: Ib771f473b6ed3ce42c6191647da7d473b64c2316
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
(cherry picked from commit dcd07cc2ab)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
- need to trigger an update for enabling changes required
for merging windows provisioning.
Change-Id: I8b5804c2bda2e4f4f4f204b0db95232583ac57e1
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
The installer from Microsoft which is used for ARM machines has a
different default installation path compared to the installer from
Oracle that is used for x64 machines, but the provisioning script did
not take it into consideration.
As a result, the JAVA_HOME variable was pointing to a non-existing dir
on Windows ARM machines.
An attempt to adjust the installation path using TARGETDIR or INSTALLDIR
properties did not work, so this patch simply hardcodes the path that is
used by the current ARM installer.
Amends b3f5b4fd64 that added Java
provisioning to Windows ARM.
Task-number: QTBUG-138968
Pick-to: 6.10 6.8
Change-Id: I2abdc07195a9c633340c2d7b21deaa80762aee67
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- 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>
It is required for qtopenapi.
The patch adds the maven provisioning to only those Windows
configurations that are currently used in qtopenapi.
This commit amends 0ac4df3e52 which
provisioned the same files for Linux and macOS.
Task-number: QTBUG-138968
Change-Id: I8ec903959c58185a5c46bdb7c13f178bdc10a109
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- Add Windows configurations that use MSVC
- Provision openapi generator on the relevant platforms
- golang is already provisioned on all these platforms
The patch does not enable mingw and llvm configs, because
we need to build zlib using mingw first.
It also does not enable x64_64->arm64 cross-compile configs,
because they have a dependency on the mingw config.
Task-number: QTBUG-138968
Change-Id: I4fe35d149a1f9bfa93c1a128e5910b33aad536d4
Reviewed-by: Tatiana Borisova <tatiana.borisova@qt.io>
Place the downloaded file into the new directory inside C:\Utils and
add it to the PATH, because that's what the qtopenapi build scripts
expect.
Task-number: QTBUG-138968
Change-Id: I113b0095074cc8f0dc0470daf54fa7f22ee22719
Reviewed-by: Toni Saario <toni.saario@qt.io>
That is required for qtopenapi builds that would be enabled in the
follow-up patch.
The zlib library is already built after commit
97e80c1538. That commit also sets the
ZLIB_PATH_{arch} environment variables. So, we only need to set
ZLIB_ROOT to point to the proper zlib installation.
This patch does not cover llvm and mingw configurations, because we
need to builds zlib using these compilers first.
Task-number: QTBUG-138968
Change-Id: I5d5ad754d13bef9fc6184b41823a42d98863991a
Reviewed-by: Toni Saario <toni.saario@qt.io>
libuuid is needed for it. RHEL 9.0 already has it in its package list,
but it was missing for the later RHEL 9 versions
Pick-to: 6.10
Change-Id: Ibd052438c534e5811d2f0b0ee848808227e795f9
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This currently flags 294 occurences in Qt Core as errors, practically
all of them related to the implemenation of QDataStream related
functionality.
I think this generally at the wrong level, certainly for Qt Core,
but also for user code: operator>> is (besides operator<<)
/the/ main reason to use the QDataStream class, so if we consider
this risky, QDataStream itself should not be used, i.e. it would
be better to flagging code that creates QDataStream objects not
every use of operator>> of such objects.
Change-Id: If758bde3a77f64cc8c06f8328459dfcd2d94dc8f
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
To all linux, macOS and Windows platforms.
Task-number: QTQAINFRA-7554
Change-Id: I677440fb9faf3f3d36744b59f91f0036449b639b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
RHEL-9.6 will be run in parallel with RHEL-9.4 with insignificant tests
until RHEL-9.6 is confirmed stable, then it will replace RHEL-9.4.
[CI Platforms]
Task-number: QTQAINFRA-7528
Change-Id: I5fe6bfe6f57f1dfb7ec4aeb05560dd7f01fc7f2f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
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>
Notes:
- GCC 15
- Python 3.13
- MimerSQL with openSSL 3
- CINetworkTest skipped until newer ICU 77 version available
- gstreamer-plugin-openh264 not available
Repository names have changed:
- Old: /etc/zypp/repos.d/repo-oss.repo
- New: /etc/zypp/repos.d/openSUSE:repo-oss.repo
Not installed by default, therefore no need to disable anymore:
- balooctl
- ntp
Task-number: QTQAINFRA-7455
Task-number: QTQAINFRA-7452
Change-Id: I2af7f828e07d31d3622cf46e819318c71d28783e
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
This is an unfortunate combination of clazy-function-args-by-ref and
clazy-function-args-by-value.
function-args-by-ref fixes are almost always safe to apply. They
actually may save an unbounded amount of cycles, and there are typically
only a few of them.
On the other hand, function-args-by-value is a mixed bag: There are a
lot of them and the expected gain is small: It's typically trading one
or two register for one register and a "hot" location on the stack.
Especially when passing down such objects to a through a sequence of
function calls this is not even necessarily a clear win on all
architecture.
In any case it should be considered that especially in the Qt context
changing signatures of public functions is not cheap, if possible
at all.
Change-Id: I281ea086fb15e0a045316591d9af620b5e730f4a
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
The binaries will be stored to ci-files02 after successful integrations
and the testing/release process will use those binaries.
Currently we can disable tests, as there are no unit tests in the
plugin itself.
Task-number: QTQAINFRA-7390
Change-Id: I7777ee47eed845022d67447a9389ab6943d69bc9
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
'JavaDocs' is a new configuration feature to generate HTML docs and
source JARs using JavaDoc after an Android module build is done.
Task-number: QTBUG-138976
Change-Id: I7d79a4b1aa93692956845838ae102f7bed113a28
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
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>
Needed to export release content from the yocto builds.
Task-number: QTBUG-136634
Change-Id: I854b5b67d66aebc2b146e357785c987db47db362
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
- javac was not found on sles and opensuse, so installing
an additional package is required.
Change-Id: Ic26615dc8f7433c3acd870cc85ce16622a046d0f
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- there is already 43-install-golang.sh file presented
Change-Id: I92fd18a95f21e084affe21d74d34aa706399bdfc
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
CI configs for new Qt on board repo.
Task-number: QTBUG-136635
Change-Id: I04d72a4d973ca96f66591ed109c10001824d16b5
Reviewed-by: Toni Saario <toni.saario@qt.io>
- 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>
- 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>
Documentation warnings easily sneak into integrations, as they were not
caught by pre-checks. Enabling them to catch them early.
Change-Id: I24eb9c653d6f774dccec82dea3003be27d81b8b7
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
'cp -p' attempts to copy NFSv4 ACL extended attributes when preserving
permissions. On filesystems that do not support these xattrs (e.g., ext4),
this results in `Operation not supported` and causes 'cp' to fail.
Add explicit skip entries for these attributes in /etc/xattr.conf
so libattr ignores them during copy operations. This is needed to get
bitbake builds to work when using download cache from NFS4 mount.
Change-Id: I3dabb065c4d9928121fe14d0fdc896c7415bdcb9
Reviewed-by: Toni Saario <toni.saario@qt.io>
* Ubuntu 24.04 - clang-20 with libc++
Note: HAVE_cxx23_stacktrace failed on clang-20, which is experimental
in libstdc++ and not implemented in libc++.
Task-number: QTQAINFRA-7340
Change-Id: Ib2b2e8b34b7a978d1e5d98c1baf0cbdd4a49da6b
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Allow the emulator launcher to take new options that are commonly
used:
* --window: shows the emulator window instead of running headless
* --avd: set the emulator name instead of using the env var, this
can be more intuitive and more expected than the env var.
* --help: to guide users how to use this script.
Also, the script now will print a list of available AVD names to
use instead of the less obvious error of no AVD name provided
which forces the user to manually find the names first.
This also, sets the COIN_CTEST_RESULTSDIR to CWD in case
it's not set, this is the case when running as a debug VM.
Pick-to: 6.5 6.8 6.10
Change-Id: Id90ca2fddda713645e9c1621e346d73f1dc85ea1
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Ubuntu 23.10 introduced new apparmor features and those prevent bitbake
to work correctly until a apparmor configuration file is installed.
Task-number: QTBUG-137321
Change-Id: Ib3f5faae07ea116012b1c66554211c53ca0e77e7
Reviewed-by: Toni Saario <toni.saario@qt.io>
This is needed for the selenium tests in qtdeclarative.
Change-Id: Iaca14244cd42c8b93150b48d6f37c647a2fd7d34
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
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>
Provision started to fail in python2 installation.
Task-number: QTQAINFRA-7459
Pick-to: 6.10 6.8 6.5
Change-Id: I3059615e8469bf935031791fa826452e01f4f972
Reviewed-by: Simo Fält <simo.falt@qt.io>
to follow the syntax like others.
Pick-to: 6.10 6.8
Change-Id: I64ce1b62d6a1caace624acd36c17be02005156c5
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
The directory and file did not exist in cache. Added them and this
change sets versioning to the nuget file name in cache.
Pick-to: 6.10
Task-number: QTQAINFRA-7264
Task-number: QTQAINFRA-7265
Change-Id: I4cf7ce1b547bd8cd4272a981de6845c06a4d1d79
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
This patch introduces 16KB page size support for Windows
host to do Qt for Android build.
Currently Windows only builds FFmpeg on armeabi-v7a ABI.
32-bit ABI's like armeabi-v7a do not support 16KB page
sizes so the build is done for 4KB page size.
Amends ce488ecbc125cb3484f1cbed592ac9e28867eb66
Task-number: QTBUG-139762
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: Ife7d56dd4a9f6d2892127571cab616b3f861dee6
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
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>
The previous comment referenced a specific bug report but didn't
clearly explain the intent. Replace it with a more general note
clarifying that comment reflow is disabled.
Task-number: QTCREATORBUG-30304
Pick-to: 6.5 6.8 6.9 6.10
Change-Id: I963a3585a20e089df5e5bf71b638e9fc4b15542f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Related to 33dd0de8fb51bb83230b8c2524d5aae28ffc799b
Task-number: QTBUG-138144
Change-Id: I2aa4a67f8c14de6645f5e821d269474646e616f3
Reviewed-by: Toni Saario <toni.saario@qt.io>
This causes issues with incorrect indentation of comments, as explained
in the linked bug report.
Task-number: QTCREATORBUG-30304
Pick-to: 6.5 6.8 6.9 6.10
Change-Id: I6951bc7bf42990b8671cf99b04b8ca7bed1d24cb
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Update also Xcode to 26 official release
Task-number: QTQAINFRA-7196
Change-Id: I3549f0b5e7a153cb2728a66a7d69ab4378e0acb6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
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>
The release config was replaced with rhel 9.2. There is no need
to export 8.10 artifacts anymore.
Pick-to: 6.10
Change-Id: I64fe163a1ab22f4275a8c449f18b3c51d71f8633
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Set Android 16 to use the _LATEST NDK instead, and create nightly
Android targets that use the _PREVIEW NDK.
Task-number: QTQAINFRA-7290
Task-number: QTQAINFRA-7291
Change-Id: I13688d2c624ba985b5d1fa7a62a2617844dfb9e2
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
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>
CI configs for new Qt on board repo.
Task-number: QTBUG-139550
Change-Id: I51a4ecf78088557a53a6754c0bcd661a1165b87f
Reviewed-by: Toni Saario <toni.saario@qt.io>
Update QR rule set and add user name mapping into email to enable
erosion notification.
Task-number: QTQAINFRA-7222
Change-Id: I98fa2f278c3fea7dde61477841ef03ce10223d58
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
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>
We provide qtwasmserver.py when running the selenium tests,
but the dependencies of it must be installed.
Change-Id: Ib12ff04ec6bed28e44b7b2517339669fde9f256a
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
We install the new driver alongside the old one,
to make sure that existing builds work unmodified.
The new chromedriver is needed for jspi to work.
We set environment variables:
-- for existing builds
BROWSER_FOR_WASM
CHROMEDRIVER_PATH
-- for new builds
WASM_BROWSER_JSPI
WASM_BROWSER_JSPI_ARGS
WASM_CHROMEDRIVER_PATH_JSPI
WASM_CHROMEDRIVER_PATH_JSPI_ARGS
Change-Id: Ia83d639ea2daf34cf44bd72bae455211fd64a441
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Invoke-NMake helper temporarily clears MAKE flags, such as
MAKEFLAGS='-j8', to prevent errors from GNU-style flags and to reduce
flakiness with NMAKE.
The helper is used to build zlib and to prevent:
error U1065: invalid option '-'
Pick-to: 6.10 6.9 6.8 6.5
Task-number: QTQAINFRA-7363
Change-Id: Ia80216677eba6fd8f8364741b6999e6155d678ab
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
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>
libclang-v100-dyn.sh had the libclang version 10.0 hard coded in the
file name for the Windows scripts. All local provisioning scripts
calling the latter also had the same version hard coded in their
respective filenames. libclang-v100-dyn.sh also sets the version to be
downloaded in a local variable
There is a mismatch between file names and actually installed version
when the download version is modified.
Remote version from common installer and related local scripts.
Change-Id: I81773ff5a834b6f396ce17af93c6510991de129a
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
With possibility to extend other drivers's versions into log
Task-number: QTQAINFRA-7168
Pick-to: 6.10 6.9 6.8
Change-Id: Ib10887fb904a75ccbb91bef2e9be0e83625da784
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Target jammy-arm64-debian-pkg-packaging fails in
waitLoop function, which is also used by Ubuntu platforms.
Fix by extending wait loop for lock paths:
- /var/lib/dpkg/lock
- /var/lib/apt/lists/lock (new)
Task-number: QTQAINFRA-7361
Change-Id: If8d5eacaeb72ea6a36496093bc5c248f61997afb
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
This patch updates the fully booted check for Android.
Old logic used init.svc.bootanim property and it's status
"stopped", but since Android 16 forward the status is kept
empty "" if "-no-boot-anim" emulator startup parameter is used.
The new logic simplifies old and relies only to two values:
sys.boot_completed and dev.bootcomplete. These work similary
from Android 9 to 16.
Task-number: QTQAINFRA-7299
Task-number: QTQAINFRA-7298
Pick-to: 6.10 6.9 6.8
Change-Id: I62efb0b05cd9792f92040dcb98a37f4bf14022e6
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
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>
The fetching from 3rd party repos has become very flaky.
To avoid mirrors throttling us and other flaky issues cache
the dependencies and set -o to enable offline mode.
This seems to also speed up the step considerably.
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I01663e60baa44ab828d8880ab8b346034a50b60e
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Ubuntu 24.04 installs Wayland by default. The X11 version is known to
be problematic, which is why ubuntu-24.04-x64-documentation-x11-tests
has been marked InsignificantTests.
Extend this to ubuntu-24.04-x64-x11-tests.
Task-number: QTBUG-137909
Task-number: QTBUG-136092
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I38f4bb5ca59255870dc6dbbb69e9ab339c679ddc
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
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>
This patch amends 133de012af95507ac485845d8de8f58da005df64.
The previous patch introduced a regression where the newer build paths
were not being passed correctly into 'fix_ffmpeg_dependencies.sh'
during FFmpeg Android builds.
This patch introduces a common function to resolve the installation
directory, which is then used both during compilation and during
FFmpeg patching.
Additionally, it introduces some basic error-handling when running
'fix_ffmpeg_dependencies.sh' so that we can catch this issue in
integration, in the future.
Pick-to: 6.10
Fixes: QTBUG-138615
Change-Id: I195ebd3034a3184bad32e75916a41a20838b2db1
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-08-31 16:38:36 +02:00
822 changed files with 5697 additions and 2518 deletions
# GNOME Classic was selected because there's an issue with Starndard (wayland display server). Autotest start failing because terminal session remains in Activities Overview.
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.