As a drive-by, we fix the ffmpeg-installation-utils.sh script to install
FFmpeg source code into the expected target directory, instead of it
relying haphazardly on the name of the downloaded archive.
Same fix for install-ffmpeg.ps1.
Task-number: QTBUG-148761
Change-Id: Id765e01fbd402ee494a6a3ffec773d1dccc07c87
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
(cherry picked from commit 7fdc3c2e63)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
QT_USE_ANDROID_MODERN_BUNDLE is renamed in qtbase, so reflect
that in qt5 as well.
Task-number: QTBUG-145101
Change-Id: Ieae7c662b80b18f6b287bdd8c19e971932b0d171
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 6b51154f65)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
- Create platform config file for the 6.12 branch in tqtc-qml-preview-mcp repo
- Both QtMcp and QmlPreviewMcp have the same platforms supported
Change-Id: I9dd65966e6319ca51e8dfd3a9ef43a4f6a3db7ac
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
It is typically hard to beat AudioToolbox. We may be better off not
disabling them when building FFmpeg.
Change-Id: Iba10fa3fe2f972e408017743a0db67d0e1a04a47
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 51aab48f53)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Both the 7.1 and 8.0 SDP ships pre-2022g zone info so they need to be
updated with a newer one. Point both at zoneinfo-2026a-usr.tar.xz, which
is rooted at usr/ and so suits either SDP layout, extracted into each
SDP's own target directory.
tst_QDateTime's expectation for the affected rows keys off the zone data
rather than the OS as of I3103b98c, so no test-side coordination is
needed when the new template rolls out.
Change-Id: I75a2df6e0002886e3de91f0573f8083645307c39
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 2b92278152)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
tst_qbytearray_large autotest fails in CI on x86, because qemu is
started with 4Gb of memory and this test needs 4,7 Gb.
Fixes: QTBUG-149168
Change-Id: I0b6d753085c3e1f830cd705e6513003437909c64
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit e9ce684743)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
GCC = 15.1.0 MinGW = 12.0.0
Note: Win10 doesn't have MinGW targets anymore as those were moved
recently into Win11 (ddebcf8fd9)
But we still keep MinGW 15.1.0 installation as part of the Win10
provisioning as we did with Win11 before it had MinGW targets.
Reason is to keep installation working for just in case it's needed.
Task-number: QTQAINFRA-7483
Change-Id: I2cb2e2ef180b11cad61a5131ec47ea2ad207f338
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
(cherry picked from commit 295083dd9b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This switches vcpkg back to a specific tag of the master branch of our
fork. That's why we can remove the "reference" key from the
configuration too, since master is the default branch.
The updated protobuf port only builds the libprotoc compiler library
when the target triplet equals the host triplet, or when the libprotoc
or target-protoc feature is requested. Since we always build against
our custom *-qt triplets, which never match the host triplet, request
the libprotoc feature so that protobuf::libprotoc is available and
qtgrpc can build qtprotobufgen.
Change-Id: Ief4b12c57c082f94b2bcfae6fd02ebac7018a5c9
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit dd170ab8a4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Qt6Multimedia on QNX links libasound (QSA), but 8.0 mkqnximage ships no
audio at all, so qtspeech's tst_qtexttospeech dies at load with
"ldd:FATAL: Could not load library libasound.so.5". Add the library;
without io-audio the device list just stays empty.
Pick-to: 6.11
Change-Id: I467cb977313ce2496e2ab063c820929f2bfa591e
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit c899623a25)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The qtwebengine module is going to be released as separate component
this implies also that qtwebview module should be split into two parts:
* qtwebview-native one which implements qtwebview using platforms
native apis, released together with qt installer
* qtwebview-webengine one which compiles webengine backends (plugins) for different platforms, released together with webengine component
Instead of really splinting the sources of webview the idea is to keep
everything how it was.
For Qt5 integration .gitmodule overrides dependency files for modules,
webview builds now and tests without qtwebengine dependency meaning only
native part is builds and tested. The outcome is used for installer
packaging. However, module builds stay the same and qtwebview is still
built and tested after qtwebengine, therefore there are no changes in
development process.
Change-Id: I7fe87f8464b07683ec41a76511e8eec45941376d
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 8732522eea)
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This reverts commit 72a7e5c4db.
Reason for revert: Minor version specific internal repos are now
available
Pick-to: 6.11 6.8
Task-number: QTQAINFRA-7810
Change-Id: Ibdf7d847929175fce2aa3a1b4473695346821a96
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 065d6d06d9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Update provisioned cmake to 4.3.2.
Adjust the linux provisioning script to be architecture-aware.
Add the script to the provisioning of the Ubuntu-24.04-aarch64
platform, which was previously missing it and instead relied on the
system 3.28.3 CMake.
Pick-to: 6.11 6.8
Fixes: QTQAINFRA-7785
Change-Id: Ib2b6a55d7b994c95299ddf66546d9362b04823df
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit f408aa690a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The FFmpeg auto-detect mechanism will automatically pull in x11 as a
dependency if the development packages are found on the host. This makes
the FFmpeg unable to run macOS hosts that don't have the x11 package
installed.
This patch makes us explicitly avoid including it.
Change-Id: Ied33d25a60d5c9f54dcf37be3aad5cac0d2cbd03
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 3ea33c05bf)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The package is installed into a subdirectory of the user's home
directory, so there is no need to use sudo.
Change-Id: I06b455678234954eb98a5b61487548fc259520fa
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
(cherry picked from commit f0a6bdb87e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Now that we have individual builds for device, and arm64 and x86_64
simulator, as a workaround for lacking xcframework support.
Change-Id: Ifff43080b32bcab80e5cbf54f9b23ecd443480a6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 0979c63ba8)
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This patch upgrades the provisioned FFmpeg version to n8.1.2
As a prerequisite, it also installs the nasm package on relevant
platforms.
Task-number: QTBUG-139714
Change-Id: Ibc9dc21a9caeba812ff94e8c0b5a2a1ab3959c64
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
(cherry picked from commit a20ee395b0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Qt for Android builds run Gradle which needs to frequently
request download artifacts from Gradle and Maven, and that
can sometimes fail due to network issues, or worse in times
or many request might get temporarily blocked.
To avoid that, this uses the internal Gradle mirror. This
is done by installing an init script routing every
repository through the internal Nexus mirror.
Also, since Qt's build runs offline, ~/.gradle must be
fully prepared during provisioning, without reaching
public repositories. That's achieve by priming the cache
by building the shared proiect and seeding the Gradle
distribution from the internal mirror into the wrapper
cache, so no wrapper externally request Gradle.
Fixes: QTQAINFRA-6166
Task-number: QTQAINFRA-7942
Change-Id: I1e8dacf8ea5f3c492f12270c5f407bd4e5a2e756
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
(cherry picked from commit cdadd80b87)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Also have to update libclang-llvmorg to a version built with llvm-mingw 22.1.7
Task-number: QTQAINFRA-7552
Change-Id: I7e579eacb146718b34ec486598323fa85cf3bfb4
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 8804b39aa5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Upgrade to VxWorks 26.03, needs several fixes, which depend on each
other. But they fail on staging, because they are not staged together.
After the changes are in dev and 6.12 branch, the test insignificant
feature can be removed.
Change-Id: Idaeb846b757afe0e071fe2f0aed2b35333ca50fe
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 65104d023e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Boot several VxWorks QEMU instances per host and drive them
concurrently instead of running every autotest serially against a
single emulator. A 2x2 trial (2 instances, 2 cores each) already
halved the ARM autotest wall-clock time, so scale the launcher to an
arbitrary instance count.
vxworks_qemu_launcher.sh now takes an optional instance id and gives
each instance its own tap device, guest IP (172.31.1.10+N), MAC,
serial FIFO pair and QEMU log. Instance 0 keeps the previous addresses
so a single-instance run is unchanged. The shared bridge/tap setup is
serialized with flock and made idempotent so parallel launches do not
race on it. The SSH readiness probe targets the instance's own IP.
Emulator sizing:
- Intel: 4 instances, -smp 4 -m 4G each (KVM).
- ARM: 2 instances, -smp 2 -m 2G each (TCG).
Bump the x86_64 test configuration from VMSize8 to VMSize16 so the
host can accommodate 4 instances x 4 cores / 4 GB. ARM stays on
VMSize8 (2 x 2 cores).
Fixes: QTBUG-147569
Change-Id: Ic2d7912bdac22d71a3424d14b5000cbef89f61a6
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 20c9b61cf6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
building against nvidia-codec-headers 12 bumps the minimum requirement
to driver version 520 (released october 2022). This should still give us
good coverage on most devices in 2026, while also enabling hardware AV1
encoders.
Change-Id: If345095f1a2aa635f3fb1e343e47d51ba07ee4ec
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 81f3a57d3b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Toolchain updated to newer version and related library version updates done.
Added sshd-session as it's now needed by SSH Daemon.
Pick-to: 6.11 6.8
Change-Id: Iebf22f27c33709902485bd034c9442659c1b54cc
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 14aeaae7de)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Add Qt Gradle plugin to the provisioning Gradle cache to avoid
potential fetching on each build in qtdeclarative tests.
Pick-to: 6.11 6.8
Fixes: QTBUG-147567
Change-Id: I2ac5ef09b958e50d808a024479ee6d4ed111aff0
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit 9969af72b5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Add feature-delivery plugin to the provisioning Gradle cache
to avoid potential fetching on each build in qtbase tests.
Pick-to: 6.11 6.8
Change-Id: Ie9126114287aff77abcd2f68bfff4d8dc25fa6a9
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit 4549003489)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Xcode 27 no longer ships a universal iOS simulator runtime, so our
trick of building fat binaries for iOS no longer works.
As a stop-gap towards XCFrameworks we build simulator and device
individually, so that we can package them up in the SDK as two
components next to each other.
This does break the convenience of switching between simulator and
device within the same Xcode project, but use through Qt Creator
is not affected as that is always a single-SDK build of the user
project.
Change-Id: I7115f4db7623fff2b539553b72c875cf25d3a3a7
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit b49f3297b8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
For the purpose of getting the list of already initialized
submodules, it suffices to parse only the local .git/config file
of a repository.
This avoids including the output of a global ~/.gitconfig file, which
might contain bracket symbols, and thus break parsing of active
submodules.
Pick-to: 6.11 6.8
Fixes: QTBUG-145559
Change-Id: Ie08d42f4fa7c9b9e975a027dd6f20419936a606d
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit b679f634ea)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
More recent 7z requires additional switch due to multi hop links.
Change-Id: Ia023bf8d662d4c842acc97498e0b89cf2a2a167d
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
(cherry picked from commit dd13fa7b41)
This ensures that the RunCMake.InitRepository test will not fail due
to an outdated checkout of the qlitehtml repository in the Coin git
mirror.
Pick-to: 6.11 6.8
Fixes: QTBUG-148458
Change-Id: If37fdf1c1ff7e3c2337efe2da06570627e4dbccd
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit 9136724f2e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Scripts were executed with 'sh', because not all provisioning scripts
were executable. That lead to path mismatches.
The script halted on errors. Manual provisioning might not always work.
Drop the 'sh', because all provisioning scripts are executable now.
Add a command line option to toggle whether to halt on errors or not.
On Windows, don't only consider ps1, but also exe, bat, cmd files.
Change-Id: Ife8b0becc91b1d855d29d20e123016ce87dc80bb
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit c425276693)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
There's a tty check in qt_internal_foreach_repo_run.
The code reads tty_exit_CODE rather than the correct tty_exit_code.
In a non-tty context (when stdout is a pipe), /usr/bin/tty prints
"not a tty" and has a non-zero exit code, leading to stdout being
redirected to a file named "not a tty" in every submodule.
Use the right name.
Pick-to: 6.11 6.8
Change-Id: I6bba544aa0e3bbe2f09925cae56f303e70643681
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit 8e218fec47)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>