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>