Compare commits

...

139 Commits

Author SHA1 Message Date
Tuomas Vaarala 5ad4448629 Coin: QNX 8.0 QEMU: drop the dead nslookup mapping
nslookup ships only in the 7.1 SDP, never in 8.0. The mapping was
copied in when the 710 and 800 qemu trees were split, and mkqnximage
has warned and skipped it ever since. Remove it from the 8.0 tree; 7.1
keeps its own, where the file exists.

Pick-to: 6.12 6.11
Change-Id: I18cbb621233a736b590e5aa5c9170e3a02e2ee04
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-09-03 04:39:22 +00:00
Tuomas Vaarala 81c7c49f23 Coin: QNX 8.0 QEMU: rebuild fc-match against the 8.0 SDP
The image's fc-match is a 2021 QNX 7.1 binary needing libc.so.5 and
libfontconfig.so.1. QNX 8.0 has libc.so.6 and libfontconfig.so.17, so
the loader cannot start it and tst_qfont::defaultFamily fails all five
rows. Point 8.0 at a new archive built from fontconfig 2.17.1 against
the 8.0 SDP, and replace the comment that wrongly described the tzdata
package with the real recipe. Verified on a QEMU image: all five
generics resolve to DejaVu Sans, matching QFont::defaultFamily(). 7.1
keeps the old archive, where the binary still works.

Pick-to: 6.12 6.11
Change-Id: I0b6b00f6ee627dfa9edd4c0c599d1582def01099
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-09-03 04:39:17 +00:00
Marianne Yrjänä 6683a395e8 Provisioning: Update QNX7.1 SDP package
Previous SDP update missed windows tools which are need by RTA. Windows
tools now added back to package. In addition, kernel and OpenSSL updated
to newer version with bugfixes.

Fixes: QTBUG-149349
Pick-to: 6.12 6.11 6.8
Change-Id: I65a35e6e8388a8eb7ddfb34f2be66c6817146011
Reviewed-by: Tuomas Vaarala <tuomas.vaarala@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-09-03 04:39:13 +00:00
Tuomas Vaarala 6920b96315 Coin: QNX 8.0: update SDP to GA8.0.5
The SDP we shipped was a hand-composed package set whose fsnotify
component dated from 2024-11-23 (fs.notify 0.0.2.02005). On that build
QNX never wakes a blocked poll() or select() when an inotify event
arrives, so QSocketNotifier never fires and QFileSystemWatcher's native
engine silently delivers nothing. That is the sole cause of the
tst_qfilesystemwatcher failures on this platform (QTBUG-149526).

GA8.0.5 ships fs.notify 0.3.0.00006, which fixes it. Rather than
cherry-pick the one package, bring the whole SDP to GA8.0.5: all 249
packages the com.qnx.qnx800.patchset805 manifest pins are now at their
GA8.0.5 versions, verified against the manifest with no deviations.

GA8.0.5 also ships mkqnximage 0.5.0, whose inputs/data.build gained a
built-in "var/etc/hosts=etc/hosts" entry and fixed the syntax of the
var/etc/resolv.conf symlink entry. Both are emitted before the
data_files.custom block and the first entry for a path wins, so they
silently shadowed our own hosts and resolv.conf. That left the image
with the stock QNX /etc/hosts - none of the statically mapped test
server names - and a dangling /etc/resolv.conf symlink. The hosts
entry is dropped in the SDP tarball; resolv.conf is provisioned here
at var/dhcpcd/resolv.conf, which is what the symlink now points at.

Verified with the unmodified upstream test on both architectures -
23 passed, 0 failed, 0 skipped on an aarch64 Raspberry Pi 5 and on the
x86_64 QEMU image built from this SDP. Previously 16 passed, 7 failed.
A standalone inotify poll() reproducer now exits 0 on both, and a
booted image resolves the test server names again.

Pick-to: 6.12 6.11
Task-number: QTBUG-149526
Change-Id: I9275aef6c24f693f3115265c51d109d2b2254c7a
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-09-03 04:39:08 +00:00
Simo Fält e96543ec42 ohos: Disable bic test for HarmonyOS
To follow same practice with Android.

Pick-to: 6.12
Change-Id: I2af7ca553f105060200a7f3385c954a16e578465
Reviewed-by: Liang Qi <liang.qi@qt.io>
2026-09-03 04:39:04 +00:00
Qt Submodule Update Bot eaa6423f36 Update submodules on 'dev in qt/qt5'
Change-Id: I7d6b2431ccdc6efc3b3882aa695270194ea5a783
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-09-01 10:03:54 +00:00
Simo Fält 33df950977 Provisioning: Run Python certificate installer synchronously
Pick-to: 6.12 6.11
Change-Id: I18e8b8256ad66313166dd6e01ea0a030fa81aee7
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2026-08-30 08:59:08 +00:00
Qt Submodule Update Bot cb8860d23a Update submodules on 'dev in qt/qt5'
Change-Id: I18c91665f579291c585c9aabf8ee0dcd91bb81ab
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-08-29 02:01:58 +00:00
Assam Boudjelthia 6b51154f65 Android: use QT_ANDROID_GRADLE_MULTI_MODULE in target test args
QT_USE_ANDROID_MODERN_BUNDLE is renamed in qtbase, so reflect
that in qt5 as well.

Pick-to: 6.12
Task-number: QTBUG-145101
Change-Id: Ieae7c662b80b18f6b287bdd8c19e971932b0d171
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-08-29 02:01:57 +00:00
Elias Toivola b03667a922 RHEL 10 & 9: install 7zip-standalone-all instead of p7zip
p7zip in RHEL-10 has a pathing bug reported in:
https://bugzilla.redhat.com/show_bug.cgi?id=2373874

Installing 7zip-standalone-all instead avoids this issue. It'll also be
installed in RHEL-9 for more consistency.

This amends 204528c5bd

Pick-to: 6.12 6.11 6.8
Change-Id: Iae15f27eab01166bd77feba5458d46210f99fa33
Reviewed-by: Patrik Teivonen <patrik.teivonen@qt.io>
2026-08-28 09:43:55 +00:00
Nils Petter Skålerud 7fdc3c2e63 Upgrade to FFmpeg n9.0.1
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.

Pick-to: 6.12
Task-number: QTBUG-148761
Change-Id: Id765e01fbd402ee494a6a3ffec773d1dccc07c87
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
2026-08-28 05:26:15 +00:00
Jani Heikkinen 790d69eff5 Qt 6.12: Add offline documentation build config for qtwebengine
Change-Id: Ib5ac73f0de663d8a40349e5f79ffb74bc1ab3541
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
(cherry picked from commit 9da885a19b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2026-08-27 10:20:34 +00:00
Saman Hashemi df694084d7 Add more supported platforms for tqtc-qtmcp and tqtc-qmlp-preview-mcp
Change-Id: Ia2e7b881bb23d9df980cfc01c01a3e6a20146318
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
2026-08-27 10:20:31 +00:00
Tim Blechmann 51aab48f53 FFmpeg: iOS - build with AudioToolbox
It is typically hard to beat AudioToolbox. We may be better off not
disabling them when building FFmpeg.

Pick-to: 6.12
Change-Id: Iba10fa3fe2f972e408017743a0db67d0e1a04a47
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2026-08-27 07:25:57 +00:00
Qt Submodule Update Bot 0e12d8a718 Update submodules on 'dev in qt/qt5'
Change-Id: Ifcbac1064a0b528b256b2086ea25b006c50b1c3b
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-08-26 15:30:21 +00:00
Elias Toivola 204528c5bd RHEL: install more supported formats for p7zip
This simplifies tasks in RTA/Jenkins/Packaging. The plugin installs
/usr/bin/7z so linking it with 7za is no longer needed.

Pick-to: 6.12 6.11 6.8
Change-Id: I1dead3d1f138b1a99e3987068b607d947ef94c0c
Reviewed-by: Patrik Teivonen <patrik.teivonen@qt.io>
2026-08-26 04:26:43 +00:00
Tuomas Vaarala 2b92278152 Coin: QNX: share one IANA tzdata 2026a archive between 7.1 and 8.0
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.

Pick-to: 6.12
Change-Id: I75a2df6e0002886e3de91f0573f8083645307c39
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-25 18:40:42 +00:00
Janne Juntunen 333b23bd43 Enable packaging for tqtc-qml-preview-mcp
Switch the platform set from CI-only developer/test configurations to
the Packaging-enabled ones so COIN produces Qt Installer content for
the QML Preview MCP server on all target platforms:

 - Linux x86_64: rhel-9.6
 - Linux arm64: ubuntu-24.04-arm64
 - Windows x86_64: windows-11_24H2-msvc2022
 - Windows arm64: windows-11_23h2-arm64-msvc2022 (native)
 - macOS x86_64+arm64: macos-universal-on-arm64

rhel-9.6 and the two Windows configurations run tests in their own
work items; the remaining builds get test-only companion
configurations (offscreen on Linux arm64, macOS 14 on both
architectures). The repository has no tests yet, but the test
work items will take effect as soon as tests are added.

Change-Id: Id3b1a807997478fb419210c3bea7762102036c60
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-25 06:30:25 +00:00
Qt Submodule Update Bot 9ed1386484 Update submodules on 'dev in qt/qt5'
Change-Id: I17cbecee8a133e4fa62ad591270643c45a31e029
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-08-24 05:24:56 +00:00
Elias Toivola 1a8bf86bf7 Ubuntu 22.04 arm64 RTA: disable proposed apt repos
Change-Id: Ifff67d4a67dbf3b71a196b9b3795167d0b6dc161
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-21 06:51:28 +00:00
Elias Toivola 49c5952b0c Ubuntu 22.04 arm64 RTA: allow apt downgrade on libicu
This unblocks libicu-dev apt error.

Change-Id: I1475d6a70cac4dc41cab3de438f1f294af2fd807
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
2026-08-21 06:51:25 +00:00
Jukka Jokiniva 092792a1f4 Update CINetworkTest application version
Task-number: QTQAINFRA-8035
Pick-to: 6.12
Change-Id: I5b7df957dd9688b4357426dd4996f6bd56d755b4
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2026-08-21 04:17:29 +00:00
Tero Heikkinen 295083dd9b Update MinGW to v15.1.0 (x86_64)
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.

Pick-to: 6.12
Task-number: QTQAINFRA-7483
Change-Id: I2cb2e2ef180b11cad61a5131ec47ea2ad207f338
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
2026-08-20 04:22:10 +00:00
Michal Klocek 8732522eea Drop qtwebengine from qt5 integrations
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.

Pick-to: 6.12
Change-Id: I7fe87f8464b07683ec41a76511e8eec45941376d
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2026-08-19 12:06:07 +00:00
Tim Blechmann aea8ccd137 init-repository: add --depth argument
There are cases when someone may only want to do a shallow clone, e.g.
in CI scenarios.
Adding a --depth argument to reflect to allow shallow clones of the
(sub)modules.

Change-Id: Ia57f6d70c61eeb8f9828c467c8a4cf31c1d9c573
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-08-19 12:06:04 +00:00
Elias Toivola d4992d4da4 Linux: add a distro version check to prevent unintentional updates
Add a helper script to check the reported distro version at
/etc/os-release at the start of a provisioning and at the end of it,
compare them, and throw an error if there is any difference even at the
most minor patch level e.g. Ubuntu 24.04.0 -> 24.04.1.

Task-number: QTQAINFRA-7810
Pick-to: 6.12 6.11 6.8
Change-Id: If4f1e997aef40037ee876bc3843ed09a5412615f
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-19 12:06:01 +00:00
Karim Pinter e9ce684743 [VxWorks] increase the memory for qemu for x86
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
Pick-to: 6.12
Change-Id: I0b6d753085c3e1f830cd705e6513003437909c64
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-08-19 12:05:57 +00:00
Tuomas Vaarala c899623a25 Coin: QNX 8.0 QEMU: add libasound.so.5 to the system image
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.12 6.11
Change-Id: I467cb977313ce2496e2ab063c820929f2bfa591e
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-19 12:05:53 +00:00
Liang Qi 3ed07a35b3 coin: also build HarmonyOS on macOS arm64
Pick-to: 6.12
Change-Id: I35b04541f930745e4e10125582a8a810f3aaaaf5
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-19 12:05:50 +00:00
Joerg Bornemann dd170ab8a4 coin: Update vcpkg to 2026.06.01-qt
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.

Pick-to: 6.12
Change-Id: Ief4b12c57c082f94b2bcfae6fd02ebac7018a5c9
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-08-19 12:05:47 +00:00
Jukka Jokiniva f86d819c55 Make RHEL 10 autotests blocking in CI
[CI Platforms]

Task-number: QTQAINFRA-7203
Task-number: QTQAINFRA-7202
Pick-to: 6.12 6.11
Change-Id: Iba9a9a93aa59ac15b8bf80550cf39597875f8c89
Reviewed-by: Frederic Lefebvre <frederic.lefebvre@qt.io>
2026-08-18 11:40:37 +00:00
Qt Submodule Update Bot 906b43060f Update submodules on 'dev in qt/qt5'
Change-Id: I30ec2ea34dc8f2c56feeb7058391cfe111597cfd
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-08-18 08:21:30 +00:00
Janne Juntunen 78e1c81b1e Add platform configuration for tqtc-qml-preview-mcp
Change-Id: Ie489eb21cd61e0edb55b658e09e0bf860f47750c
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-11 12:18:19 +00:00
Tor Arne Vestbø ab868d79a0 Build tests for iOS arm64 simulator in nightly test run
Pick-to: 6.12
Change-Id: Id8c3de8c8d39f2df722a6bef403467f98aff2073
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-08-11 08:12:49 +00:00
Robert Griebl 6326e57a40 LCov build: do a developer build for max code coverage in the tests
Not having a developer build for code coverage runs will skip a
significant chunk of unit tests that require Q_AUTOTEST_EXPORTS.

Change-Id: I05f889a7b0b1be5fb93cb633f109c5caec1cc63d
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-11 08:12:48 +00:00
Elias Toivola a60717f3fa RHEL 9: Use minor version specific repo-clones
Pick-to: 6.12 6.11 6.8
Task-number: QTQAINFRA-7810
Change-Id: I71fb2a868aca7aa80795a3ab9630f0ba79bef21e
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-06 19:22:17 +00:00
Elias Toivola 065d6d06d9 Revert^2 "Provisioning: Take repo-clones into use in RHEL 9"
This reverts commit 72a7e5c4db.

Reason for revert: Minor version specific internal repos are now
available

Pick-to: 6.12 6.11 6.8
Task-number: QTQAINFRA-7810
Change-Id: Ibdf7d847929175fce2aa3a1b4473695346821a96
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-06 19:22:15 +00:00
Assam Boudjelthia fec1887c6e Android: bump to Gradle 9.5.1 and AGP 9.2.1
Following Qt 6.12 release 3rd party components update.

Pick-to: 6.12
Task-number: QTBUG-146315
Change-Id: I688abb791777ac12808f479428cfc95d07f9460b
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2026-08-06 04:25:28 +00:00
Assam Boudjelthia cdadd80b87 Coin: use the internal Gradle mirror instead of the upstream
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.

Pick-to: 6.12
Fixes: QTQAINFRA-6166
Task-number: QTQAINFRA-7942
Change-Id: I1e8dacf8ea5f3c492f12270c5f407bd4e5a2e756
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2026-08-06 04:25:25 +00:00
Tony Sarajärvi 8804b39aa5 Update llvm-mingw to 22.1.7
Also have to update libclang-llvmorg to a version built with llvm-mingw 22.1.7

Pick-to: 6.12
Task-number: QTQAINFRA-7552
Change-Id: I7e579eacb146718b34ec486598323fa85cf3bfb4
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-08-06 04:25:22 +00:00
Nils Petter Skålerud 3ea33c05bf macOS, FFmpeg: Explicitly do not link X11 libraries
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.

Pick-to: 6.12
Change-Id: Ied33d25a60d5c9f54dcf37be3aad5cac0d2cbd03
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2026-08-06 04:25:19 +00:00
Alexandru Croitor f0a6bdb87e Provisioning: Don't sudo install grpc on all unix platforms
The package is installed into a subdirectory of the user's home
directory, so there is no need to use sudo.

Pick-to: 6.12
Change-Id: I06b455678234954eb98a5b61487548fc259520fa
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
2026-08-06 04:25:17 +00:00
Nils Petter Skålerud a20ee395b0 Upgrade to FFmpeg n8.1.2
This patch upgrades the provisioned FFmpeg version to n8.1.2
As a prerequisite, it also installs the nasm package on relevant
platforms.

Pick-to: 6.12
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>
2026-08-06 04:25:14 +00:00
Alexandru Croitor f408aa690a CMake: Update provisioned CMake to version 4.3.2
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.8 6.11 6.12
Fixes: QTQAINFRA-7785
Change-Id: Ib2b6a55d7b994c95299ddf66546d9362b04823df
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2026-08-06 04:25:11 +00:00
Tor Arne Vestbø 0979c63ba8 Remove universal build of Qt for iOS
Now that we have individual builds for device, and arm64 and x86_64
simulator, as a workaround for lacking xcframework support.

Pick-to: 6.12
Change-Id: Ifff43080b32bcab80e5cbf54f9b23ecd443480a6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-08-04 05:08:45 +00:00
Qt Submodule Update Bot 80f542aa53 Update submodules on 'dev in qt/qt5'
Change-Id: Id1b23747190bd739e4dcbff8e8827c41c549a203
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-08-03 19:02:35 +00:00
Karim Pinter 4d6a473bed Update coin to VxWorks 26.03
VSB and VIP updated to VxWorks 26.03. NFS updated to v3 UDP only.
Qt home, cache, tmp directory moved to ramfs with HRFS formatting.

Task-number: QTBUG-145458
Change-Id: I954bac54584797d77429937a2e3edec6da5a73fd
Pick-to: 6.12
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-31 05:07:34 +00:00
Toni Saario 4bb35ed3bb Update VxWorks libs to 26_03
Pick-to: 6.12
Change-Id: I6157d0645dcfdebda2f2bb34e4736c832b4f5956
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2026-07-31 05:07:31 +00:00
Karim Pinter 65104d023e Set VxWorks QtBase tests insignificant till all the problems are fixed
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.

Pick-to: 6.12
Change-Id: Idaeb846b757afe0e071fe2f0aed2b35333ca50fe
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-31 05:07:28 +00:00
Karim Pinter 20c9b61cf6 Coin: Run VxWorks QEMU autotests against parallel emulators
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
Pick-to: 6.12
Change-Id: Ic2d7912bdac22d71a3424d14b5000cbef89f61a6
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-31 05:07:25 +00:00
Tor Arne Vestbø b49f3297b8 Add independent iOS simulator and device builds
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.

Pick-to: 6.12
Change-Id: I7115f4db7623fff2b539553b72c875cf25d3a3a7
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-07-28 09:34:47 +00:00
Tim Blechmann 81f3a57d3b ffmpeg: bumb nvidia codec headers to nv-codec-headers to 12.0.16
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.

Pick-to: 6.12
Change-Id: If345095f1a2aa635f3fb1e343e47d51ba07ee4ec
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2026-07-28 04:51:43 +00:00
Robert Griebl 6f4085c84d Add an Ubuntu 24.04 lcov configuration
Also update lcov to a modern 2.4 release.

Change-Id: Iea14af47a3dbd509fdd735e60f314c3101bbc3b4
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-28 04:51:42 +00:00
Marianne Yrjänä 14aeaae7de CI: Update QNX7.1 toolchain
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.12 6.11 6.8
Change-Id: Iebf22f27c33709902485bd034c9442659c1b54cc
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-22 19:40:32 +00:00
Alexandru Croitor b679f634ea CMake: Only parse local .git/config to get initialized submodule
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.8 6.11 6.12
Fixes: QTBUG-145559
Change-Id: Ie08d42f4fa7c9b9e975a027dd6f20419936a606d
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2026-07-22 19:40:29 +00:00
Alexandru Croitor 9136724f2e coin: Fetch latest qlitehtml refs in Coin mirror during Nightly test
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.8 6.11 6.12
Fixes: QTBUG-148458
Change-Id: If37fdf1c1ff7e3c2337efe2da06570627e4dbccd
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2026-07-22 19:40:26 +00:00
Elias Toivola 44aa931e29 Windows 10: remove old provisioning directories again
After 42370c3e0b was merged, another patch
reintroduced the old w10 directories. Remove them again.

This amends 862c3df5bf

Pick-to: 6.12
Change-Id: I3413d88bd14fdd61ea50bb8966d2c14311ed5136
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
2026-07-22 19:40:22 +00:00
Simo Fält dd13fa7b41 Provisioning: Fix 7z extract commands on RHEL 9.6
More recent 7z requires additional switch due to multi hop links.

Change-Id: Ia023bf8d662d4c842acc97498e0b89cf2a2a167d
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2026-07-22 19:40:19 +00:00
Simo Fält d4fc6f01a9 Add nightly config for Pyside6 Axivion scan
Pick-to: 6.12
Task-number: QTQAINFRA-5563
Change-Id: If44a576e831ae31ebd6efa4e8fe64521aa83602b
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2026-07-17 04:59:11 +00:00
Axel Spoerl c425276693 Harden qt_run_all.sh / ps1
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.

Pick-to: 6.12
Change-Id: Ife8b0becc91b1d855d29d20e123016ce87dc80bb
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-17 04:59:09 +00:00
Elias Toivola 654c9c2b03 Windows 11 24h2: clean old/unused installations
Pick-to: 6.12
Task-number: QTQAINFRA-7912
Change-Id: Idcb4ebdf6df88d9eb6fe8e6c555688fba53e4a73
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-15 09:52:35 +00:00
Alexandru Croitor 8e218fec47 CMake: Fix git-qt-foreach output being lost in non-tty invocations
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.8 6.11 6.12
Change-Id: I6bba544aa0e3bbe2f09925cae56f303e70643681
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2026-07-15 09:52:28 +00:00
Simo Fält 444670374a COIN: Add nightly config for Harmony OS developer build
Pick-to: 6.12
Change-Id: I4793f7e6a368031848696a7fd7f81df6775e9cee
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
2026-07-15 09:52:25 +00:00
Joerg Bornemann 02df2a107d Windows: add Run-Executable-With-Timeout and mitigate Notepad++ hang
Add Run-Executable-With-Timeout, a wrapper around Run-Executable that
takes a timeout in seconds as its first argument. Run-Executable gains
an internal -TimeoutSeconds parameter (default 0 = no timeout, all
existing callers unaffected) used by the new wrapper.

Apply a generous timeout to the Notepad++ silent installer, which was
observed hanging for ~14 hours and causing provisioning CANCELED
failures on Windows 11 24H2 machines.

Cache the process handle ($null = $p.Handle) immediately after
Start-Process -PassThru. Without this, $p.ExitCode reads back as $null
after the process exits, which made Run-Executable spuriously throw
"Process <exe> exited with exit code " (blank) on successful runs.
This race was observed in provisioning logs for certutil.exe in the
certificate-updates step.

Change-Id: Icc66b670a3d40d67d1b6251913a06dbffeffaec2
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-15 09:52:23 +00:00
Elias Toivola 42370c3e0b Remove unused Windows provisioning directories
Remove versions that are not in use in branches older than 6.12. When we
want to have pick-to's to lts-6.8 (and beyond) after this patch, they
need to have their own separate patches created.

Windows OS:es which are left:
- Windows 10 22h2 x86_64
- Windows 11 23h2 arm64
- Windows 11 24h2 x86_64

Pick-to: 6.12
Task-number: QTQAINFRA-7912
Change-Id: I70c2df706e5ff36cee0563b59243883a7012e6b1
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-15 09:52:20 +00:00
Qt Submodule Update Bot 34e6afee88 Update submodules on 'dev in qt/qt5'
Change-Id: I13c4dcc4fd1ba2e81e6d72c742cf839a4d76d6cd
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-07-10 04:25:21 +00:00
Ari Parkkila eb6aff6f96 Add platform configs for meta-qbsp-mediatek
CI configs for new Qt Onboard repo.

Task-number: QTBUG-132475
Change-Id: Idfd4846295fbd92e4bca23edcf96a56a48bdfa08
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-07-09 06:09:11 +00:00
Qt Submodule Update Bot 5a7814e918 Update submodules on 'dev in qt/qt5'
Change-Id: I7ab36d796ca1798256ee6289e8e414b91315d073
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-07-08 16:03:00 +00:00
Qt Submodule Update Bot 41b759dba7 Update submodules on 'dev in qt/qt5'
Change-Id: Ifa4a19daae02e8da179eaf1f4c76cab2ab371248
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-07-06 23:18:02 +00:00
Assam Boudjelthia 9969af72b5 Provisioning: add Qt Gradle Plugin to the Gradle cache project
Add Qt Gradle plugin to the provisioning Gradle cache to avoid
potential fetching on each build in qtdeclarative tests.

Pick-to: 6.12 6.11 6.8
Fixes: QTBUG-147567
Change-Id: I2ac5ef09b958e50d808a024479ee6d4ed111aff0
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-07-02 19:40:22 +00:00
Assam Boudjelthia 4549003489 Provisioning: add feature delivery to the Gradle cache project
Add feature-delivery plugin to the provisioning Gradle cache
to avoid potential fetching on each build in qtbase tests.

Pick-to: 6.12 6.11 6.8
Change-Id: Ie9126114287aff77abcd2f68bfff4d8dc25fa6a9
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-07-02 19:40:15 +00:00
Simo Fält d059dc0446 COIN: Fix HarmonyOS nightly build's config id
Pick-to: 6.12
Change-Id: I86e3b8e563553feb233692542f9b37f034e32a61
Reviewed-by: Liang Qi <liang.qi@qt.io>
2026-06-30 11:51:53 +00:00
Liang Qi cb7d1367be coin: also generate bat files on Linux host for HarmonyOS build
Pick-to: 6.12
Task-number: QTBUG-147252
Change-Id: Iff66606f01a0fcd843d121cccf8d1cd1be94876b
Reviewed-by: Patrik Teivonen <patrik.teivonen@qt.io>
2026-06-30 07:56:45 +00:00
Elias Toivola 862c3df5bf Windows 10: set private network
Changed firewall configurations in CI network caused W10 VMs to prompt
to select public/private network profile setting for the changed
network.

Set the network profile with a script to prevent this prompt reappearing
in build/test VMs.

Pick-to: 6.12 6.11 6.8
Change-Id: I6c71fd31cd3982742254edf508a0ccfc3d2ceeb6
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-06-29 16:04:48 +00:00
Simo Fält e37b588b62 CI: Update CMake deb package for sbuild
Also cleaning up libicu debian packages that are not used anymore.

Pick-to: 6.12
Task-number: QTBUG-146967
Change-Id: I9351ed0065da72457fadabbc69dffd687373b746
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-06-29 13:08:18 +00:00
Marianne Yrjänä 28c27e1256 QNX: Add unwinder libraries to Qemu image
On QNX8 backtrace requires unwinder. Adding unwinder libraries to QNX
x86 Qemu image.

Change-Id: If29f910720036501f0ee4ce47106507b2daf07aa
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-29 13:08:16 +00:00
Qt Submodule Update Bot 129c6abe37 Update submodules on 'dev in qt/qt5'
Change-Id: I19431ab1a552ecc545cd2b3faf4d7a82e954dac0
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-06-26 14:19:05 +00:00
Elias Toivola b5af653382 Set an ARM64EC config to run tests on arm64 hosts
Set them as InsignificantTests.

Pick-to: 6.12
Task-number: QTQAINFRA-7579
Change-Id: I58df5bcd55e9b4e11a733c0a0576d6ec2f743ebe
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2026-06-25 21:16:53 +00:00
Elias Toivola ed632de606 ARM64EC: turn off QDoc
Pick-to: 6.12
Task-number: QTBUG-147036
Change-Id: I5fea2c54d4a6d52710564d739c30f34375ad4b79
Reviewed-by: Topi Reinio <topi.reinio@qt.io>
2026-06-25 21:16:52 +00:00
Elias Toivola 8f3e7cd7eb ARM64EC: disable qtwebview build
qtwebview build is effectively disabled by unsetting WEBVIEW2_SDK_ROOT.

Pick-to: 6.12
Task-number: QTBUG-146988
Change-Id: I68b0e0e87694a0dab8760a40e3e5aee9d6460ef2
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
2026-06-25 21:16:52 +00:00
Elias Toivola e84b449ab5 ARM64EC: skip qtwebengine and qtpdf builds
Pick-to: 6.12
Task-number: QTBUG-146860
Change-Id: Ifc71bd6f77945093546e71dc22c22e77d6631bca
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
2026-06-25 21:16:51 +00:00
Elias Toivola fc6d6d66cc Windows: add ARM64EC target
This target builds Qt6 as arm64ec on a x86_64 host. The provisioning is
done through x86_64 so many of the 3rd party dependencies (e.g. ffmpeg)
are x86_64.

Pick-to: 6.12
Task-number: QTQAINFRA-7579
Change-Id: I66b2a6b70667586cddf1df8b96c3e1149fac4567
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2026-06-25 21:16:51 +00:00
Alexandru Croitor 341fe4e602 coin: Add syft to provisioning
Syft is a tool that scans package manager manifest or lock files and
generates an SBOM (Software Bill of Materials) file based on the
found packages. It can generated both CycloneDX and SPDX SBOM formats.

The tool will be used by the Qt for Python project to generate SBOMs
based on the python packages used during the build.

The tool is provisioned on all the platforms that have the
GenerateSBOM feature.

Pick-to: 6.8 6.11 6.12
Task-number: PYSIDE-3366
Change-Id: I1369f7b1b041b1fc0d8a56a20446df322d26d33a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2026-06-25 04:04:54 +00:00
Tor Arne Vestbø 42039d0819 Add nightly iOS test configuration
Change-Id: Iace7f21a42d6fc1992b83212638e3ae783a6f768
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-25 04:04:50 +00:00
Tor Arne Vestbø b7a2e3ba1c Install universal iOS simulator
Change-Id: Ic2c353a193515dc7d388a06ce911e146c8fea5bc
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-25 04:04:47 +00:00
Simo Fält 9b7e7d5852 COIN: Update Debian rules branch
Pick-to: 6.12
Change-Id: Ie9b4511fb2f7ea8b3baafb79c212cc28cc2a7bde
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-06-25 04:04:45 +00:00
Elias Toivola 99c69904b8 Windows 11 x86_64: update Visual Studio 2022 to 17.14.33
Tier-1 image changes in -73:
- MSVC 14.44.35211.0
- Windows SDK 10.0.26100.7705
- installed .NET SDK
- Visual Studio now has 'ci_msvs' user added with a license to use
  debugger tools.
[CI Platforms]

Pick-to: 6.12 6.11 6.8
Task-number: QTQAINFRA-7726
Task-number: QTQAINFRA-5417
Change-Id: I67d5605c544228daa6bac502ac487d1d5060fd81
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-25 04:04:42 +00:00
Liang Qi adcff73e24 coin: update id name for HarmonyOS builds
We follow the name scheme like Android ones. And we upgraded to API
23 in 548f241460 .

Pick-to: 6.12
Change-Id: Ibe1a221ee561c50c432874987f8926da1b46f797
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-22 10:35:13 +00:00
Liang Qi 609c6903c7 coin: remove platform configs for HarmonyOS in qtbase.yaml
It was added into cmake_platforms.yaml now.

Pick-to: 6.12
Change-Id: I2d20e582c3c1ec2b8f13ed09a0c7d42a0324697a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-22 10:35:10 +00:00
Liang Qi 156feaa139 Revert "coin: add platform configs for HarmonyOS - step 2"
This reverts commit 38e3864f3e.

It was added into cmake_platforms.yaml now.

Pick-to: 6.12
Change-Id: I1f24aef6f2d2a20889bd00acc1f83f2ab3d9b5dc
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2026-06-22 10:35:08 +00:00
Liang Qi f898c700d3 coin: add platform configs for HarmonyOS into cmake_platforms.yaml
Pick-to: 6.12
Change-Id: I51c1b3479a884ab97b1deb10102ebb0a9270955b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-22 10:35:06 +00:00
Elias Toivola 7c5594ea08 Android: Extract NDK packages into their own versioned dirs
This prevents sneaky NDK overwrites if there is no versioning in the
.zip root directory.

Pick-to: 6.12 6.11 6.8
Task-number: QTQAINFRA-7069
Change-Id: Ib0bd30c27da316735001bc5027d1dac1f8ead703
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2026-06-21 06:52:00 +00:00
Simo Fält bb7ae5f3dc CI: Add HarmonyOS nightly test config
Pick-to: 6.12
Change-Id: Ib224c9eaceae19a5c7dd1c1e85f8e0a65556d470
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-06-21 06:51:57 +00:00
Jukka Jokiniva 75db654544 Install qemu-guest-agent on Ubuntu-24.04-aarch64
Task-number: QTQAINFRA-7938
Change-Id: I963cc027207bb75123cbd20e6d3925e7ce6022e8
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
2026-06-21 06:51:55 +00:00
Joerg Bornemann 2882b5615b Coin: Force bundled libtiff/libwebp in Linux desktop packaging
The TIFF and WEBP image format plugins opportunistically link the system
libtiff/libwebp whenever find_package() succeeds. When the Linux release
packaging host moved from RHEL 8.10 to RHEL 9.6, libtiff-devel became
present (pulled in transitively via gtk3-devel), so the shipped libqtiff
plugin gained a hard dependency on libtiff.so.5, breaking on hosts that
ship a different libtiff soname (e.g. libtiff.so.6).

Pin tiff and webp to the bundled copies in the Linux desktop packaging
configurations (rhel-9.6 and ubuntu-24.04-arm64) so the released
binaries stay self-contained regardless of what is installed on the
build host.

Fixes: QTBUG-147470
Pick-to: 6.11 6.12
Change-Id: If406fd6b9338af51176b50c3af5bb3193fd226fd
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
2026-06-21 06:51:52 +00:00
Qt Submodule Update Bot 87c2d0b629 Update submodules on 'dev in qt/qt5'
Change-Id: I49c56cec4ef358029d4a6b25a619e2db6106dfa0
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-06-19 08:52:18 +00:00
Toni Saario adc52dde71 Add caching for qtopenapi maven dependencies
Contains the .m2 folder from home after openapi build. Extracts it
to VM at same path.

Pick-to: 6.11
Change-Id: I3eb5858160db1c996f3c72fae2b91be1478f000c
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
2026-06-18 04:25:38 +00:00
Tero Heikkinen 3f495a95ee Remove openSUSE 15.6 from CI
Except 'opensuse-15.6-host-asan' -target which will be handled in:
  - "Port the ASAN config from OpenSUSE 15 to 16" (QTQAINFRA-7660)

[CI Platforms]

Pick-to: 6.12 6.11
Task-number: QTQAINFRA-7455
Task-number: QTQAINFRA-7452
Change-Id: Ibd224779c77fa2af9460c240181cbe341ae454a9
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-16 11:29:44 +00:00
Tuomas Vaarala 6282a3fd8a Coin: QNX QEMU: set HOME and FONTCONFIG_FILE for tests
When HOME was unset, ~/.cache collapsed to /.cache on the read-only
QNX QEMU rootfs, so Fontconfig printed "No writable cache
directories" from QtGui-linking sub-tests and broke the
expected-output validation in tst_selftests.

Set HOME=/data/home/root (distinct from TMPDIR so filesystem
watcher tests keep separate watchable dirs) and point
FONTCONFIG_FILE at the deployed fonts.conf. QNX SDP 8.0 ships
fonts.conf at etc/fonts/fonts.conf, not etc/fontconfig/fonts.conf
as 7.1 did, so correct the data_files.custom source path too.

Squashes the former HOME-only and FONTCONFIG_FILE changes, which
conflicted on the same QNX_TEST_ENV lines and could not integrate
together.

Pick-to: 6.8 6.11 6.12
Change-Id: I1943d07eff0a2e99bb96db28e73b4c77e4aa2df8
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-13 06:54:10 +00:00
Allan Sandfeld Jensen 01ed52ad4c Install rust on macOS CI
We need to build it as no official pre-built binaries with
multiple targets exists of rust.

Pick-to: 6.11 6.12
Change-Id: Ibbe5dd77a92e845ce312f2ddf324a30b4c5ddc72
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-13 06:54:07 +00:00
Elias Toivola 5e9c31fe74 Unix: clean up vcpkg packages more later in provisioning
$VCPKG_ROOT/packages/ fills up later in install-vcpkg-ports.sh, clean up
at the end of that script.

This amends 75cdce7b2c

Pick-to: 6.12 6.11 6.8
Change-Id: I87cf73c5b46733141d017efa6d4a2e9e6c482424
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2026-06-13 06:54:04 +00:00
Matti Paaso 6cecda38fa Change Axivion analysis platform configuration
Change Axivion analysis to TestOnly target with platform
dependency.

Task-number: QTQAINFRA-7846
Pick-to: 6.12 6.11 6.8
Change-Id: I6efb23299b9bfcad549d352c804ad4f6a8772e84
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-06-12 12:39:56 +00:00
Nils Petter Skålerud 75a537b6d5 FFmpeg: Don't build unused FFmpeg components
The FFmpeg components 'avdevice' and 'avfilter' are not used in Qt.
By not building them, we save some time during provisioning in CI.

Pick-to: 6.12 6.11
Change-Id: Id9219f6c00bd48d35d1d5c5b87eecb45f8c16c45
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
2026-06-12 12:39:54 +00:00
Axel Spoerl c0e391423d Add script to run all (provisioning) shell scripts in given directory
To build / test Qt on a fresh VM, all provisioning scripts have to be
run.

Provide a shell script to facilitate this on Linux and macOS.

Fixes: QTQAINFRA-7906
Pick-to: 6.12 6.11 6.8
Change-Id: Ie06c11c824897d23c74d90c008a595c2f82f6950
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-12 12:39:48 +00:00
Axel Spoerl 4f97b4bea8 Add script to run all (provisioning) shell scripts in given directory
To build / test Qt on a fresh VM, all provisioning scripts have to be
run.

Provide a shell script to facilitate this on Windows.

Fixes: QTQAINFRA-7906
Pick-to: 6.12 6.11 6.8
Change-Id: Ib06f75d7402f72e0496bab35aeb2ac89d1064537
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-12 12:39:48 +00:00
Axel Spoerl a377574e66 Provisioning: Make all shell scripts executable
For scripted auto-execution all shell scripts in provisioning need to
be executbale. Most are, but some have been forgotten.

Make the remaining ones executable.

Fixes: QTQAINFRA-7905
Pick-to: 6.12
Change-Id: I663aeb6c04f2b9d8049d21a75966369b15fe6d29
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-12 12:39:41 +00:00
Teemu Holappa 74d1e3a4c8 Add ubuntu-24.04-x64 to qtsaferenderer-runtime.yaml
Fixes the following integration issue in Coin:
Defined dependency configuration id:
'ubuntu-24.04-x64' resulted in 0 configurations

Change-Id: I959030c966f7b5908f78767b7f67c20e09d57969
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2026-06-12 12:39:38 +00:00
Matti Paaso 526a09e46a Update Axivion bauhaus-suite to newer version
Update from version 7.11.3 into 7.12.1

Task-number: QTQAINFRA-7916
Pick-to: 6.12 6.11 6.8
Change-Id: I9bb342636f9e67fc3db6d4a2f735923d0df8b622
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-12 12:39:35 +00:00
Simo Fält b002b0fde9 Provisioning: Remove cups-pdf package from Ubuntu
Updated libcups2-dev package (2.4.1op1-1ubuntu4.20) causes password prompt with lpadmin when installing cups-pdf and this blocks provisioning.

Task-number: QTQAINFRA-7930
Pick-to: 6.12 6.11 6.8 6.5
Change-Id: I308f7d037586ee4ac8320274f551315a7329925c
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2026-06-12 12:39:32 +00:00
Jukka Jokiniva 640b9c2ea2 Fix tier1 image version on macos-universal-on-arm64
Amends d43a68e9b4

Pick-to: 6.12
Change-Id: Ib36ada89fd37a8846f8932782650ab43154f7385
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2026-06-12 12:39:29 +00:00
Joerg Bornemann 3275891741 coin: Use OHOS_ARCH instead of OHOS_ABI in CI config
In preparation of consolidating the OHOS target-architecture variables
onto OHOS_ARCH and droppeding OHOS_ABI, we're updating the HarmonyOS
target platform configs to pass -DOHOS_ARCH=arm64-v8a.

This doesn't change behavior, because OHOS_ABI defaults to arm64-v8a.

Pick-to: 6.12
Task-number: QTBUG-147291
Change-Id: I1d0d2071d0512f976eaa031d7c976aa97c3bc9cb
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-10 04:28:16 +00:00
Mårten Nordheim 6a6f4fa55e Disable liburing for Linux packaging
liburing has version tags preventing accidental use of incompatible
versions.

Since we are building all of our linux binaries on RHEL 9/Ubuntu, for
x64 and arm64 respectively, we are hitting this issue now on other
distros that do not have the same liburing package.

To counter that we disable it for the Packaging build and leave it on
for testing. It's an optional feature and a private one at that so not
much is lost at the moment.

Fixes: QTQAINFRA-7927
Change-Id: Ib371e24d9a6e1dc45146493f637209fb5cd2589a
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit c3477b4141)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2026-06-10 04:28:13 +00:00
Axel Spoerl d6315c6f58 Add COIN platform configuration for qtpim
To enable testing / COIN, add qtpim.yaml

Change-Id: I3f788aa04d2a4b23674654d13eb6afac0ecc7f82
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-10 04:28:09 +00:00
Tor Arne Vestbø b684ef99a6 Make macOS 26 developer build and x86_64 tests officially significant
Pick-to: 6.12
Change-Id: I583b2355ac0ea8918ddb9ef1195a91696cbbd24f
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2026-06-10 04:28:06 +00:00
Dimitrios Apostolou ce75c3c977 Port ASAN build from OpenSUSE 15 to 16
Pick-to: 6.12
Fixes: QTQAINFRA-7660
Change-Id: I08107822e4b93241741cde7d4d54e6903372a454
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2026-06-10 04:28:03 +00:00
Tor Arne Vestbø 5d41389310 Build macOS developer build examples as external projects
qtbase for now, as some of the submodules fail to build
examples in this mode.

Pick-to: 6.12
Task-number: QTBUG-90820
Task-number: QTBUG-96232
Change-Id: Icb2254bafcbeee7e4bba7500b2a8395f386244ef
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-06-08 22:30:43 +00:00
Tor Arne Vestbø b3e3927f22 Bump macOS and iOS minimal static tests platform to macOS 26
Pick-to: 6.12
Change-Id: I0b90d2921563ace6dac338c9970144a0985a37b8
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2026-06-08 22:30:42 +00:00
Tor Arne Vestbø 50086ff8f3 Explicitly install iOS and visionOS platforms for Xcode 26
The app no longer ships with any platforms (SDKs) built in
except for the macOS platform.

Pick-to: 6.12
Change-Id: I83200553f52b9edf80212a12bb9abd6a26f27407
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2026-06-08 22:30:41 +00:00
Tor Arne Vestbø c22a682b4f Move iOS minimal static tests to shared minimal-static-test file
Pick-to: 6.12
Change-Id: Ia83e315e1d01f61380d1da530c556a3f4fe7a0a9
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2026-06-08 22:30:40 +00:00
Elias Toivola 6ead7af28d Windows arm64 msvc2026: set tests as blocking
This amends 6d676db849

Pick-to: 6.12
Task-number: QTQAINFRA-7559
Change-Id: Iaf869b781280e050b1e0140dd7de815806dd7ebf
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-08 10:23:13 +00:00
Joerg Bornemann 2b6e156008 Build WoA arm64 tests natively using the cross-built toolchain
Rename windows-11-x86_64-arm64-tests to
windows-11-x86_64-arm64-native-tests and switch it from the host-side
cross-compile-tests flow to the native-build-tests flow:

* Features BuildTestsInTest + UseToolchainFromTargetDir build tests in
  the test stage on the arm64 worker using the cross-built toolchain
  (qtbase change 238400b22f3b327c05a51a913b279d4bf37f4adf).
* OpenSSL and FFmpeg env vars unblock qtnetwork and qtmultimedia.

Pick-to: 6.12
Change-Id: Idd0565ceee0714d3f4fbe34ebf8d6373f7315cc1
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-06-07 09:23:46 +00:00
Tuomas Vaarala 00177db989 Coin: QNX QEMU: add localhost to /etc/hosts
The Coin hosts file fully overrides the SDP default, which
had 127.0.0.1 and ::1 entries. Combined with nsswitch
"hosts: files mdnsd dns" and resolv.conf -> 172.31.1.1, any
test resolving http(s)://localhost fell through to NXDOMAIN.

Fixes tst_QHttpServer (229 HostNotFoundError asserts) and
tst_abstractoauth2 (silent crash) on QNX 8.0 QEMU. Applied
to 710/ too so the same latent issue can't surface there.

Pick-to: 6.8 6.11 6.12
Change-Id: I2aaa782980cb44afe3499ba8bd35fd7d3c093043
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
2026-06-06 08:26:04 +00:00
Dimitrios Apostolou 23c201ac4e Update sccache to v0.15.0
Also set SCCACHE_DIRECT in an effort to counter the error:

    cc1plus: error: .../CMakeFiles/....dir/cmake_pch.hxx.gch: \
        created by a different GCC executable [-Werror=invalid-pch]

Pick-to: 6.12 6.11 6.8
Change-Id: Ic7a3743642ff69495309794f6d17fc9b98d7f338
Reviewed-by: Toni Saario <toni.saario@qt.io>
2026-06-06 08:26:01 +00:00
Joerg Bornemann 41986ce213 coin: Add arm64-ohos-qt vcpkg overlay triplet
The upstream vcpkg *-ohos triplets have been changed to build static
libraries in multi-config mode. Add (and use) an arm64-ohos-qt triplet
that builds shared libs in release mode.

The triplet differs from the upstream one only in the values
VCPKG_LIBRARY_LINKAGE and VCPKG_BUILD_TYPE.

This patch is a preparation for merging vcpkg upstream back to our
fork.

Pick-to: 6.12
Change-Id: Iac6a4798b0322e9c57cf09ca35a408c66504ba46
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-06-06 08:25:59 +00:00
Simo Fält 596f204006 COIN: Add QT_HARMONYOS_HVIGOR variable for HarmonyOS to build hap
Pick-to: 6.12
Change-Id: Ie59fe187381c46ced5b1b8370363b3bafb330230
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2026-06-06 08:25:57 +00:00
Elias Toivola a10af2c0e8 Ubuntu: install xclip
This simplifies RTA tasks

Pick-to: 6.12 6.11 6.8
Fixes: QTQAINFRA-7368
Change-Id: I3fa030f8c2655c62427348d328a44f7751d2e578
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2026-06-04 16:26:55 +00:00
hjk cc750dc924 Disable Qt-StrictIterators
The rule in this form is not as helpful as intented.

Paraphrasing comments from the linked issue:

This rule was created based on clazy's “Warn when iterator objects are
implicitly cast to const_iterator" which was likely an attempt to limit
hidden detaches of implicitly-shared Qt containers.

But mixing const_iterator and iterator is not the problem. The problem
is calling a non-const begin()/end()/find()/etc when you only need
const_iterators. So if you ban the implicit conversion from iterator to
const_iterator, you will catch these, theoretically. Practically, no-one
writes QList<Foo>::const_iterator it = l.begin() these days anymore,
everyone is using auto, so the check can never actually trigger for True
Positives.

As-is, it produces False Positives which has a potential to make the
code actually worse.

An alternative to reach a similar goal is to use QT_STRICT_ITERATORS, so
there’s no need for an Axivion check for it.

Task-number: BAUHAUS-29596
Pick-to: 6.12
Change-Id: I910e9ecc89c3db497c046f6d15ff07ab2ecc470a
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2026-06-04 16:26:51 +00:00
Tor Arne Vestbø 4826d56e8d configure: Only consider qt-prefixed directories as potential submodules
People might have other non-submodule directories in their Qt checkout,
e.g. ~/dev/qt/tasks, ~/qt/dev/research, ~/dev/qt/6.10, etc

We don't want to treat these as potential submodules.

Pick-to: 6.12
Change-Id: I0765f1832e71fb541be3976810cd6b192fea17a2
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-06-04 16:26:47 +00:00
Joerg Bornemann d6ac43b433 configure: Sanitize -submodules arguments
Allow (and ignore) leading, trailing, and repeated commas in the
-submodules argument.

Fixes: QTBUG-147198
Pick-to: 6.11 6.12
Change-Id: I8901a65c6754c58ea3d51cb715932e7b328af445
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-06-04 16:26:42 +00:00
Joerg Bornemann 8d4971fd6e coin: Download vcpkg-tool from upstream again
vcpkg-tool release tag 2026-05-27 contains the patch necessary for
HarmonyOS support. We can use the unpatched upstream vcpkg-tool again.
Change the provisioning scripts back to fetch the tool from upstream's
release artifacts page.

Pick-to: 6.12
Fixes: QTQAINFRA-7902
Change-Id: I84ef4582ef8ff5ca6e8e135128fe515438ac2a22
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-06-04 16:26:38 +00:00
Tor Arne Vestbø d43a68e9b4 Build macOS universal packaging config on macOS 26 / with Xcode 26
Pick-to: 6.12
Change-Id: I53424902311028736a71afe097339a270538fa32
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2026-06-04 16:26:34 +00:00
Tero Heikkinen 393b7adc1f Make openSUSE 16.0 tests as blocking in CI
And Packaging -flag moved from openSUSE 15.6
to a new openSUSE 16.0 [CI Platforms]

Pick-to: 6.12 6.11
Task-number: QTQAINFRA-7455
Task-number: QTQAINFRA-7452
Change-Id: I5726f5610fb3bde618e83468d1f9d3ed5083d51b
Reviewed-by: Simo Fält <simo.falt@qt.io>
2026-06-04 16:26:29 +00:00
Liang Qi 38e3864f3e coin: add platform configs for HarmonyOS - step 2
A few modules were added HarmonyOS support.

Pick-to: 6.12
Change-Id: Idf04de728aae7dbf0b0939a4110a225bff2d18b3
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2026-06-04 16:26:25 +00:00
Joerg Bornemann 4df5cb5b02 coin: Enable building examples for HarmonyOS developer build
Pick-to: 6.12
Change-Id: I865db714dac9f0b0a9c75b2ddd6c1350f257fc70
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2026-06-04 16:26:21 +00:00
Qt Submodule Update Bot f505ed1baf Update submodules on 'dev in qt/qt5'
Change-Id: I408895bd11a7641e8f39728a06f787d5ab14081f
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-06-03 22:34:45 +00:00
Qt Submodule Update Bot ec2e17e25d Update submodules on 'dev in qt/qt5'
Change-Id: I4cd445cc604f4659c94ddb08cd77737bf4e39898
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-06-03 12:55:39 +00:00
Matti Paaso 36efc0bfb0 Remove libusb installation from macos
Pick-to: 6.12
Change-Id: I5f69afe376087958ef5a6a2985bd87170e3f8a8d
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2026-06-03 04:22:17 +00:00
Patrik Teivonen f0ab3c330f Provisioning: Point pinned EPEL repo at archive mirror for RHEL 10.0
EPEL 10.0 has been moved under `archive.fedoraproject.org` now that
10.1 is the current release, so the pinned baseurl on `dl.` 404s and
breaks provisioning. Switch to the archive URL to preserve the
exact-release pin.

Pick-to: 6.12 6.11
Change-Id: I0bff932e4aaa11515ca28aa18af5cea73a9e2b05
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2026-06-03 04:22:14 +00:00
Qt Submodule Update Bot 9448447668 Update submodules on 'dev in qt/qt5'
Change-Id: Ia665dbfd95052893203b8e1ed2759205667db613
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2026-06-02 17:49:27 +00:00
896 changed files with 2374 additions and 2608 deletions
+1 -10
View File
@@ -45,7 +45,7 @@
priority = 30
[submodule "qtdoc"]
depends = qtdeclarative qttools
recommends = qtmultimedia qtshadertools qttasktree qtwebengine
recommends = qtmultimedia qtshadertools qttasktree
path = qtdoc
url = ../qtdoc.git
branch = dev
@@ -139,17 +139,8 @@
url = ../qtwebchannel.git
branch = dev
status = addon
[submodule "qtwebengine"]
depends = qtdeclarative
recommends = qtwebchannel qttools qtpositioning
path = qtwebengine
url = ../qtwebengine.git
branch = dev
status = addon
priority = 10
[submodule "qtwebview"]
depends = qtdeclarative
recommends = qtwebengine
path = qtwebview
url = ../qtwebview.git
branch = dev
+8 -1
View File
@@ -181,6 +181,7 @@ function(qt_ir_clone_one_submodule submodule_name)
set(oneValueArgs
ALTERNATES
BASE_URL
DEPTH
WORKING_DIRECTORY
)
set(multiValueArgs "")
@@ -263,6 +264,9 @@ function(qt_ir_clone_one_submodule submodule_name)
else()
list(APPEND clone_args --no-checkout)
endif()
if(arg_DEPTH)
list(APPEND clone_args --depth "${arg_DEPTH}")
endif()
list(APPEND clone_args ${progress_args})
qt_ir_execute_process_and_log_and_handle_error(
COMMAND_ARGS git clone ${clone_args} "${mirror_or_original_url}" "${submodule_path}"
@@ -324,7 +328,7 @@ function(qt_ir_get_already_initialized_submodules prefix
)
qt_ir_parse_git_config_file_contents("${prefix}"
READ_GIT_CONFIG
READ_GIT_CONFIG_LOCAL
PARENT_REPO_BASE_GIT_PATH "${parent_repo_base_git_path}"
WORKING_DIRECTORY "${working_directory}"
)
@@ -1063,6 +1067,7 @@ function(qt_ir_handle_init_submodules prefix)
set(oneValueArgs
ALTERNATES
BASE_URL
DEPTH
PARENT_REPO_BASE_GIT_PATH
WORKING_DIRECTORY
)
@@ -1123,6 +1128,7 @@ function(qt_ir_handle_init_submodules prefix)
qt_ir_clone_one_submodule(${submodule_name}
ALTERNATES ${arg_ALTERNATES}
BASE_URL ${arg_BASE_URL}
DEPTH "${arg_DEPTH}"
WORKING_DIRECTORY "${working_directory}"
${branch_flag}
${fetch_flag}
@@ -1163,6 +1169,7 @@ function(qt_ir_handle_init_submodules prefix)
SUBMODULES "all"
BASE_URL "${base_url}"
DEPTH "${arg_DEPTH}"
PARENT_REPO_BASE_GIT_PATH "${submodule_base_git_path}"
WORKING_DIRECTORY "${working_directory}/${submodule_name}"
+10
View File
@@ -122,6 +122,16 @@ Options:
Note that this negates the disk usage benefits gained from the use
of `--alternates'.
--depth <n>
Creates a shallow clone with a history truncated to <n> commits for
each submodule that is cloned, by passing `--depth <n>' to `git
clone'. This also applies recursively to submodules of submodules
(e.g. qtwebengine's third-party dependencies).
This option only affects submodules that are freshly cloned; it has
no effect on already-cloned submodules that are merely updated or
fetched.
--mirror <url-base>
Uses <url-base> as the base URL for submodule git mirrors.
+3
View File
@@ -142,6 +142,7 @@ function(qt_ir_get_args_from_optfile_configure_filtered optfile_path out_var)
qt_ir_get_top_level_submodules(include_submodules exclude_submodules)
if(NOT include_submodules AND arg_ALREADY_INITIALIZED)
string(REPLACE "," ";" include_submodules "${submodules}")
list(FILTER include_submodules EXCLUDE REGEX "^$")
endif()
# qtrepotools is always implicitly cloned, but it doesn't actually
@@ -311,6 +312,7 @@ function(qt_ir_run_after_args_parsed top_level_src_path out_var_exit_reason)
# Get some additional options to pass down.
qt_ir_get_option_as_existing_absolute_path(alternates alternates)
qt_ir_get_option_as_cmake_flag_option(branch "CHECKOUT_BRANCH" checkout_branch_option)
qt_ir_get_option_value(depth depth)
# The prefix for the cmake-style 'dictionary' that will be used by various functions.
set(prefix "ir_top")
@@ -320,6 +322,7 @@ function(qt_ir_run_after_args_parsed top_level_src_path out_var_exit_reason)
ALTERNATES "${alternates}"
ALREADY_INITIALIZED_SUBMODULES "${already_initialized_submodules}"
BASE_URL "${base_url}"
DEPTH "${depth}"
PARENT_REPO_BASE_GIT_PATH "${qt5_repo_name}"
PROCESS_SUBMODULES_FROM_COMMAND_LINE
WORKING_DIRECTORY "${working_directory}"
+1
View File
@@ -16,6 +16,7 @@ macro(qt_ir_set_known_command_line_options)
qt_ir_commandline_option(codereview-username TYPE string)
qt_ir_commandline_option(codereview-https TYPE boolean)
qt_ir_commandline_option(copy-objects TYPE boolean)
qt_ir_commandline_option(depth TYPE string)
qt_ir_commandline_option(fetch TYPE boolean DEFAULT_VALUE yes)
qt_ir_commandline_option(force SHORT_NAME f TYPE boolean)
qt_ir_commandline_option(force-hooks TYPE boolean)
+2 -2
View File
@@ -60,7 +60,7 @@ endfunction()
# Populates $out_module_list with all subdirectories that have a CMakeLists.txt file
function(qt_internal_find_modules out_module_list)
set(module_list "")
file(GLOB directories LIST_DIRECTORIES true RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" *)
file(GLOB directories LIST_DIRECTORIES true RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" qt* tqtc-*)
foreach(directory IN LISTS directories)
if(IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${directory}"
AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${directory}/CMakeLists.txt")
@@ -1386,7 +1386,7 @@ function(qt_internal_foreach_repo_run)
set(color_supported FALSE)
set(output_goes_where "")
if(NOT tty_exit_CODE AND tty_name)
if(NOT tty_exit_code AND tty_name)
set(color_supported TRUE)
set(output_goes_where "OUTPUT_FILE" "${tty_name}")
endif()
+3
View File
@@ -30,3 +30,6 @@ enable_if:
- condition: property
property: target.os
equals_value: Linux
- condition: property
property: target.osVersion
not_equals_value: HarmonyOS_ANY
@@ -16,6 +16,13 @@ instructions:
variableName: CONFIGURE_ENV_PREFIX
variableValue: "{{.Env.ENV_PREFIX}}"
# Re-fetch the qlitehtml repository in the Coin git mirror, otherwise the
# RunCMake.InitRepository test might fail trying to checkout a newer sha1 than what is
# available in the Coin git mirror.
- type: UpdateRepo
gitRemote: code.qt.io
repos: [playground/qlitehtml.git]
- type: ExecuteCommand
command: "{{.Env.CONFIGURE_ENV_PREFIX}} cmake {{.SourceDir}}/tests/manual/RunCMake"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
@@ -1,8 +1,8 @@
Version: 2
Configurations:
-
Id: 'opensuse-15.6-host-asan'
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
Id: 'opensuse-16.0-host-asan'
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure', 'UseAddressSanitizer']
Configure arguments: '-nomake examples -developer-build'
+84 -39
View File
@@ -3,6 +3,7 @@ Include: [
cmake_platforms_qemu.yaml,
cmake_platforms_qemu_qnx.yaml,
cmake_platforms_target_android.yaml,
cmake_platforms_target_harmonyos.yaml,
cmake_platforms_wasm.yaml,
macos.yaml
]
@@ -58,11 +59,11 @@ Configurations:
Template: 'qtci-linux-Ubuntu-24.04-aarch64-52'
Compiler: 'GCC'
Features: ['Sccache', 'Packaging', 'UseConfigure', 'DoNotRunTests', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput -qpa offscreen\;xcb'
Configure arguments: '-nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -no-feature-liburing -bundled-xcb-xinput -qpa offscreen\;xcb'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
'COMMON_TEST_CMAKE_ARGS=-DQT_SKIP_DOCKER_COMPOSE=ON',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON -DINPUT_tiff=qt -DINPUT_webp=qt',
'VCPKG_HOST_TRIPLET=arm64-linux-qt',
'VCPKG_TARGET_TRIPLET=arm64-linux-qt',
]
@@ -130,24 +131,11 @@ Configurations:
Compiler: 'GCC'
Features: ['Sccache', 'TestOnly']
Platform dependency: 'ubuntu-24.04-x64'
-
Id: 'opensuse-15.6-developer-build'
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure']
Configure arguments: '-nomake examples -developer-build'
Environment variables: [
'PATH={{.Env.CMAKE_MIN_SUPPORTED_BIN_PATH}}:{{.Env.PATH}}',
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
'VCPKG_HOST_TRIPLET=x64-linux-qt',
'VCPKG_TARGET_TRIPLET=x64-linux-qt',
]
-
Id: 'opensuse-16.0-developer-build'
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure']
Configure arguments: '-nomake examples -developer-build'
Environment variables: [
'PATH={{.Env.CMAKE_MIN_SUPPORTED_BIN_PATH}}:{{.Env.PATH}}',
@@ -185,7 +173,7 @@ Configurations:
]
-
Id: 'windows-11_24H2-msvc2022'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'Packaging', "DebugAndRelease", 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib'
@@ -227,6 +215,26 @@ Configurations:
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
'gRPC_ROOT={{.Env.gRPC_ROOT_msvc}}',
]
-
Id: 'windows-11_24H2-msvc2026-arm64ec'
Template: 'qtci-windows-11_24H2-x86_64-72'
Compiler: 'MSVC2026'
Target arch: 'arm64'
Features: ['Sccache', 'ARM64EC', 'TargetBuildOnly', 'DoNotRunTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Platform dependency: 'windows-11_24H2-msvc2026'
Environment variables: [
'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64ec-msvc -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer',
'TARGET_CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_x64}}\..',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DQT_FEATURE_qdoc=OFF -DFEATURE_qtwebengine_build=OFF -DFEATURE_qtpdf_build=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON',
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
]
-
Id: 'windows-11_24H2-msvc2026-arm64ec-tests'
Template: 'qtci-windows-11_23H2-aarch64-54'
Compiler: 'MSVC2026'
Features: ['TestOnly', 'InsignificantTests']
Configure arguments: '-cross-compiled'
Platform dependency: 'windows-11_24H2-msvc2026-arm64ec'
-
Id: 'windows-11_23h2-arm64-msvc2022'
Template: 'qtci-windows-11_23H2-aarch64-53'
@@ -245,7 +253,7 @@ Configurations:
Id: 'windows-11_23h2-arm64-msvc2026'
Template: 'qtci-windows-11_23H2-aarch64-54'
Compiler: 'MSVC2026'
Features: ['Sccache', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Features: ['Sccache', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer'
Environment variables: [
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..',
@@ -257,11 +265,11 @@ Configurations:
]
-
Id: 'windows-11_24H2-msvc2022-arm64'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Target arch: 'arm64'
Features: ['Sccache', 'Packaging', 'DoNotRunTests', 'TargetBuildOnly', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Platform dependency: 'windows-11_24h2-mingw13'
Platform dependency: 'windows-11_24h2-mingw15'
Environment variables: [
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64-msvc -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer',
@@ -282,7 +290,7 @@ Configurations:
Compiler: 'MSVC2026'
Target arch: 'arm64'
Features: ['Sccache', 'DoNotRunTests', 'TargetBuildOnly', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Platform dependency: 'windows-11_24h2-mingw13'
Platform dependency: 'windows-11_24h2-mingw15'
Environment variables: [
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64-msvc -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer',
@@ -298,22 +306,31 @@ Configurations:
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
]
-
Id: 'windows-11-x86_64-arm64-tests'
Id: 'windows-11-x86_64-arm64-native-tests'
Template: 'qtci-windows-11_23H2-aarch64-53'
Compiler: 'MSVC2022'
Features: ['TestOnly']
Features: ['TestOnly', 'BuildTestsInTest', 'UseToolchainFromTargetDir']
Configure arguments: '-cross-compiled'
Platform dependency: 'windows-11_24H2-msvc2022-arm64'
Environment variables: [
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ROOT_DIR_x64_arm64}}',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE',
'OPENSSL_CONF_x64={{.Env.OPENSSL_CONF_x64_arm64}}',
'OPENSSL_INCLUDE_x64={{.Env.OPENSSL_INCLUDE_x64_arm64}}',
'OPENSSL_LIB_x64={{.Env.OPENSSL_LIB_x64_arm64}}',
'VCPKG_HOST_TRIPLET=arm64-windows-qt',
'VCPKG_TARGET_TRIPLET=arm64-windows-qt',
]
-
Id: 'windows-11-x86_64-msvc2026-arm64-tests'
Id: 'windows-11-x86_64-arm64-tests-msvc2026'
Template: 'qtci-windows-11_23H2-aarch64-54'
Compiler: 'MSVC2026'
Features: ['TestOnly', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Features: ['TestOnly']
Configure arguments: '-cross-compiled'
Platform dependency: 'windows-11_24H2-msvc2026-arm64'
-
Id: 'windows-11_24H2-msvc2022-developer-build'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'DebugAndRelease', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
Configure arguments: '-debug-and-release -force-asserts -make examples -developer-build -force-debug-info -qt-zlib -c++std c++20'
@@ -330,10 +347,10 @@ Configurations:
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -no-feature-liburing -bundled-xcb-xinput'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON -DINPUT_tiff=qt -DINPUT_webp=qt',
'VCPKG_HOST_TRIPLET=x64-linux-qt',
'VCPKG_TARGET_TRIPLET=x64-linux-qt',
]
@@ -341,7 +358,7 @@ Configurations:
Id: 'rhel-10.0'
Template: 'qtci-linux-RHEL-10.0-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM', 'DoNotAbortTestingOnFirstFailure']
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
@@ -350,7 +367,7 @@ Configurations:
'VCPKG_TARGET_TRIPLET=x64-linux-qt',
]
-
Id: 'ios-universal'
Id: 'ios-device'
Template: 'qtci-macos-26-arm-105'
Target os: 'IOS_ANY'
Target arch: 'arm64'
@@ -359,7 +376,35 @@ Configurations:
Platform dependency: 'macos-universal-on-arm64'
Features: ['Packaging', 'Sccache', 'DebugAndRelease', 'DisableTests', 'UseConfigure', 'WarningsAreErrors', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang',
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang -sdk iphoneos',
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include -DFFMPEG_DIR={{.Env.FFMPEG_DIR_IOS}} -DQT_DEPLOY_FFMPEG=TRUE',
]
-
Id: 'ios-arm64-simulator'
Template: 'qtci-macos-26-arm-105'
Target os: 'IOS_ANY'
Target arch: 'arm64'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'macos-universal-on-arm64'
Features: ['Packaging', 'Sccache', 'DebugAndRelease', 'DisableTests', 'UseConfigure', 'WarningsAreErrors', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang -sdk iphonesimulator',
'TARGET_CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="arm64"',
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include -DFFMPEG_DIR={{.Env.FFMPEG_DIR_IOS}} -DQT_DEPLOY_FFMPEG=TRUE',
]
-
Id: 'ios-x86_64-simulator'
Template: 'qtci-macos-26-arm-105'
Target os: 'IOS_ANY'
Target arch: 'x86_64'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'macos-universal-on-arm64'
Features: ['Packaging', 'Sccache', 'DebugAndRelease', 'DisableTests', 'UseConfigure', 'WarningsAreErrors', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang -sdk iphonesimulator',
'TARGET_CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64"',
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include -DFFMPEG_DIR={{.Env.FFMPEG_DIR_IOS}} -DQT_DEPLOY_FFMPEG=TRUE',
]
-
@@ -375,8 +420,8 @@ Configurations:
'TARGET_CONFIGURE_ARGS=-developer-build -no-warnings-are-errors -nomake examples -nomake tests -platform macx-visionos-clang',
]
-
Id: 'windows-11_24h2-mingw13'
Template: 'qtci-windows-11_24H2-x86_64-71'
Id: 'windows-11_24h2-mingw15'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'Mingw'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-release -force-debug-info -separate-debug-info -nomake examples'
@@ -389,7 +434,7 @@ Configurations:
]
-
Id: 'windows-11_24H2-llvm'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'Clang'
Features: ['Sccache', 'Packaging', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-release -force-debug-info -separate-debug-info -nomake examples'
@@ -401,8 +446,8 @@ Configurations:
'Protobuf_ROOT={{.Env.Protobuf_ROOT_llvm_mingw}}',
]
-
Id: 'windows-11_24H2-mingw13-developer-build'
Template: 'qtci-windows-11_24H2-x86_64-71'
Id: 'windows-11_24H2-mingw15-developer-build'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'Mingw'
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
Configure arguments: '-developer-build -release -force-asserts -force-debug-info -separate-debug-info -make examples'
@@ -419,7 +464,7 @@ Configurations:
Compiler: 'GCC'
Features: ['Packaging','DebianPackaging','DisableTests', 'Insignificant']
Environment variables: [
'DEBIAN_RULES_REF=6.11_dev',
'DEBIAN_RULES_REF=6.12_dev',
'COIN_TARGET_DIST=tqtc-jammy',
'COIN_EXTRA_DEBIAN_PACKAGES={{.Env.HOME}}/debian_packages/',
'COIN_SBUILD_CHROOT=jammy-arm64-sbuild',
@@ -432,7 +477,7 @@ Configurations:
Compiler: 'GCC'
Features: ['Packaging','DebianPackaging','DisableTests', 'Insignificant']
Environment variables: [
'DEBIAN_RULES_REF=6.11_dev',
'DEBIAN_RULES_REF=6.12_dev',
'COIN_TARGET_DIST=tqtc-jammy',
'COIN_EXTRA_DEBIAN_PACKAGES={{.Env.HOME}}/debian_packages/',
'COIN_SBUILD_CHROOT=jammy-amd64-sbuild',
@@ -445,7 +490,7 @@ Configurations:
Compiler: 'GCC'
Features: ['Packaging','DebianPackaging','DisableTests', 'Insignificant']
Environment variables: [
'DEBIAN_RULES_REF=6.11_gles',
'DEBIAN_RULES_REF=6.12_gles',
'COIN_TARGET_DIST=tqtc-bookworm',
'COIN_EXTRA_DEBIAN_PACKAGES={{.Env.HOME}}/debian_packages/',
'COIN_SBUILD_CHROOT=bookworm-arm64-sbuild',
@@ -12,7 +12,7 @@ Configurations:
'TARGET_CONFIGURE_ARGS=-release -force-asserts -force-debug-info -developer-build -no-warnings-are-errors -make examples -qt-harfbuzz -device linux-imx7-g++ -device-option "CROSS_COMPILE={{.Env.QEMUARMV7_TOOLCHAIN_CROSS_COMPILE}}" -device-option "DISTRO_OPTS=hard-float boot2qt" -no-feature-forkfd_pidfd',
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARMV7_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
'QT_YOCTO_ENVSETUP={{.Env.QEMUARMV7_TOOLCHAIN_ENVSETUP}}',
"QT_CMAKE_DIR=/opt/cmake-3.30.5/bin",
"QT_CMAKE_DIR=/opt/cmake-4.3.2/bin",
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}',
'GST_PLUGIN_SCANNER={{.Env.QEMUARMV7_TOOLCHAIN_SYSROOT}}/usr/libexec/gstreamer-1.0/gst-plugin-scanner',
'QT_QUICK_BACKEND=software',
@@ -31,7 +31,7 @@ Configurations:
'TARGET_CONFIGURE_ARGS=-release -force-asserts -force-debug-info -developer-build -no-warnings-are-errors -nomake examples -qt-harfbuzz -device linux-generic-g++ -device-option "CROSS_COMPILE={{.Env.QEMUARM64_TOOLCHAIN_CROSS_COMPILE}}" -device-option "DISTRO_OPTS=boot2qt" -no-feature-forkfd_pidfd',
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARM64_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
'QT_YOCTO_ENVSETUP={{.Env.QEMUARM64_TOOLCHAIN_ENVSETUP}}',
"QT_CMAKE_DIR=/opt/cmake-3.30.5/bin",
"QT_CMAKE_DIR=/opt/cmake-4.3.2/bin",
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUARM64_TOOLCHAIN_SYSROOT}}',
'GST_PLUGIN_SCANNER={{.Env.QEMUARM64_TOOLCHAIN_SYSROOT}}/usr/libexec/gstreamer-1.0/gst-plugin-scanner',
'QT_QUICK_BACKEND=software',
@@ -50,7 +50,7 @@ Configurations:
'TARGET_CONFIGURE_ARGS=-release -force-asserts -force-debug-info -developer-build -no-warnings-are-errors -nomake examples -qt-harfbuzz -device linux-generic-g++ -device-option "CROSS_COMPILE={{.Env.QEMUMIPS64_TOOLCHAIN_CROSS_COMPILE}}" -device-option "DISTRO_OPTS=boot2qt" -no-feature-forkfd_pidfd',
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUMIPS64_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
'QT_YOCTO_ENVSETUP={{.Env.QEMUMIPS64_TOOLCHAIN_ENVSETUP}}',
"QT_CMAKE_DIR=/opt/cmake-3.30.5/bin",
"QT_CMAKE_DIR=/opt/cmake-4.3.2/bin",
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUMIPS64_TOOLCHAIN_SYSROOT}}',
'GST_PLUGIN_SCANNER={{.Env.QEMUMIPS64_TOOLCHAIN_SYSROOT}}/usr/libexec/gstreamer-1.0/gst-plugin-scanner',
'QT_QUICK_BACKEND=software',
@@ -12,8 +12,8 @@ Configurations:
Environment variables: [
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -developer-build -no-dbus -nomake examples',
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QNX_710}}/qnx-toolchain-x8664.cmake -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'QT_CMAKE_DIR=/opt/cmake-3.30.5/bin',
'QNX_TEST_ENV=TMPDIR=/data/var/tmp LD_LIBRARY_PATH={{.Env.QNX_QEMU_LD_LIBRARY_PATH}} QSG_RHI_BACKEND=software QT_QPA_PLATFORM=offscreen QTEST_ENVIRONMENT=ci',
'QT_CMAKE_DIR=/opt/cmake-4.3.2/bin',
'QNX_TEST_ENV=TMPDIR=/data/var/tmp HOME=/data/home/root FONTCONFIG_FILE=/data/var/etc/fontconfig/fonts.conf LD_LIBRARY_PATH={{.Env.QNX_QEMU_LD_LIBRARY_PATH}} QSG_RHI_BACKEND=software QT_QPA_PLATFORM=offscreen QTEST_ENVIRONMENT=ci',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DCMAKE_SYSTEM_VERSION=710 -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'QNX_QEMU={{.Env.QNX_710_QEMU}}',
'VCPKG_HOST_TRIPLET=x64-linux-qt',
@@ -63,8 +63,8 @@ Configurations:
Environment variables: [
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -developer-build -no-dbus -nomake examples',
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QNX_800}}/qnx-toolchain-x8664.cmake -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'QT_CMAKE_DIR=/opt/cmake-3.30.5/bin',
'QNX_TEST_ENV=TMPDIR=/data/var/tmp LD_LIBRARY_PATH={{.Env.QNX_QEMU_LD_LIBRARY_PATH}} QSG_RHI_BACKEND=software QT_QPA_PLATFORM=offscreen QTEST_ENVIRONMENT=ci',
'QT_CMAKE_DIR=/opt/cmake-4.3.2/bin',
'QNX_TEST_ENV=TMPDIR=/data/var/tmp HOME=/data/home/root FONTCONFIG_FILE=/data/var/etc/fontconfig/fonts.conf LD_LIBRARY_PATH={{.Env.QNX_QEMU_LD_LIBRARY_PATH}} QSG_RHI_BACKEND=software QT_QPA_PLATFORM=offscreen QTEST_ENVIRONMENT=ci',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DCMAKE_SYSTEM_VERSION=802 -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'QNX_QEMU={{.Env.QNX_800_QEMU}}',
'VCPKG_HOST_TRIPLET=x64-linux-qt',
@@ -10,7 +10,7 @@ Configurations:
Platform dependency: 'ubuntu-22.04'
Features: ['VMSize8', 'UseConfigure', 'DoNotRunTests', 'DoNotUploadTests']
Environment variables: [
'WIND_CC_SYSROOT=/opt/fsl_imx6_2_0_6_2_VSB',
'WIND_CC_SYSROOT=/opt/fsl_imx6_2_0_6_3_VSB',
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -qpa offscreen -nomake examples',
'TARGET_CMAKE_ARGS=-DBUILD_SHARED_LIBS=OFF -DWARNINGS_ARE_ERRORS=OFF -DCMAKE_TOOLCHAIN_FILE="{{.Env.WIND_CC_SYSROOT}}/mk/rtp.toolchain.cmake" -DFEATURE_vulkan=OFF -DQT_QMAKE_TARGET_MKSPEC=vxworks-clang -DQT_HOST_PATH=/home/qt/work/install -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_STAGING_PREFIX:PATH=/home/qt/work/install/target',
'VCPKG_HOST_TRIPLET=x64-linux-qt',
@@ -26,8 +26,8 @@ Configurations:
Platform dependency: 'ubuntu-22.04'
Features: ['VMSize8', 'UseConfigure', 'DoNotRunTests', 'DoNotUploadTests']
Environment variables: [
'WIND_CC_SYSROOT=/opt/nxp_imx8_1_0_7_0_VSB',
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -qpa offscreen -nomake examples',
'WIND_CC_SYSROOT=/opt/nxp_imx8_1_0_7_1_VSB',
'TARGET_CONFIGURE_ARGS=-release -qpa offscreen -nomake examples',
'TARGET_CMAKE_ARGS=-DBUILD_SHARED_LIBS=OFF -DWARNINGS_ARE_ERRORS=OFF -DCMAKE_TOOLCHAIN_FILE="{{.Env.WIND_CC_SYSROOT}}/mk/rtp.toolchain.cmake" -DFEATURE_vulkan=OFF -DQT_QMAKE_TARGET_MKSPEC=vxworks-clang -DQT_HOST_PATH=/home/qt/work/install -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_STAGING_PREFIX:PATH=/home/qt/work/install/target'
]
-
@@ -8,10 +8,10 @@ Configurations:
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'vxworks-imx6-buildtest'
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly']
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
Environment variables: [
'WIND_CC_SYSROOT=/opt/fsl_imx6_2_0_6_2_VSB',
'VXWORKS_TEST_LIBS_PATH=/opt/fsl_imx6_2_0_6_2_VSB/usr/lib/common;/opt/fsl_imx6_2_0_6_2_VSB/usr/root/llvm/bin;/opt/fsl_imx6_2_0_6_2_VSB/usr/3pp/develop/usr/lib;/home/qt/work/install/target/lib',
'WIND_CC_SYSROOT=/opt/fsl_imx6_2_0_6_3_VSB',
'VXWORKS_TEST_LIBS_PATH=/opt/fsl_imx6_2_0_6_3_VSB/usr/lib/common;/opt/fsl_imx6_2_0_6_3_VSB/usr/root/llvm/bin;/opt/fsl_imx6_2_0_6_3_VSB/usr/3pp/develop/usr/lib;/home/qt/work/install/target/lib',
'TARGET_CONFIGURE_ARGS=-release -force-debug-info -qpa offscreen -nomake examples',
'TARGET_CMAKE_ARGS=-DBUILD_SHARED_LIBS=OFF -DWARNINGS_ARE_ERRORS=OFF -DCMAKE_TOOLCHAIN_FILE="{{.Env.WIND_CC_SYSROOT}}/mk/rtp.toolchain.cmake" -DFEATURE_vulkan=OFF -DQT_QMAKE_TARGET_MKSPEC=vxworks-clang -DQT_HOST_PATH=/home/qt/work/install -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_STAGING_PREFIX:PATH=/home/qt/work/install/target',
'VCPKG_HOST_TRIPLET=x64-linux-qt',
@@ -25,7 +25,7 @@ Configurations:
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'vxworks-x86_64-buildtest'
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly']
Features: ['VMSize16', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']
Environment variables: [
'WIND_CC_SYSROOT=/opt/itl_generic_skylake_VSB',
'VXWORKS_TEST_LIBS_PATH=/opt/itl_generic_skylake_VSB/usr/lib/common;/opt/itl_generic_skylake_VSB/usr/root/llvm/bin;/opt/itl_generic_skylake_VSB/usr/3pp/develop/usr/lib;/home/qt/work/install/target/lib',
@@ -3,7 +3,7 @@ Configurations:
-
Id: 'windows-11_24H2-msvc2022-minimal-static-test'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'Packaging', 'UseConfigure', 'MinimalStaticTests']
Configure arguments: '-static -release -headersclean -nomake examples -qt-libjpeg -no-icu -qt-doubleconversion -qt-zlib -c++std c++20 -no-feature-sql-psql'
@@ -13,7 +13,7 @@ Configurations:
]
-
Id: 'windows-11_24H2-minimal-static'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
Configure arguments: '-release -force-debug-info -static -nomake examples -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer'
@@ -27,7 +27,20 @@ Configurations:
]
-
Id: 'macos-minimal-static'
Template: 'qtci-macos-15-arm-105'
Template: 'qtci-macos-26-arm-105'
Compiler: 'Clang'
Features: ['Sccache', 'MinimalStaticTests', 'UseConfigure']
Configure arguments: '-nomake examples -release -force-debug-info -static -no-framework'
-
Id: "ios-minimal-static"
Template: 'qtci-macos-26-arm-105'
Target os: 'IOS_ANY'
Target arch: 'arm64'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'macos-universal-on-arm64'
Features: ['Sccache', 'DebugAndRelease', 'MinimalStaticTests', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang'
]
@@ -17,12 +17,12 @@ Configurations:
]
-
Id: 'android-armv7-on-windows'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Target os: 'Android_ANY'
Target arch: 'armv7'
Compiler: 'Mingw'
Target compiler: 'Clang'
Platform dependency: 'windows-11_24h2-mingw13'
Platform dependency: 'windows-11_24h2-mingw15'
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
@@ -63,9 +63,9 @@ Configurations:
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86_64_NDK_LATEST}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
# We check QT_USE_TARGET_ANDROID_BUILD_DIR and QT_USE_ANDROID_MODERN_BUNDLE only in one
# We check QT_USE_TARGET_ANDROID_BUILD_DIR and QT_ANDROID_GRADLE_MULTI_MODULE only in one
# configuration, to ensure builds without this option work too.
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_USE_TARGET_ANDROID_BUILD_DIR=ON -DQT_USE_ANDROID_MODERN_BUNDLE=ON',
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_USE_TARGET_ANDROID_BUILD_DIR=ON -DQT_ANDROID_GRADLE_MULTI_MODULE=ON',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_LATEST}}',
'ANDROID_EMULATOR=emulator_x86_64_api_36'
]
@@ -82,9 +82,9 @@ Configurations:
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86_64_NDK_LATEST}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
# We check QT_USE_TARGET_ANDROID_BUILD_DIR and QT_USE_ANDROID_MODERN_BUNDLE only in one
# We check QT_USE_TARGET_ANDROID_BUILD_DIR and QT_ANDROID_GRADLE_MULTI_MODULE only in one
# configuration, to ensure builds without this option work too.
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_USE_TARGET_ANDROID_BUILD_DIR=ON -DQT_USE_ANDROID_MODERN_BUNDLE=ON',
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_USE_TARGET_ANDROID_BUILD_DIR=ON -DQT_ANDROID_GRADLE_MULTI_MODULE=ON',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_LATEST}}',
'ANDROID_EMULATOR=emulator_x86_64_api_37'
]
@@ -1,7 +1,7 @@
Version: 2
Configurations:
-
Id: 'harmonyos-20-arm64-on-ubuntu-24.04-x64'
Id: 'harmonyos-23-arm64-on-linux'
Template: 'qtci-linux-Ubuntu-24.04-x86_64-50'
Target os: 'HarmonyOS_ANY'
Target arch: 'arm64'
@@ -11,12 +11,13 @@ Configurations:
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests', 'Packaging', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-release -nomake examples -no-dbus -no-use-gold-linker -no-pch -openssl-runtime',
'TARGET_CMAKE_ARGS=-DOHOS_SDK_ROOT={{.Env.HARMONYOS_SDK_ROOT}} -DOHOS_ABI=arm64-v8a -DWARNINGS_ARE_ERRORS=OFF -DQT_QMAKE_TARGET_MKSPEC=ohos-clang -DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'TARGET_CMAKE_ARGS=-DOHOS_SDK_ROOT={{.Env.HARMONYOS_SDK_ROOT}} -DOHOS_ARCH=arm64-v8a -DWARNINGS_ARE_ERRORS=OFF -DQT_QMAKE_TARGET_MKSPEC=ohos-clang -DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'COMMON_TARGET_TEST_CMAKE_ARGS=-DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}'
'COMMON_TARGET_TEST_CMAKE_ARGS=-DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'QT_HARMONYOS_HVIGOR=/opt/harmonyos/command-line-tools/bin/hvigorw'
]
-
Id: 'harmonyos-20-arm64-on-ubuntu-24.04-x64-developer-build'
Id: 'harmonyos-23-arm64-on-linux-developer-build'
Template: 'qtci-linux-Ubuntu-24.04-x86_64-50'
Target os: 'HarmonyOS_ANY'
Target arch: 'arm64'
@@ -25,8 +26,25 @@ Configurations:
Platform dependency: 'ubuntu-24.04-x64-developer-build'
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests', 'StandaloneExamples']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-developer-build -debug -no-dbus -no-use-gold-linker -no-pch -openssl-runtime',
'TARGET_CMAKE_ARGS=-DOHOS_SDK_ROOT={{.Env.HARMONYOS_SDK_ROOT}} -DOHOS_ABI=arm64-v8a -DWARNINGS_ARE_ERRORS=OFF -DQT_QMAKE_TARGET_MKSPEC=ohos-clang -DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'TARGET_CONFIGURE_ARGS=-developer-build -debug -make examples -no-dbus -no-use-gold-linker -no-pch -openssl-runtime',
'TARGET_CMAKE_ARGS=-DOHOS_SDK_ROOT={{.Env.HARMONYOS_SDK_ROOT}} -DOHOS_ARCH=arm64-v8a -DWARNINGS_ARE_ERRORS=OFF -DQT_QMAKE_TARGET_MKSPEC=ohos-clang -DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'COMMON_TARGET_TEST_CMAKE_ARGS=-DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}'
'COMMON_TARGET_TEST_CMAKE_ARGS=-DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'QT_HARMONYOS_HVIGOR=/opt/harmonyos/command-line-tools/bin/hvigorw'
]
-
Id: 'harmonyos-23-arm64-on-macos'
Template: 'qtci-macos-26-arm-105'
Target os: 'HarmonyOS_ANY'
Target arch: 'arm64'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'macos-universal-on-arm64'
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests', 'StandaloneExamples']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-developer-build -debug -make examples -no-dbus -no-use-gold-linker -no-pch -openssl-runtime',
'TARGET_CMAKE_ARGS=-DOHOS_SDK_ROOT={{.Env.HARMONYOS_SDK_ROOT}} -DOHOS_ARCH=arm64-v8a -DWARNINGS_ARE_ERRORS=OFF -DQT_QMAKE_TARGET_MKSPEC=ohos-clang -DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'COMMON_TARGET_TEST_CMAKE_ARGS=-DCMAKE_FIND_ROOT_PATH={{.Env.VCPKG_OHOS_INSTALLED}}',
'QT_HARMONYOS_HVIGOR=/opt/harmonyos/command-line-tools/bin/hvigorw'
]
@@ -2,19 +2,6 @@ Version: 2
Configurations:
-
Id: 'webassembly-linux-thread-asyncify'
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
Platform dependency: 'opensuse-15.6-developer-build'
Features: ['DoNotRunTests', 'UseConfigure']
Environment variables: [
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
"TARGET_CONFIGURE_ARGS=-release -platform wasm-emscripten -nomake examples -feature-thread \
-feature-exceptions -DQT_QMAKE_DEVICE_OPTIONS=\"QT_EMSCRIPTEN_ASYNCIFY=1\"",
'HEADLESS_CHROME_FOR_TESTING=true'
]
-
Id: 'webassembly-linux-thread-asyncify-new'
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
@@ -28,11 +15,11 @@ Configurations:
]
-
Id: 'webassembly-windows'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Target os: 'WebAssembly'
Compiler: 'Mingw'
Target compiler: 'Clang'
Platform dependency: 'windows-11_24h2-mingw13'
Platform dependency: 'windows-11_24h2-mingw15'
Features: ['Packaging','DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'Path={{.Env.EMSDK_PATH}};{{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
@@ -43,10 +30,10 @@ Configurations:
]
-
Id: 'webassembly-linux-thread'
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
Platform dependency: 'opensuse-15.6-developer-build'
Platform dependency: 'opensuse-16.0-developer-build'
Features: ['Packaging', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
@@ -54,34 +41,8 @@ Configurations:
'NON_QTBASE_TARGET_CMAKE_ARGS=-DQT_ADDITIONAL_HOST_PACKAGES_PREFIX_PATH=/usr/local -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'TARGET_CMAKE_ARGS=-DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON'
]
-
Id: 'webassembly-linux-thread-new'
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
Platform dependency: 'opensuse-16.0-developer-build'
Features: ['DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
'TARGET_CONFIGURE_ARGS=-release -platform wasm-emscripten -nomake examples -feature-thread',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DQT_ADDITIONAL_HOST_PACKAGES_PREFIX_PATH=/usr/local -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'TARGET_CMAKE_ARGS=-DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON'
]
-
Id: 'webassembly-linux-shared'
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
Platform dependency: 'opensuse-15.6-developer-build'
Features: ['DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
'TARGET_CONFIGURE_ARGS=-release -platform wasm-emscripten -no-feature-thread -nomake tests -nomake examples -shared',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DQT_ADDITIONAL_HOST_PACKAGES_PREFIX_PATH=/usr/local -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'TARGET_CMAKE_ARGS=-DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON'
]
-
Id: 'webassembly-linux-shared-new'
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
-14
View File
@@ -1,14 +0,0 @@
Version: 2
Configurations:
-
Id: "ios-tests-on-macos"
Template: 'qtci-macos-15-arm-104'
Target os: 'IOS_ANY'
Target arch: 'arm64'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'macos-universal-on-arm64'
Features: ['Sccache', 'DebugAndRelease', 'MinimalStaticTests', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-debug-and-release -nomake examples -platform macx-ios-clang'
]
+3 -4
View File
@@ -9,7 +9,7 @@ Configurations:
-
Id: 'macos-universal-on-arm64'
Template: 'qtci-macos-15-arm-105'
Template: 'qtci-macos-26-arm-105'
Compiler: 'Clang'
Target arch: 'x86_64-arm64'
Features: ['Sccache', 'Packaging', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
@@ -41,9 +41,8 @@ Configurations:
Id: 'macos-26-x86_64-tests'
Template: 'qtci-macos-26-x86_64-103'
Compiler: 'Clang'
Features: ['Sccache', 'TestOnly', 'Packaging', 'DoNotAbortTestingOnFirstFailure']
Features: ['Sccache', 'TestOnly', 'Packaging']
Platform dependency: 'macos-universal-on-arm64'
Environment variables: [ 'COIN_CTEST_IGNORE_EXIT_CODE=1' ]
# And arm64
@@ -81,6 +80,7 @@ Configurations:
Environment variables: [
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
'QTBASE_EXAMPLES_CMAKE_ARGS=-DQT_BUILD_EXAMPLES_AS_EXTERNAL=ON',
]
-
Id: 'macos-arm64-developer-build'
@@ -126,4 +126,3 @@ Configurations:
Compiler: 'Clang'
Features: ['TestOnly']
Platform dependency: 'macos-26-arm64-developer-build'
Environment variables: [ 'COIN_CTEST_IGNORE_EXIT_CODE=1' ]
@@ -0,0 +1,4 @@
Version: 2
Module only: True
Include: [yocto.yaml]
Configurations: []
@@ -2,7 +2,7 @@ Version: 2
Include: [
cmake_platforms.yaml: [
'rhel-9.6',
'windows-11_24h2-mingw13'
'windows-11_24h2-mingw15'
],
cmake_platforms_target_android.yaml: [
'android-15-x86_64-on-linux',
@@ -2,7 +2,7 @@ Version: 2
Include: [
cmake_platforms.yaml: [
'rhel-9.6',
'windows-11_24h2-mingw13'
'windows-11_24h2-mingw15'
],
cmake_platforms_target_android.yaml: [
'android-15-x86_64-on-linux',
+1 -1
View File
@@ -2,7 +2,7 @@ Version: 2
Configurations:
-
Id: 'windows-11_24H2-msvc2022-developer-build-cxx23'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'DebugAndRelease', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
Configure arguments: '-debug-and-release -force-asserts -make examples -developer-build -force-debug-info -qt-zlib -c++std c++23'
@@ -0,0 +1,15 @@
Version: 2
Module only: True
Include: [
cmake_platforms.yaml: [
"ubuntu-24.04-x64-developer-build"
],
cmake_platforms_target_harmonyos.yaml: [
"harmonyos-23-arm64-on-linux-developer-build"
]
]
Configurations: []
Overrides:
-
Id: 'harmonyos-23-arm64-on-linux-developer-build'
-Features: ['DoNotRunTests']
@@ -0,0 +1,15 @@
Version: 2
Module only: True
Include: [
cmake_platforms.yaml: [
"ubuntu-24.04-x64"
],
cmake_platforms_target_harmonyos.yaml: [
"harmonyos-23-arm64-on-linux"
]
]
Configurations: []
Overrides:
-
Id: 'harmonyos-23-arm64-on-linux'
-Features: ['DoNotRunTests']
@@ -0,0 +1,24 @@
Version: 2
Module only: True
Include: [
cmake_platforms.yaml: [
"ios-arm64-simulator"
]
]
Configurations:
-
Id: 'ios-26-simulator-tests'
Template: 'qtci-macos-26-arm-105'
Compiler: 'Clang'
Target os: 'IOS_ANY'
Target arch: 'arm64'
Platform dependency: 'ios-arm64-simulator'
Features: ['TestOnly', 'Insignificant', 'DoNotAbortTestingOnFirstFailure']
Environment variables: [
'APPLE_SIMULATOR_DEVICE_TYPE=com.apple.CoreSimulator.SimDeviceType.iPad-Pro-13-inch-M4-8GB',
]
Overrides:
-
Id: 'ios-arm64-simulator'
-Features: ['DisableTests']
+Features: ['DoNotRunTests']
@@ -0,0 +1,14 @@
Version: 2
Module only: True
Include: [
cmake_platforms.yaml: [
'ubuntu-22.04'
]
]
Configurations:
-
Id: 'ubuntu-22.04-Axivion'
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
Compiler: 'GCC'
Features: ['UseConfigure', 'VMSize16', 'RunAsPlatformDependency', 'PysideAxivion']
Platform dependency: 'ubuntu-22.04'
@@ -1,18 +1,18 @@
Version: 2
Include: [
cmake_platforms.yaml: [
'windows-11_24h2-mingw13'
'windows-11_24h2-mingw15'
]
]
Configurations:
-
Id: 'qnx-710-arm64-on-windows'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Target os: 'QNX_710'
Target arch: 'arm64'
Compiler: 'Mingw'
Target compiler: 'QCC'
Platform dependency: 'windows-11_24h2-mingw13'
Platform dependency: 'windows-11_24h2-mingw15'
Features: ['DisableTests', 'UseConfigure']
Environment variables: [
'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}',
@@ -2,11 +2,14 @@ Version: 2
Module only: True
Include: [
cmake_platforms.yaml: [
"ubuntu-22.04"
'ubuntu-22.04'
]
]
Configurations: []
Overrides:
Configurations:
-
Id: 'ubuntu-22.04'
Features: ['Axivion', 'DisableTests', 'UseConfigure', 'VMSize16']
Id: 'ubuntu-22.04-Axivion'
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
Compiler: 'GCC'
Features: ['UseConfigure', 'VMSize16', 'TestOnly']
Environment variables: ['AXIVION_ANALYSIS=1']
Platform dependency: 'ubuntu-22.04'
@@ -0,0 +1,14 @@
Version: 2
Module only: True
Configurations:
-
Id: 'ubuntu-24.04-lcov'
Template: 'qtci-linux-Ubuntu-24.04-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'UseConfigure', 'lcov', 'VMSize8', 'DisableTests']
Configure arguments: '-developer-build -nomake examples -release -force-debug-info -separate-debug-info -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
]
@@ -2,7 +2,7 @@ Version: 2
Configurations:
-
Id: 'windows-11_24H2-msvc2022-unity-build'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests'] # note: we cannot build debug builds due to our llvm binaries
Configure arguments: '-force-debug-info -nomake examples -qt-zlib' # disabled example builds: qmake builds fail with C1041
+2 -2
View File
@@ -3,7 +3,7 @@ Configurations: []
Include: [
cmake_platforms.yaml: [
'windows-11_24H2-msvc2022-developer-build',
'windows-11_24H2-mingw13-developer-build',
'windows-11_24H2-mingw15-developer-build',
'windows-11_24H2-llvm'
]
]
@@ -13,7 +13,7 @@ Overrides:
Id: 'windows-11_24H2-msvc2022-developer-build'
Configure arguments: '-qtnamespace TestNamespace -debug-and-release -force-asserts -make examples -developer-build -force-debug-info -qt-zlib -c++std c++20'
-
Id: 'windows-11_24H2-mingw13-developer-build'
Id: 'windows-11_24H2-mingw15-developer-build'
Configure arguments: '-qtnamespace TestNamespace -developer-build -release -force-asserts -force-debug-info -separate-debug-info -make examples'
-
Id: 'windows-11_24H2-llvm'
+1 -1
View File
@@ -7,7 +7,7 @@ Include: [
"ubuntu-22.04-developer-build-x11-tests",
"ubuntu-24.04-x64",
"windows-11_24H2-msvc2022-developer-build",
"ios-universal",
"ios-device",
"documentation-warnings",
],
macos.yaml: [
+3 -3
View File
@@ -2,7 +2,7 @@ Version: 2
Module only: True
Configurations:
-
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'DebugAndRelease']
Configure arguments: ''
@@ -28,7 +28,7 @@ Configurations:
Environment variables: []
# without tests
-
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'DebugAndRelease', 'DisableTests']
Configure arguments: ''
@@ -36,7 +36,7 @@ Configurations:
Environment script: ['%ProgramFiles%\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat', 'amd64']
# oldest Qt version
-
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'DebugAndRelease', 'OldestQt']
Configure arguments: ''
-2
View File
@@ -1,10 +1,8 @@
Version: 2
Include: [
cmake_platforms.yaml,
cmake_platforms_target_harmonyos.yaml,
cmake_platforms_static_tests.yaml,
integrity.yaml,
ios-tests.yaml,
address_sanitizer_platforms.yaml,
linux_android_tests_multi_abi.yaml,
wasm_qtbase_tests.yaml,
+1 -1
View File
@@ -7,7 +7,7 @@ Include: [
Configurations:
-
Id: 'windows-quick-bridges-csharp'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesCsharp']
+1 -1
View File
@@ -10,7 +10,7 @@ Include: [
Configurations:
-
Id: 'windows-quick-bridges-java'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesJava']
+1 -1
View File
@@ -11,7 +11,7 @@ Include: [
Configurations:
-
Id: 'windows-quick-bridges-python'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesPython']
+1 -1
View File
@@ -9,7 +9,7 @@ Include: [
Configurations:
-
Id: 'windows-quick-bridges-rust'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesRust']
+1 -1
View File
@@ -9,7 +9,7 @@ Include: [
Configurations:
-
Id: 'windows-quick-bridges-swift'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesSwift']
+3 -3
View File
@@ -12,21 +12,21 @@ Include: [
Configurations:
-
Id: 'windows-quick-bridges-rust'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesRust']
-
Id: 'windows-quick-bridges-python'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesPython']
-
Id: 'windows-quick-bridges-java'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesJava']
-1
View File
@@ -2,7 +2,6 @@ Version: 2
Include: [
cmake_platforms.yaml,
integrity.yaml,
ios-tests.yaml,
address_sanitizer_platforms.yaml,
wasm_qtdeclarative_tests.yaml,
cmake_platforms_static_tests.yaml,
+1 -1
View File
@@ -13,6 +13,6 @@ Configurations:
Features: ['TestOnly']
-
Id: 'qtgp-on-windows-24h2'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['TestOnly']
+6
View File
@@ -0,0 +1,6 @@
Version: 2
Include: [
cmake_platforms.yaml,
address_sanitizer_platforms.yaml
]
Configurations: []
@@ -7,13 +7,13 @@ Include: [
"ubuntu-22.04",
"ubuntu-22.04-developer-build",
"ubuntu-24.04-arm64",
"opensuse-15.6-developer-build",
"ubuntu-24.04-x64",
"opensuse-16.0-developer-build",
"sles-15_sp6-static",
"windows-10_22h2-msvc2022",
"rhel-9.6",
"windows-11_24h2-mingw13",
"windows-11_24H2-mingw13-developer-build",
"windows-11_24h2-mingw15",
"windows-11_24H2-mingw15-developer-build",
"windows-11_24H2-llvm",
"windows-11_24H2-msvc2022",
"windows-11_23h2-arm64-msvc2022"
@@ -46,7 +46,7 @@ Configurations:
'TARGET_CONFIGURE_ARGS=-release -no-warnings-are-errors -nomake examples -qt-harfbuzz -device linux-generic-g++ -device-option "CROSS_COMPILE={{.Env.QEMUARM64_TOOLCHAIN_CROSS_COMPILE}}" -device-option "DISTRO_OPTS=boot2qt" -no-feature-forkfd_pidfd -qtlibinfix TestInfix',
'TARGET_CMAKE_ARGS=-DCMAKE_TOOLCHAIN_FILE={{.Env.QEMUARM64_TOOLCHAIN_FILE}} -DQT_FORCE_BUILD_TOOLS=ON',
'QT_YOCTO_ENVSETUP={{.Env.QEMUARM64_TOOLCHAIN_ENVSETUP}}',
"QT_CMAKE_DIR=/opt/cmake-3.30.5/bin",
"QT_CMAKE_DIR=/opt/cmake-4.3.2/bin",
'QT_SYSROOT_FOR_RUNNING_TESTS={{.Env.QEMUARM64_TOOLCHAIN_SYSROOT}}',
'GST_PLUGIN_SCANNER={{.Env.QEMUARM64_TOOLCHAIN_SYSROOT}}/usr/libexec/gstreamer-1.0/gst-plugin-scanner',
'QT_QUICK_BACKEND=software',
+2 -3
View File
@@ -9,13 +9,12 @@ Include: [
"ubuntu-22.04",
"ubuntu-22.04-developer-build",
"ubuntu-24.04-arm64",
"opensuse-15.6-developer-build",
"opensuse-16.0-developer-build",
"sles-15_sp6-static",
"windows-10_22h2-msvc2022",
"rhel-9.6",
"windows-11_24h2-mingw13",
"windows-11_24H2-mingw13-developer-build",
"windows-11_24h2-mingw15",
"windows-11_24H2-mingw15-developer-build",
"windows-11_24H2-llvm",
"windows-11_24H2-msvc2022",
"windows-11_23h2-arm64-msvc2022"
+2 -1
View File
@@ -1,6 +1,7 @@
Version: 2
Include: [
cmake_platforms.yaml,
address_sanitizer_platforms.yaml
address_sanitizer_platforms.yaml,
offline_documentation.yaml
]
Configurations: []
+1 -1
View File
@@ -46,7 +46,7 @@ Configurations:
]
-
Id: 'windows-quick-bridges'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure', 'DisableTests', 'Insignificant']
Configure arguments: >
+1 -137
View File
@@ -4,7 +4,6 @@ Include: [
"macos-universal-on-arm64",
],
cmake_platforms.yaml: [
"opensuse-15.6-developer-build",
"opensuse-16.0-developer-build",
]
]
@@ -293,7 +292,7 @@ Configurations:
]
-
Id: 'windows-11_24H2-msvc2022-static-quicklite'
Template: 'qtci-windows-11_24H2-x86_64-71'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'MSVC2022'
Features: ['Sccache', 'UseConfigure', 'DisableTests', 'Insignificant']
Configure arguments: >
@@ -562,141 +561,6 @@ Configurations:
]
-
Id: 'wasm-quick-minimal'
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
Platform dependency: 'opensuse-15.6-developer-build'
Features: ['Sccache', 'UseConfigure', 'DisableTests', 'Insignificant']
Environment variables: [
'EM_CONFIG={{.Env.EMSDK}}/.emscripten',
'TARGET_CMAKE_ARGS=
-DCMAKE_CXX_FLAGS="-flto"
-DCMAKE_EXE_LINKER_FLAGS="-flto"',
'TARGET_CONFIGURE_ARGS=
-release
-platform wasm-emscripten
-nomake examples
-nomake tests
-feature-thread
-optimize-size
-static
-ltcg
-feature-c++20
-disable-deprecated-up-to 0x070000
-no-feature-sql
-no-feature-xml
-no-feature-printsupport
-no-feature-dbus
-no-feature-vnc
-no-feature-future
-no-feature-concurrent
-no-feature-process
-no-feature-processenvironment
-no-feature-multiprocess
-no-feature-sharedmemory
-no-feature-permissions
-no-feature-udpsocket
-no-feature-localserver
-no-feature-picture
-no-feature-pdf
-no-feature-accessibility
-no-feature-clipboard
-no-feature-draganddrop
-no-feature-image_heuristic_mask
-no-feature-imageformat_bmp
-no-feature-imageformat_ppm
-no-feature-imageformat_xbm
-no-feature-cssparser
-no-feature-action
-no-feature-whatsthis
-no-feature-vkgen
-no-feature-backtrace
-no-feature-stack_clash_protection
-no-feature-mimetype
-no-feature-textmarkdownreader
-no-feature-textodfwriter
-no-feature-testlib
-no-feature-texthtmlparser
-no-feature-textmarkdownwriter
-no-feature-imageio-text-loading
-no-feature-image_text
-no-feature-proxymodel
-no-feature-filesystemmodel
-no-feature-wheelevent
-no-feature-tabletevent
-no-feature-icu
-no-feature-systemtrayicon
-no-feature-raster-64bit
-no-feature-raster-fp
-no-feature-undostack
-no-feature-undogroup
-no-feature-undocommand
-no-feature-sctp
-no-feature-dtls
-no-feature-networkproxy
-no-feature-getifaddrs
-no-feature-ipv6ifname
-no-feature-libresolv
-no-feature-libproxy
-no-feature-networkinterface
-no-feature-networkdiskcache
-no-feature-topleveldomain
-no-feature-gssapi
-no-feature-sha3-fast
-no-feature-systemsemaphore
-no-feature-gestures
-no-feature-jalalicalendar
-no-feature-hijricalendar
-no-feature-islamiccivilcalendar
-no-feature-timezone
-no-feature-timezone_tzdb
-no-feature-im
-no-feature-graphicsframecapture
-no-feature-library
-no-feature-filesystemwatcher
-no-feature-gif
-no-feature-ico
-no-feature-sessionmanager
-no-feature-emojisegmenter
-no-feature-egl
-no-feature-metal
-no-feature-vulkan
-no-feature-openvg
-no-feature-wasm-simd128
-no-feature-wasm-exceptions
-no-feature-wasm-jspi
-no-feature-harfbuzz',
'NON_QTBASE_CMAKE_ARGS=
-DFEATURE_qml_network=off
-DFEATURE_qml_ssl=off
-DFEATURE_qml_jit=off
-DFEATURE_qml_debug=off
-DFEATURE_qml_preview=off
-DFEATURE_qml_xml_http_request=off
-DFEATURE_qml_locale=off
-DFEATURE_qml_worker_script=off
-DFEATURE_qml_xmllistmodel=off
-DFEATURE_quick_canvas=off
-DFEATURE_quick_designer=off
-DFEATURE_quick_flipable=off
-DFEATURE_quick_gridview=off
-DFEATURE_quick_tableview=off
-DFEATURE_quick_treeview=off
-DFEATURE_quick_particles=off
-DFEATURE_quick_pathview=off
-DFEATURE_quick_sprite=off
-DFEATURE_quick_draganddrop=off
-DFEATURE_quick_pixmap_cache_threaded_download=off
-DFEATURE_qml_table_model=off
-DFEATURE_qml_tree_model=off
-DFEATURE_quicktemplates2_hover=off
-DFEATURE_quicktemplates2_multitouch=off
-DFEATURE_quicktemplates2_calendar=off
-DFEATURE_qdoc=off',
'TARGET_CMAKE_ARGS=-DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON'
]
-
Id: 'wasm-quick-minimal-new'
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
@@ -3,7 +3,7 @@ Include: [
cmake_platforms.yaml: [
"documentation-warnings",
"rhel-9.6",
'windows-11_24h2-mingw13',
'windows-11_24h2-mingw15',
],
macos.yaml: [
'macos-universal-on-arm64'
@@ -0,0 +1,25 @@
Version: 2
Include: [
cmake_platforms.yaml: [
'ubuntu-22.04',
'ubuntu-22.04-x11-tests',
'ubuntu-24.04-x64',
'ubuntu-24.04-x64-x11-tests',
'rhel-9.6',
'rhel-10.0',
'windows-11_24H2-msvc2022',
'windows-11_24H2-msvc2026',
'windows-11_24h2-mingw15',
'windows-11_24H2-llvm'
],
macos.yaml: [
'macos-universal-on-arm64',
'macos-14-x86_64-tests',
'macos-15-x86_64-tests',
'macos-26-x86_64-tests',
'macos-14-arm64-tests',
'macos-15-arm64-tests',
'macos-26-arm64-tests'
]
]
Configurations: []
+13 -3
View File
@@ -5,11 +5,21 @@ Include: [
'ubuntu-22.04-x11-tests',
'ubuntu-24.04-x64',
'ubuntu-24.04-x64-x11-tests',
'windows-11_24H2-msvc2022'
'rhel-9.6',
'rhel-10.0',
'windows-11_24H2-msvc2022',
'windows-11_24H2-msvc2026',
'windows-11_24h2-mingw15',
'windows-11_24H2-llvm'
],
macos.yaml: [
'macos-arm64-developer-build',
'macos-14-arm64-developer-build-tests'
'macos-universal-on-arm64',
'macos-14-x86_64-tests',
'macos-15-x86_64-tests',
'macos-26-x86_64-tests',
'macos-14-arm64-tests',
'macos-15-arm64-tests',
'macos-26-arm64-tests'
]
]
Configurations: []
+1 -8
View File
@@ -2,15 +2,8 @@ Version: 2
Configurations:
-
Id: 'webassembly-linux-thread-asyncify-tests'
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
Features: ['Sccache', 'TestOnly']
Platform dependency: 'webassembly-linux-thread-asyncify'
-
Id: 'webassembly-linux-thread-asyncify-tests-new'
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
Features: ['Sccache', 'TestOnly', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Platform dependency: 'webassembly-linux-thread-asyncify-new'
Platform dependency: 'webassembly-linux-thread-asyncify'
@@ -2,15 +2,8 @@ Version: 2
Configurations:
-
Id: 'webassembly-linux-thread-asyncify-tests'
Template: 'qtci-linux-openSUSE-15.6-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
Features: ['Sccache', 'TestOnly']
Platform dependency: 'webassembly-linux-thread-asyncify'
-
Id: 'webassembly-linux-thread-asyncify-tests-new'
Template: 'qtci-linux-openSUSE-16.0-x86_64-51'
Target os: 'WebAssembly'
Compiler: 'GCC'
Features: ['Sccache', 'TestOnly']
Platform dependency: 'webassembly-linux-thread-asyncify-new'
Platform dependency: 'webassembly-linux-thread-asyncify'
@@ -63,3 +63,9 @@ https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/
* Modify 'Windows Software Development Kit' from Add or remove programs
- Add feature 'Debugging Tools for Windows'
############################################################
Visual Studio 2026 and build tools were later updated to 17.14.33 in VS installer.
This updated (Latest) MSVC components to:
- MSVC v14.44.35211.0
- Windows 11 SDK (10.0.26100.7705)
.NET SDK was added
@@ -78,18 +78,25 @@ function InstallNdk() {
ndkTargetFile="/tmp/$ndkFile"
ndkSourceFile="$basePath/$ndkFile"
ndkTargetDir="$targetFolder/$ndkVersion"
sudo mkdir -p "$ndkTargetDir"
DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile"
echo "Unzipping Android NDK to '$targetFolder'"
echo "Unzipping Android NDK to '$ndkTargetDir'"
# Get the package base directory name as string
zipBase=$(sudo zipinfo -1 "$ndkTargetFile" 2>/dev/null | awk '!seen {sub("/.*",""); print; seen=1}')
sudo unzip -q "$ndkTargetFile" -d "$targetFolder"
sudo unzip -q "$ndkTargetFile" -d "$ndkTargetDir"
rm "$ndkTargetFile"
androidNdkRoot="${targetFolder}/${zipBase}"
androidNdkRoot="${ndkTargetDir}/${zipBase}"
}
InstallNdk $ndkVersionLatest $ndkSha1Latest
SetEnvVar "ANDROID_NDK_ROOT_LATEST" "$androidNdkRoot"
# To be used by vcpkg
SetEnvVar "ANDROID_NDK_HOME" "$androidNdkRoot"
export ANDROID_NDK_HOME="$androidNdkRoot"
if [ "$ndkVersionPreview" != "$ndkVersionLatest" ]; then
InstallNdk $ndkVersionPreview $ndkSha1Preview
SetEnvVar "ANDROID_NDK_ROOT_PREVIEW" "$androidNdkRoot"
@@ -105,10 +112,6 @@ if [ "$ndkVersionNightly2" != "$ndkVersionLatest" ]; then
SetEnvVar "ANDROID_NDK_ROOT_NIGHTLY2" "$androidNdkRoot"
fi
# To be used by vcpkg
SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersionLatest"
export ANDROID_NDK_HOME="$targetFolder/android-ndk-$ndkVersionLatest"
echo "Changing ownership of Android files."
if uname -a |grep -q "el7"; then
sudo chown -R qt:wheel "$targetFolder"
@@ -252,7 +252,7 @@
"_active": true
},
"Qt-StrictIterators": {
"_active": true
"_active": false
},
"Qt-TemporaryIterator": {
"_active": true
+19 -6
View File
@@ -11,13 +11,26 @@ source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
majorminorversion="3.30"
version="3.30.5"
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/cmake/cmake-$version-linux-x86_64.tar.gz"
AltUrl="https://cmake.org/files/v$majorminorversion/cmake-$version-linux-x86_64.tar.gz"
SHA1="61b339cac5f110d5ed2934f66a26c2e991945e01"
majorminorversion="4.3"
version="4.3.2"
uname_m="$(uname -m)"
case "$uname_m" in
x86_64|amd64)
SHA1="736c0722ed8393b3eb74fd573f6c9c245770206a"
arch="x86_64"
;;
arm64|aarch64)
SHA1="a173eb910c808f561422feb45fe1fe57c3e346fa"
arch="aarch64"
;;
*) fatal "Unknown architecture in uname: $uname_m" 43 ;;
esac
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/cmake/cmake-$version-linux-$arch.tar.gz"
AltUrl="https://cmake.org/files/v$majorminorversion/cmake-$version-linux-$arch.tar.gz"
targetFolder="/opt/cmake-$version"
appPrefix="cmake-$version-linux-x86_64"
appPrefix="cmake-$version-linux-$arch"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix"
@@ -0,0 +1,66 @@
#!/usr/bin/env bash
# Copyright (C) 2026 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
set -e
OS_STATE_DIR="/var/lib/qtciid"
OS_STATE_FILE="$OS_STATE_DIR/os-version"
get_os_id() {
if [[ -r /etc/os-release ]]; then
# shellcheck disable=SC1091
. /etc/os-release
# os-release contains ID of the distro (e.g. 'ubuntu')
# VERSION e.g. '24.04.1 LTS (Noble Numbat)'
if [[ -n "${ID:-}" && -n "${VERSION:-}" ]]; then
echo "${ID}:${VERSION}"
return 0
fi
fi
echo "unknown:unknown"
return 1
}
record_os_version() {
local os_id
os_id="$(get_os_id)"
if [[ "$os_id" == "unknown:unknown" ]]; then
echo "ERROR: Unable to determine OS version"
exit 1
fi
sudo mkdir -p "$OS_STATE_DIR"
echo "$os_id" | sudo tee "$OS_STATE_FILE" > /dev/null
echo "OS version: $os_id"
}
verify_os_version_unchanged() {
if [[ ! -f "$OS_STATE_FILE" ]]; then
echo "ERROR: OS version state file missing: $OS_STATE_FILE"
exit 1
fi
local start_version current_version
start_version="$(cat "$OS_STATE_FILE")"
current_version="$(get_os_id)"
if [[ "$current_version" == "unknown:unknown" ]]; then
echo "ERROR: Unable to determine current OS version"
exit 1
fi
if [[ "$start_version" != "$current_version" ]]; then
echo "ERROR: OS version changed during provisioning!"
echo " Start version : $start_version"
echo " End version : $current_version"
exit 1
fi
echo "OS version unchanged ($current_version)"
}
@@ -1,3 +1,4 @@
diffutils
make
nasm
yasm
@@ -1,4 +1,5 @@
diffutils
libva-devel
make
nasm
yasm
@@ -1,3 +1,4 @@
diffutils
make
nasm
yasm
@@ -1,4 +1,5 @@
diffutils
libva-dev
make
nasm
yasm
+100 -13
View File
@@ -9,18 +9,105 @@ source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
# shellcheck source=../unix/SourceEnvVars.sh
source "${BASH_SOURCE%/*}/../unix/SourceEnvVars.sh"
echo "Caching Gradle distribution and dependencies"
gradleCacheFileName="gradle_9.3.1_linux_cache_v2.tar.gz"
gradleCacheUrl="http://ci-files01-hki.ci.qt.io/input/gradle/$gradleCacheFileName"
gradleCacheSha1="e88989d55f68e978442e567e4707a6093c829af6"
gradleCacheFile="/tmp/$gradleCacheFileName"
DownloadURL "$gradleCacheUrl" "$gradleCacheUrl" "$gradleCacheSha1" "$gradleCacheFile"
mkdir -p "$HOME/.gradle"
tar -xzf "$gradleCacheFile" -C "$HOME/.gradle" --strip-components=1
rm "$gradleCacheFile"
echo "Caching Gradle distributions and dependencies"
gradle_project_source="${BASH_SOURCE%/*}/../shared/gradle/project"
cp -r "$gradle_project_source" /tmp/gradle_project
cd /tmp/gradle_project
chmod +x gradlew
sh gradlew build
gradleDistributionMirror="http://ci-files01-hki.ci.qt.io/input/gradle"
gradleInitScript="init.d/nexus-mirror.gradle"
# Route every Gradle repository through the internal Nexus mirror.
mkdir -p "$HOME/.gradle/init.d"
cp "${BASH_SOURCE%/*}/../shared/gradle/$gradleInitScript" "$HOME/.gradle/$gradleInitScript"
# Returns the hash of the Gradle binary distribution for a given Gradle version.
# Gradle calculates the hash as base36(md5(distributionUrl)).
gradleDistributionHash () {
version="$1"
propertiesFile="$gradle_project_source/gradle/wrapper/gradle-wrapper.properties"
# 1. Read the project's distributionUrl.
distributionUrl=$(grep '^distributionUrl=' "$propertiesFile")
distributionUrl=${distributionUrl#distributionUrl=}
# 2. Unescape the Java-properties (e.g. '\:').
distributionUrl=${distributionUrl//\\:/:}
# 3. Swap in the requested version while maintaining the distribution URL.
distributionUrl=${distributionUrl/gradle-[0-9.]*-bin.zip/gradle-$version-bin.zip}
if command -v md5sum >/dev/null 2>&1; then
md5Hex=$(printf '%s' "$distributionUrl" | md5sum | awk '{print $1}')
else
md5Hex=$(printf '%s' "$distributionUrl" | md5)
fi
# Convert the md5 to base36: read it as a number, then repeatedly take the
# next digit (number % 36) and divide by 36, prepending each digit's character.
number=$(printf 'ibase=16; %s\n' "$(printf '%s' "$md5Hex" | tr 'a-f' 'A-F')" | bc)
hash=""
alphabet="0123456789abcdefghijklmnopqrstuvwxyz"
while [ "$number" != "0" ]; do
digit=$(printf '%s %% 36\n' "$number" | bc)
number=$(printf '%s / 36\n' "$number" | bc)
hash="${alphabet:$digit:1}$hash"
done
printf '%s' "$hash"
}
# Seed a Gradle distribution binary into ~/.gradle from the internal mirror.
seedGradleDistribution () {
version="$1"
sha="$2"
distributionDir="$HOME/.gradle/wrapper/dists/gradle-${version}-bin/$(gradleDistributionHash "$version")"
if [ -e "$distributionDir/gradle-${version}-bin.zip.ok" ]; then
return 0
fi
mkdir -p "$distributionDir"
zip="$distributionDir/gradle-${version}-bin.zip"
url="$gradleDistributionMirror/gradle-${version}-bin.zip"
DownloadURL "$url" "$url" "$sha" "$zip"
unzip -q -o "$zip" -d "$distributionDir"
rm -f "$zip"
touch "$distributionDir/gradle-${version}-bin.zip.ok"
}
# Populate ~/.gradle/caches by priming the shared project for each Gradle and AGP profile.
cacheGradleProfile () {
echo "Caching Gradle profile $*"
tmp="$(mktemp -d)"
project="$tmp/project"
cp -r "$gradle_project_source" "$project"
props="$project/gradle/wrapper/gradle-wrapper.properties"
for kv in "$@"; do
case "$kv" in
gradle=*)
sed "s#gradle-[0-9.]*-bin.zip#gradle-${kv#*=}-bin.zip#" "$props" > "$props.tmp"
mv "$props.tmp" "$props"
;;
esac
done
toml="$project/gradle/libs.versions.toml"
for kv in "$@"; do
case "$kv" in
gradle=*) ;;
*)
key="${kv%%=*}"
val="${kv#*=}"
sed "/^\[versions\]/,/^\[/ s/^$key = .*/$key = \"$val\"/" "$toml" > "$toml.tmp"
mv "$toml.tmp" "$toml"
;;
esac
done
sh "$project/gradlew" --project-dir "$project" build
rm -rf "$tmp"
}
# Cache both the current and the previous versions to avoid issues during bumps.
seedGradleDistribution 9.3.1 "b266d5ff6b90eada6dc3b20cb090e3731302e553a27c5d3e4df1f0d76beaff06"
cacheGradleProfile gradle=9.3.1 agp=9.0.0
seedGradleDistribution 9.5.1 "bafc141b619ad6350fd975fc903156dd5c151998cc8b058e8c1044ab5f7b031f"
cacheGradleProfile gradle=9.5.1 agp=9.2.1
echo "Cached Gradle distributions and dependencies under $HOME/.gradle."
@@ -21,13 +21,12 @@ prefix="${2:-$default_prefix}"
pkgconfig_path="$PKG_CONFIG_PATH"
install_ff_nvcodec_headers() {
local nv_codec_version="11.1.5.3" # use 11.x.x.x to ensure compatibility with 470 nvidia drivers; might be upated to 12.0
local nv_codec_url_public="https://github.com/FFmpeg/nv-codec-headers/archive/refs/tags/n$nv_codec_version.zip"
local nv_codec_url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/nv-codec-headers/nv-codec-headers-$nv_codec_version.zip"
local nv_codec_sha1="78715d521de102362e553dc92577bbe81905a321"
#nv_codec_sha1="4f30539f8dd31945da4c3da32e66022f9ca59c08" // 12.0
local nv_codec_version="12.0.16.1" # use 11.x.x.x to ensure compatibility with 520 nvidia drivers
local nv_codec_url_public="https://github.com/FFmpeg/nv-codec-headers/releases/download/n12.0.16.1/nv-codec-headers-$nv_codec_version.tar.gz"
local nv_codec_url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/nv-codec-headers/nv-codec-headers-$nv_codec_version.tar.gz"
local nv_codec_sha1="df7239777af15af5d7e563d2af0deff874c3b770"
local target_dir="$HOME"
local nv_codec_dir="$target_dir/nv-codec-headers-n$nv_codec_version"
local nv_codec_dir="$target_dir/nv-codec-headers-$nv_codec_version"
if [ ! -d "$nv_codec_dir" ]; then
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
@@ -17,8 +17,8 @@ APPNAME="CiNetworkTest"
EXECPATH="${ROOT}/${APPNAME}/bin"
EXEC="${EXECPATH}/${APPNAME}"
URL="https://ci-files01-hki.ci.qt.io/input/networktestapp"
TARBALL="CiNetworkTest-rhel-linux-x86_64-v1.1.tgz"
sha256="3a23593f163ca2452546d20d56cabc81fed03c930d6d96334a22827da5a6840a"
TARBALL="CiNetworkTest-rhel-linux-x86_64-v1.2.tgz"
sha256="2be05baebf48ff29ebcd06a0761b2a3d92ae5a66f78d0cd953513d8271eb7f83"
SOURCE="$URL/$TARBALL"
InstallFromCompressedFileFromURL "$SOURCE" "" "$sha256" "$ROOT" "$PREFIX"
+10 -2
View File
@@ -43,11 +43,19 @@ if [ ! -d "$targetFolder" ]; then
fi
# QNX SDP
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx710-windows-linux-20240417.tar.xz"
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx710-windows-linux-20260828.tar.xz"
targetFile="qnx710.tar.xz"
sha1="cd2d35004fb2798089e29d9e1226691426632da0"
sha1="c37e6f3a49a259d450b601843a9af2818b6feb96"
DownloadAndExtract "$sourceFile" "$sha1" "$targetFile" "$targetFolder"
# IANA timezone database overlay. Packaged separately from the SDP so it can be
# bumped without rebuilding the SDP tarball. Archive root is usr/ so the same
# archive suits both the 7.1 and 8.0 SDP layouts.
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/zoneinfo-2026a-usr.tar.xz"
targetFile="zoneinfo.tar.xz"
sha1="02deef2df3513d191ee3bb3a13fd61a814d7161a"
DownloadAndExtract "$sourceFile" "$sha1" "$targetFile" "$targetPath/target/qnx7"
sudo cp "$aarch64le_toolchain" "$targetPath"
sudo cp "$armv7le_toolchain" "$targetPath"
sudo cp "$x8664_toolchain" "$targetPath"
+16 -13
View File
@@ -43,31 +43,34 @@ if [ ! -d "$targetFolder" ]; then
fi
# QNX SDP
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx800-windows-linux-20260410.tar.xz"
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx800-windows-linux-20260828.tar.xz"
targetFile="qnx800.tar.xz"
sha1="a3fdcd98e12bc5054d00f18e4088af26288fd020"
sha1="f44b66d91625ab33e367cfb62a2950a041607caa"
DownloadAndExtract "$sourceFile" "$sha1" "$targetFile" "$targetFolder"
# IANA timezone database overlay. Packaged separately from the SDP so it can be
# bumped without rebuilding the SDP tarball. Archive root is qnx800/target/qnx/
# so it overlays onto $targetFolder (/opt/) directly.
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/zoneinfo-2026a.tar.xz"
# bumped without rebuilding the SDP tarball. Archive root is usr/ so the same
# archive suits both the 7.1 and 8.0 SDP layouts.
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/zoneinfo-2026a-usr.tar.xz"
targetFile="zoneinfo.tar.xz"
sha1="8c1678ff673bb588f63fc9277497cd38e0ea2253"
DownloadAndExtract "$sourceFile" "$sha1" "$targetFile" "$targetFolder"
sha1="02deef2df3513d191ee3bb3a13fd61a814d7161a"
DownloadAndExtract "$sourceFile" "$sha1" "$targetFile" "$targetPath/target/qnx"
sudo cp "$aarch64le_toolchain" "$targetPath"
sudo cp "$armv7le_toolchain" "$targetPath"
sudo cp "$x8664_toolchain" "$targetPath"
cp -R "$QNX_qemu_bld_files_dir" "$qemuTargetPath"
# fc-match tool is missing from QNX SDP and tst_qfont requires it to work corretly
# Download code-only package from https://www.iana.org/time-zones and follow README
# to build tools for QNX x86_64. If need to build new tool create new qnx_qemu_utils
# package which contains it and update required info below
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx_qemu_utils_20211208.tar.xz"
# The SDP ships fc-cache but not fc-match, which tst_qfont needs. Build it from
# fontconfig's fc-match/fc-match.c at the release matching the SDP's fontconfig
# (FC_MINOR/FC_REVISION in fontconfig.h), once per arch:
# qcc -Vgcc_ntox86_64 -O2 -o fc-match fc-match.c \
# -DHAVE_GETOPT_LONG=1 -DHAVE_UNISTD_H=1 -lfontconfig
# Pack as <arch>/fc-match into a new dated archive, then update below. 7.1 keeps
# its own archive.
sourceFile="http://ci-files01-hki.ci.qt.io/input/qnx/qnx_qemu_utils_800_20260825.tar.xz"
targetFile="qnx_qemu_utils.tar.xz"
targetFolder="$qemuTargetPath/local/misc_files"
sha1="7653f5d50f61f1591d7785c3ec261228ecc9dd22"
sha1="965b957c76d4bc59c010bb0908d1fea8975179c1"
mkdir -p "$targetFolder"
@@ -1,3 +1,9 @@
# Loopback — the QNX SDP's default /etc/hosts ships these, but this
# file overrides that default. Tests that connect to http(s)://localhost
# (e.g. tst_qhttpserver, tst_abstractoauth2) need them present.
127.0.0.1 localhost
::1 localhost
# Need to add all testserver names statically
# as current Docker uses Multicast DNS (mDNS) (avahi)
# Which does not work with QNX qemu
@@ -13,7 +13,7 @@ PATH=__IFS_PATH__:/system/xbin:.
var/share/zoneinfo=usr/share/zoneinfo
[uid=0 gid=0 dperms=755 type=dir] var/share/fonts
var/etc/fontconfig/fonts.conf=etc/fontconfig/fonts.conf
var/etc/fontconfig/fonts.conf=etc/fonts/fonts.conf
var/share/fonts=usr/share/fonts
var/etc/hosts=local/misc_files/etc/hosts
@@ -0,0 +1,3 @@
# local/snippets/ifs_files.custom
# Placeholder for local list of files to add to ifs
/usr/libexec/sshd-session=usr/libexec/sshd-session
@@ -18,6 +18,8 @@ rm -rf /data/var/share/fonts/NotoSansCJK*
rm -rf /data/var/share/fonts/NotoSansMonoCJK*
echo "---> Create fontconfig cache"
fc-cache &
# For fc-match in QFont tests
ln -Ps /system/lib/libfontconfig.so.17 /system/lib/libfontconfig.so.1
# Add default route so QNX knows where to send
# requests for unknown network
@@ -21,7 +21,7 @@ lib/libGLESv2.so.1=usr/lib/libGLESv2.so.1
lib/libEGL.so.1=usr/lib/libEGL.so.1
lib/libz.so.2=usr/lib/libz.so.2
lib/libxml2.so.2=usr/lib/libxml2.so.2
lib/libfreetype.so.24=usr/lib/libfreetype.so.24
lib/libfreetype.so.26=usr/lib/libfreetype.so.26
lib/libbz2.so.1=usr/lib/libbz2.so.1
lib/liblzma.so.5=usr/lib/liblzma.so.5
lib/libbacktrace.so.1=usr/lib/libbacktrace.so.1
@@ -54,7 +54,7 @@ lib/libmmrndclient.so.1=usr/lib/libmmrndclient.so.1
lib/libscreen.so.1=usr/lib/libscreen.so.1
# for fontconfig
lib/libfontconfig.so.1=usr/lib/libfontconfig.so.1
lib/libfontconfig.so.17=usr/lib/libfontconfig.so.17
xbin/fc-cache=bin/fc-cache
xbin/fc-match=local/misc_files/fc-match
@@ -1,3 +1,9 @@
# Loopback — the QNX SDP's default /etc/hosts ships these, but this
# file overrides that default. Tests that connect to http(s)://localhost
# (e.g. tst_qhttpserver, tst_abstractoauth2) need them present.
127.0.0.1 localhost
::1 localhost
# Need to add all testserver names statically
# as current Docker uses Multicast DNS (mDNS) (avahi)
# Which does not work with QNX qemu
@@ -13,11 +13,11 @@ PATH=__IFS_PATH__:/system/xbin:.
var/share/zoneinfo=usr/share/zoneinfo
[uid=0 gid=0 dperms=755 type=dir] var/share/fonts
var/etc/fontconfig/fonts.conf=etc/fontconfig/fonts.conf
var/etc/fontconfig/fonts.conf=etc/fonts/fonts.conf
var/share/fonts=usr/share/fonts
var/etc/hosts=local/misc_files/etc/hosts
var/etc/resolv.conf=local/misc_files/etc/resolv.conf
var/dhcpcd/resolv.conf=local/misc_files/etc/resolv.conf
var/etc/nsswitch.conf=etc/nsswitch.conf
[uid=0 gid=0 dperms=755 type=dir] var/etc/ssl/certs
@@ -28,6 +28,8 @@ lib/liblzma.so.5=usr/lib/liblzma.so.5
lib/libdbus-1.so=usr/lib//libdbus-1.so
lib/libdbus-1.so.22=usr/lib//libdbus-1.so.22
lib/libbacktrace.so.1=lib/libbacktrace.so.1
lib/libunwind-nto.so.0=usr/lib/libunwind-nto.so.0
lib/libunwind-x86_64.so.8=usr/lib/libunwind-x86_64.so.8
lib/libm.so.3=lib/libm.so.3
#############################################
@@ -53,13 +55,17 @@ xbin/fsevmgr=sbin/fsevmgr
##############################################
lib/libscreen.so.1=usr/lib/libscreen.so.1
##############################################
### Audio support
##############################################
lib/libasound.so.5=lib/libasound.so.5
# for fontconfig
lib/libfontconfig.so.17=usr/lib/libfontconfig.so.17
xbin/fc-cache=bin/fc-cache
xbin/fc-match=local/misc_files/fc-match
xbin/fc-match=local/misc_files/x86_64/fc-match
# network
lib/libssl.so=usr/lib/libssl.so
xbin/nslookup=usr/bin/nslookup
xbin/unbound=sbin/unbound
xbin/curl=usr/bin/curl
+4 -4
View File
@@ -6,13 +6,13 @@ set -ex
source "${BASH_SOURCE%/*}/../unix/sccache.sh"
targetVersion=v0.11.0
targetVersion=v0.15.0
if [[ $(uname -m) == 'aarch64' ]]; then
targetArch=aarch64-unknown-linux-musl
sha1=b7606d0fb461c0aa7351f511d9223416a322d52a
sha256=3a6a3712b49da3d263bf2d30d702de4302793016019e800bfb81c0c69401d8f8
else
targetArch=x86_64-unknown-linux-musl
sha1=ef389a20c85b732cccd48436a5e28ed40bed2806
sha256=782d2b5dd7ae0a55ebe368ab258114d0928d019ac2d949ab85d5d02f3926709e
fi
installSccache "$targetArch" "$targetVersion" "$sha1"
installSccache "$targetArch" "$targetVersion" "$sha256"
+39
View File
@@ -0,0 +1,39 @@
#!/usr/bin/env bash
# Copyright (C) 2026 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
# This script installs Syft
# Syft is used for generating SBOM (Software Bill of Materials) files.
# shellcheck source=../unix/InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="1.45.1"
uname_m="$(uname -m)"
case "$uname_m" in
x86_64|amd64)
SHA1="06e1d56173209977df8b11ad955843cb62f874fd"
arch="amd64"
;;
arm64|aarch64)
SHA1="c48638b3998066dbd139e94e116a81a6cc6299be"
arch="arm64"
;;
*) fatal "Unknown architecture in uname: $uname_m" 43 ;;
esac
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/syft/syft_${version}_linux_${arch}.tar.gz"
AltUrl="https://github.com/anchore/syft/releases/download/v${version}/syft_${version}_linux_${arch}.tar.gz"
targetFolder="/opt/syft-$version"
appPrefix=""
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix"
SetEnvVar "PATH" "$targetFolder:\$PATH"
echo "Syft = $version" >> ~/versions.txt
+14 -21
View File
@@ -13,60 +13,60 @@ source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
######### VXworks libs #########
# Installs to /opt/vxworks
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_libs_2503.tar.gz"
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_libs_2603.tar.gz"
AltUrl=""
sha1="96db52d86c2138a1ca31212372f48838ec08013e"
sha1="e9337894d4591e1d9e67640181c3d48fdb3d4a12"
targetFolder="/opt"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
SetEnvVar "VXWORKS_HOME" "/opt/vxworks"
SetEnvVar "VXWORKS_SSH" "WindRiver@172.31.1.10"
# IMX 6
VXWORKS_BUILD_VER="16-04-2025"
VXWORKS_BUILD_VER="12-05-2026_2"
######### VXworks toolchain #########
# Installs to /opt/fsl_imx6_2_0_6_2_VSB
# Installs to /opt/fsl_imx6_2_0_6_3_VSB
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_arm_vsb_${VXWORKS_BUILD_VER}.tar.gz"
AltUrl=""
sha1="88f0f139ac62e8c0a4c5477d880a1ff345826479"
sha1="a1553f377ae84a722c8ad258fccb684f9198717c"
targetFolder="/opt/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
SetEnvVar "WIND_CC_SYSROOT" "/opt/fsl_imx6_2_0_6_2_VSB"
SetEnvVar "WIND_CC_SYSROOT" "/opt/fsl_imx6_2_0_6_3_VSB"
######### VXworks VIP kernel #########
# Installs to /opt/fsl_imx6_2_0_6_2_VIP_QEMU
# Installs to /opt/fsl_imx6_2_0_6_3_VIP_QEMU
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_arm_vip_${VXWORKS_BUILD_VER}.tar.gz"
AltUrl=""
sha1="96056c0f9b1234160db2d9038a9e6fc24a2bbbd7"
sha1="487a056d389a764717142100fb408e65ea720f92"
targetFolder="/opt/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
# IMX 8
# Installs to /opt/nxp_imx8_1_0_6_3_VSB
# Installs to /opt/nxp_imx8_1_0_7_1_VSB
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_arm_imx8_vsb_${VXWORKS_BUILD_VER}.tar.gz"
AltUrl=""
sha1="cf6194b78bf08b894397fd5ce2a57abd25cf497b"
sha1="b312f38a7ca670398c940c25d20ed2a26155160d"
targetFolder="/opt/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
# Installs to /opt/itl_generic_skylake_VSB
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_intel_vsb_${VXWORKS_BUILD_VER}.tar.gz"
AltUrl=""
sha1="4c75222364d3907db9fb1605cabe0c92616d9ec9"
sha1="9fddd5aa0b9599113c22670fcc1221004978ee8a"
targetFolder="/opt/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
# Installs to /opt/itl_generic_skylake_VIP_QEMU
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_intel_vip_${VXWORKS_BUILD_VER}.tar.gz"
AltUrl=""
sha1="c3af7da92832ea71201dcf1022d7404966291f5c"
sha1="cb366addbea7a1fd34aa49b739dcc0b480350fce"
targetFolder="/opt/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
######### VXworks fonts and certs #########
# Installs to /opt/fsl_imx6_2_0_6_2_VSB
# Installs to /opt/fsl_imx6_2_0_6_3_VSB
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/vxworks/vxworks_misc.tar.gz"
AltUrl=""
sha1="1bc529b90b35b0b249f219e47d5798225a9b68d8"
targetFolder="/opt/fsl_imx6_2_0_6_2_VSB/"
targetFolder="/opt/fsl_imx6_2_0_6_3_VSB/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
######### VXworks fonts and certs #########
# Installs to /opt/itl_generic_skylake_VSB
@@ -76,13 +76,6 @@ sha1="1bc529b90b35b0b249f219e47d5798225a9b68d8"
targetFolder="/opt/itl_generic_skylake_VSB/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
# Setup NFS exports that are needed by VxWorks qemu
sudo bash -c "echo '/home/qt/work 172.31.1.10/24(rw,sync,root_squash,no_subtree_check,anonuid=2001,anongid=100)' >> /etc/exports"
sudo bash -c "echo '/opt/fsl_imx6_2_0_6_2_VSB 172.31.1.10/24(rw,sync,root_squash,no_subtree_check,anonuid=2001,anongid=100)' >> /etc/exports"
sudo bash -c "echo '/opt/itl_generic_skylake_VSB 172.31.1.10/24(rw,sync,root_squash,no_subtree_check,anonuid=2001,anongid=100)' >> /etc/exports"
sudo exportfs -a
# Enable ipv4 routing from vxWorks to Qt DNS
sudo sed -i s/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g /etc/sysctl.conf
sudo iptables -I FORWARD 1 -j ACCEPT
@@ -2,57 +2,109 @@
# Copyright (C) 2023 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
# Launch a single VxWorks QEMU emulator instance.
#
# Usage: vxworks_qemu_launcher.sh <arm|intel> [instance-id]
#
# Multiple instances are run in parallel to speed up the autotest run. Each
# instance gets its own tap device, guest IP, MAC address, serial FIFO pair,
# QEMU log and (for the TCG-based ARM emulator) a dedicated set of host CPU
# cores. Instance 0 keeps the historical addresses so a single-instance run
# behaves exactly as before.
[ $# -ge 1 ] || echo "Supply parameter which emulator to start <arm|intel> [instance-id]"
TYPE=$1
INSTANCE=${2:-0}
# Per-instance identifiers. Instance 0 == the original single-emulator layout.
TAP="tap${INSTANCE}"
GUEST_IP="172.31.1.$((10 + INSTANCE))"
MAC=$(printf '52:54:00:12:34:%02x' "$INSTANCE")
PIPE="/tmp/guest${INSTANCE}"
QEMU_LOG_PATH="/home/qt/work/vxworks_qemu_log_${INSTANCE}.txt"
# Per-instance SSH target: same user as VXWORKS_SSH, but the instance's IP.
if [[ "$VXWORKS_SSH" == *"@"* ]]; then
SSH_TARGET="${VXWORKS_SSH%@*}@${GUEST_IP}"
else
SSH_TARGET="${GUEST_IP}"
fi
# Host bridge and per-instance tap setup. Serialized across parallel launches
# and made idempotent so concurrent instances don't race on the shared bridge.
exec 9>"/tmp/vxworks_qemu_host_setup.lock"
flock 9
NFS_CONF_MARKER="# VxWorks QEMU NFS settings (added by vxworks_qemu_launcher.sh)"
if ! grep -qF "$NFS_CONF_MARKER" /etc/nfs.conf; then
# Configure NFS for UDP traffic
sudo bash -c "echo -e '\n${NFS_CONF_MARKER}\n' >> /etc/nfs.conf"
sudo bash -c "echo -e '[nfsd]\n' >> /etc/nfs.conf"
sudo bash -c "echo -e 'udp=y\n' >> /etc/nfs.conf"
sudo bash -c "echo -e 'tcp=n\n' >> /etc/nfs.conf"
sudo bash -c "echo -e 'vers2=n\n' >> /etc/nfs.conf"
sudo bash -c "echo -e 'vers3=y\n' >> /etc/nfs.conf"
sudo bash -c "echo -e 'vers4=n\n' >> /etc/nfs.conf"
# Setup NFS exports that are needed by VxWorks qemu
sudo bash -c "echo '/home/qt/work 172.31.1.10/24(rw,sync,root_squash,no_subtree_check,anonuid=2001,anongid=100)' >> /etc/exports"
sudo bash -c "echo '/opt/fsl_imx6_2_0_6_3_VSB 172.31.1.10/24(rw,sync,root_squash,no_subtree_check,anonuid=2001,anongid=100)' >> /etc/exports"
sudo bash -c "echo '/opt/itl_generic_skylake_VSB 172.31.1.10/24(rw,sync,root_squash,no_subtree_check,anonuid=2001,anongid=100)' >> /etc/exports"
# Restart NFS server
sudo exportfs -a
sudo systemctl restart nfs-server
fi
# Setup bridge if not exist for VxWorks QEMU
if ! ip link show br0 >/dev/null 2>&1; then
sudo brctl addbr br0
sudo brctl stp br0 off
sudo ifconfig br0 172.31.1.1 netmask 255.255.255.0 promisc up
sudo tunctl -u qt -t tap0
sudo ifconfig tap0 promisc up
sudo brctl addif br0 tap0
fi
if ! ip link show "${TAP}" >/dev/null 2>&1; then
sudo tunctl -u qt -t "${TAP}"
sudo ifconfig "${TAP}" promisc up
sudo brctl addif br0 "${TAP}"
fi
exec 9>&-
[ $# -eq 1 ] || echo "Supply parameter which emulator to start <arm|intel>"
TYPE=$1
QEMU_LOG_PATH="/home/qt/work/vxworks_qemu_log.txt"
if [ "$TYPE" = "arm" ] || [ "$TYPE" = "" ]; then
$VXWORKS_QEMU/bin/qemu-system-arm \
-machine sabrelite \
-smp 4 \
-m 1G \
-smp 2 \
-m 2G \
-nographic \
-monitor none \
-serial null \
-serial pipe:/tmp/guest \
-kernel /opt/fsl_imx6_2_0_6_2_VIP_QEMU/default/uVxWorks \
-dtb /opt/fsl_imx6_2_0_6_2_VIP_QEMU/default/imx6q-sabrelite.dtb \
-append "enet(0,0)host:vxWorks h=172.31.1.1 g=172.31.1.1 e=172.31.1.10 u=target pw=vxTarget s=/romfs/startup_script.txt" \
-nic "tap,ifname=tap0,script=no" >"${QEMU_LOG_PATH}" 2>&1 &
-serial pipe:${PIPE} \
-kernel /opt/fsl_imx6_2_0_6_3_VIP_QEMU/default/uVxWorks \
-dtb /opt/fsl_imx6_2_0_6_3_VIP_QEMU/default/imx6q-sabrelite.dtb \
-append "enet(0,0)host:vxWorks h=172.31.1.1 g=172.31.1.1 e=${GUEST_IP} u=target pw=vxTarget s=/romfs/startup_script.txt" \
-rtc base=localtime,clock=rt \
-icount sleep=off \
-nic "tap,ifname=${TAP},script=no,mac=${MAC}" >"${QEMU_LOG_PATH}" 2>&1 &
elif [ "$TYPE" = "intel" ]; then
$VXWORKS_QEMU/bin/qemu-system-x86_64 \
-M q35 \
-smp 8 \
-m 16G \
-smp 4 \
-m 8G \
-cpu "Skylake-Client" \
-enable-kvm \
-monitor none \
-nographic \
-serial null \
-serial pipe:/tmp/guest \
-serial pipe:${PIPE} \
-kernel "/opt/itl_generic_skylake_VIP_QEMU/default/vxWorks" \
-append "sysbootline:gei(0,0)host:vxWorks h=172.31.1.1 g=172.31.1.1 e=172.31.1.10 u=target pw=vxTarget s=/romfs/startup_script.txt" \
-nic tap,ifname=tap0,script=no,downscript=no >"${QEMU_LOG_PATH}" 2>&1 &
-append "sysbootline:gei(0,0)host:vxWorks h=172.31.1.1 g=172.31.1.1 e=${GUEST_IP} u=target pw=vxTarget s=/romfs/startup_script.txt" \
-nic "tap,ifname=${TAP},script=no,downscript=no,mac=${MAC}" >"${QEMU_LOG_PATH}" 2>&1 &
fi
for _ in $(seq 30)
do
status=$(ssh -o BatchMode=yes -o HostKeyAlgorithms=+ssh-rsa -o ConnectTimeout=1 "${VXWORKS_SSH}" echo emulator up) || true
status=$(ssh -o BatchMode=yes -o HostKeyAlgorithms=+ssh-rsa -o ConnectTimeout=1 "${SSH_TARGET}" echo emulator up) || true
if [[ $status == *"emulator up"* ]] ; then
echo "VXWORKS QEMU SSH server up"
echo "VXWORKS QEMU SSH server up (instance ${INSTANCE} @ ${GUEST_IP})"
break
else
echo "Waiting VXWORKS QEMU SSH server"
echo "Waiting VXWORKS QEMU SSH server (instance ${INSTANCE} @ ${GUEST_IP})"
sleep 1
fi
done
+6 -3
View File
@@ -71,13 +71,16 @@ function InstallNdk() {
ndkTargetFile="/tmp/$ndkFile"
ndkSourceFile="$basePath/$ndkFile"
ndkTargetDir="$targetFolder/$ndkVersion"
sudo mkdir -p "$ndkTargetDir"
DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile"
echo "Unzipping Android NDK to '$targetFolder'"
echo "Unzipping Android NDK to '$ndkTargetDir'"
# Get the package base directory name as string
zipBase=$(sudo zipinfo -1 "$ndkTargetFile" 2>/dev/null | awk '!seen {sub("/.*",""); print; seen=1}')
sudo unzip -q "$ndkTargetFile" -d "$targetFolder"
sudo unzip -q "$ndkTargetFile" -d "$ndkTargetDir"
rm "$ndkTargetFile"
androidNdkRoot="${targetFolder}/${zipBase}"
androidNdkRoot="${ndkTargetDir}/${zipBase}"
}
InstallNdk $ndkVersionLatest $ndkSha1Latest
+3 -3
View File
@@ -11,11 +11,11 @@ source "${BASH_SOURCE%/*}/InstallAppFromCompressedFileFromURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
majorminorversion="3.30.5"
version="3.30.5"
majorminorversion="4.3"
version="4.3.2"
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/cmake/cmake-$version-macos-universal.tar.gz"
AltUrl="https://cmake.org/files/v$majorminorversion/cmake-$version-macos-universal.tar.gz"
SHA1="c81c2f7482a901c4a32a81034920c23c22233a0f"
SHA1="e3b456c03d992239f9d83d933336768c7fc1ff54"
appPrefix="cmake-$version-macos-universal"
InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
@@ -1,2 +1,3 @@
diffutils
nasm
yasm
+100 -13
View File
@@ -9,18 +9,105 @@ source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
# shellcheck source=../unix/SourceEnvVars.sh
source "${BASH_SOURCE%/*}/../unix/SourceEnvVars.sh"
echo "Caching Gradle distribution and dependencies"
gradleCacheFileName="gradle_9.3.1_darwin_cache_v2.tar.gz"
gradleCacheUrl="http://ci-files01-hki.ci.qt.io/input/gradle/$gradleCacheFileName"
gradleCacheSha1="d4f93be293224e3d55779cf64252337fbb26b53b"
gradleCacheFile="/tmp/$gradleCacheFileName"
DownloadURL "$gradleCacheUrl" "$gradleCacheUrl" "$gradleCacheSha1" "$gradleCacheFile"
mkdir -p "$HOME/.gradle"
tar -xzf "$gradleCacheFile" -C "$HOME/.gradle" --strip-components=1
rm "$gradleCacheFile"
echo "Caching Gradle distributions and dependencies"
gradle_project_source="${BASH_SOURCE%/*}/../shared/gradle/project"
cp -r "$gradle_project_source" /tmp/gradle_project
cd /tmp/gradle_project
chmod +x gradlew
sh gradlew build
gradleDistributionMirror="http://ci-files01-hki.ci.qt.io/input/gradle"
gradleInitScript="init.d/nexus-mirror.gradle"
# Route every Gradle repository through the internal Nexus mirror.
mkdir -p "$HOME/.gradle/init.d"
cp "${BASH_SOURCE%/*}/../shared/gradle/$gradleInitScript" "$HOME/.gradle/$gradleInitScript"
# Returns the hash of the Gradle binary distribution for a given Gradle version.
# Gradle calculates the hash as base36(md5(distributionUrl)).
gradleDistributionHash () {
version="$1"
propertiesFile="$gradle_project_source/gradle/wrapper/gradle-wrapper.properties"
# 1. Read the project's distributionUrl.
distributionUrl=$(grep '^distributionUrl=' "$propertiesFile")
distributionUrl=${distributionUrl#distributionUrl=}
# 2. Unescape the Java-properties (e.g. '\:').
distributionUrl=${distributionUrl//\\:/:}
# 3. Swap in the requested version while maintaining the distribution URL.
distributionUrl=${distributionUrl/gradle-[0-9.]*-bin.zip/gradle-$version-bin.zip}
if command -v md5sum >/dev/null 2>&1; then
md5Hex=$(printf '%s' "$distributionUrl" | md5sum | awk '{print $1}')
else
md5Hex=$(printf '%s' "$distributionUrl" | md5)
fi
# Convert the md5 to base36: read it as a number, then repeatedly take the
# next digit (number % 36) and divide by 36, prepending each digit's character.
number=$(printf 'ibase=16; %s\n' "$(printf '%s' "$md5Hex" | tr 'a-f' 'A-F')" | bc)
hash=""
alphabet="0123456789abcdefghijklmnopqrstuvwxyz"
while [ "$number" != "0" ]; do
digit=$(printf '%s %% 36\n' "$number" | bc)
number=$(printf '%s / 36\n' "$number" | bc)
hash="${alphabet:$digit:1}$hash"
done
printf '%s' "$hash"
}
# Seed a Gradle distribution binary into ~/.gradle from the internal mirror.
seedGradleDistribution () {
version="$1"
sha="$2"
distributionDir="$HOME/.gradle/wrapper/dists/gradle-${version}-bin/$(gradleDistributionHash "$version")"
if [ -e "$distributionDir/gradle-${version}-bin.zip.ok" ]; then
return 0
fi
mkdir -p "$distributionDir"
zip="$distributionDir/gradle-${version}-bin.zip"
url="$gradleDistributionMirror/gradle-${version}-bin.zip"
DownloadURL "$url" "$url" "$sha" "$zip"
unzip -q -o "$zip" -d "$distributionDir"
rm -f "$zip"
touch "$distributionDir/gradle-${version}-bin.zip.ok"
}
# Populate ~/.gradle/caches by priming the shared project for each Gradle and AGP profile.
cacheGradleProfile () {
echo "Caching Gradle profile $*"
tmp="$(mktemp -d)"
project="$tmp/project"
cp -r "$gradle_project_source" "$project"
props="$project/gradle/wrapper/gradle-wrapper.properties"
for kv in "$@"; do
case "$kv" in
gradle=*)
sed "s#gradle-[0-9.]*-bin.zip#gradle-${kv#*=}-bin.zip#" "$props" > "$props.tmp"
mv "$props.tmp" "$props"
;;
esac
done
toml="$project/gradle/libs.versions.toml"
for kv in "$@"; do
case "$kv" in
gradle=*) ;;
*)
key="${kv%%=*}"
val="${kv#*=}"
sed "/^\[versions\]/,/^\[/ s/^$key = .*/$key = \"$val\"/" "$toml" > "$toml.tmp"
mv "$toml.tmp" "$toml"
;;
esac
done
sh "$project/gradlew" --project-dir "$project" build
rm -rf "$tmp"
}
# Cache both the current and the previous versions to avoid issues during bumps.
seedGradleDistribution 9.3.1 "b266d5ff6b90eada6dc3b20cb090e3731302e553a27c5d3e4df1f0d76beaff06"
cacheGradleProfile gradle=9.3.1 agp=9.0.0
seedGradleDistribution 9.5.1 "bafc141b619ad6350fd975fc903156dd5c151998cc8b058e8c1044ab5f7b031f"
cacheGradleProfile gradle=9.5.1 agp=9.2.1
echo "Cached Gradle distributions and dependencies under $HOME/.gradle."
+64
View File
@@ -0,0 +1,64 @@
#!/usr/bin/env bash
# Copyright (C) 2025 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
# This script install HarmonyOS sdk and patches.
set -e
# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
# shellcheck source=../unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../unix/check_and_set_proxy.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
targetFolder="/opt/harmonyos"
sdkTargetFolder="$targetFolder/command-line-tools"
sudo mkdir -p "$sdkTargetFolder"
basePath="http://ci-files01-hki.ci.qt.io/input/harmonyos"
toolsVersion="6.1.0.860"
toolsFile="commandline-tools-mac-arm64-6.1.0.860.zip"
toolsSha1="4ba9df069fc5c651753c74297d723a2461be12e9"
toolsTargetFile="/tmp/$toolsFile"
toolsSourceFile="$basePath/$toolsFile"
echo "Download and unzip HarmonyOS SDK"
DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile"
echo "Unzipping HarmonyOS Tools to '$targetFolder'"
sudo unzip -q "$toolsTargetFile" -d "$targetFolder"
rm "$toolsTargetFile"
patchFile="harmonyos_sdk_patches.zip"
patchSha1="7f912104a5600bc176891bc6e9d97732f4266ad6"
patchTargetFile="/tmp/$patchFile"
patchSourceFile="$basePath/$patchFile"
patchTargetFolder="$targetFolder/harmonyos_sdk_patches"
echo "Download and unzip HarmonyOS SDK patches"
DownloadURL "$patchSourceFile" "$patchSourceFile" "$patchSha1" "$patchTargetFile"
echo "Unzipping HarmonyOS SDK patches to '$targetFolder'"
sudo unzip -q "$patchTargetFile" -d "$targetFolder"
rm "$patchTargetFile"
echo "Changing ownership of HarmonyOS files."
sudo chown -R qt:wheel "$sdkTargetFolder"
sudo chmod -R 755 $sdkTargetFolder
sudo chown -R qt:wheel "$patchTargetFolder"
sudo chmod -R 755 $patchTargetFolder
echo "Patching HarmonyOS SDK"
sdkRootFolder="$sdkTargetFolder/sdk/default/openharmony"
echo "Checking the contents of HarmonyOS SDK..."
ls -l "$sdkRootFolder"
SetEnvVar "HARMONYOS_SDK_ROOT" "$sdkRootFolder"
export HARMONYOS_SDK_ROOT="$sdkRootFolder"
echo "HarmonyOS SDK setup finished"
@@ -102,7 +102,6 @@ build_ffmpeg_ios() {
--extra-ldflags="${common_arch_flags}"
--target-os=darwin
--install-name-dir="@rpath"
--disable-audiotoolbox
# We perform manual stripping after generating dSYMs.
# Make sure to skip it during FFmpeg compilation.
@@ -22,6 +22,12 @@ ffmpeg_config_options=$(get_ffmpeg_config_options "shared")
default_prefix="/usr/local/$ffmpeg_name"
prefix="${2:-$default_prefix}"
# Disable X11 linkage on macOS. FFmpeg auto-detect
# mechanisms will pull it in as a dependency if found
# on the host. If this happens, it makes the binaries
# not loadable on macOS machines without libx11 installed.
ffmpeg_config_options+=" --disable-libxcb --disable-xlib"
build_ffmpeg() {
local arch="$1"
local build_dir="$ffmpeg_source_dir/build/$arch"
@@ -55,9 +55,18 @@ function InstallXCode() {
echo "Install packages"
sudo xcodebuild -runFirstLaunch
# Metal toolchain not included by default in Xcode 26
# Xcode 26 ships a more minimal base install
if ((majorVersion >= 26)); then
xcodebuild -downloadComponent MetalToolchain
if ((majorVersion >= 27)); then
# No more universal iOS simulator in Xcode 27
xcodebuild -downloadPlatform iOS
else
xcodebuild -downloadPlatform iOS -architectureVariant universal
fi
if [[ $(uname -m) == "arm64" ]]; then
xcodebuild -downloadPlatform visionOS
fi
fi
echo "Enabling developer mode, so that using lldb does not require interactive password entry"
-35
View File
@@ -1,35 +0,0 @@
#!/usr/bin/env bash
# Copyright (C) 2020 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
# Install libusb
set -ex
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
brew install libusb
read -r -a arr <<< "$(brew list --versions libusb)"
version=${arr[1]}
echo "libusb = $version" >> ~/versions.txt
mkdir /tmp/arm64/
mkdir /tmp/amd64/
case $(sw_vers -productVersion) in
11*) codename=big_sur;;
12*) codename=monterey;;
13*) codename=ventura;;
14*) codename=sonoma;;
esac
brew fetch --bottle-tag=arm64_"${codename}" libusb
brew fetch --bottle-tag="${codename}" libusb
tar xf "$(brew --cache --bottle-tag=arm64_"${codename}" libusb)" -C /tmp/arm64/
tar xf "$(brew --cache --bottle-tag="${codename}" libusb)" -C /tmp/amd64
for f in /tmp/arm64/libusb/"$version"/lib/* ; do
if lipo -info "$f" >/dev/null 2>&1; then
file="$(basename "$f")"
lipo -create -output "$(brew --cellar)/libusb/$version/lib/$file" \
"/tmp/arm64/libusb/$version/lib/$file" \
"/tmp/amd64/libusb/$version/lib/$file"
fi
done
+1 -1
View File
@@ -34,6 +34,6 @@ SetEnvVar "SBOM_PYTHON_APPS_PATH" "/Library/Frameworks/Python.framework/Versions
SetEnvVar "SBOM_PYTHON_INTERP_PATH" "/Library/Frameworks/Python.framework/Versions/3.11/bin/python3"
# Install Python certificates. Required at least for emsdk installation
open /Applications/Python\ 3.11/Install\ Certificates.command
/Applications/Python\ 3.11/Install\ Certificates.command
echo "python3 = 3.11.9" >> ~/versions.txt
+4 -4
View File
@@ -6,12 +6,12 @@ set -ex
source "${BASH_SOURCE%/*}/../unix/sccache.sh"
targetVersion=v0.11.0
targetVersion=v0.15.0
if [[ `arch` == arm* ]]; then
targetArch=aarch64-apple-darwin
sha1=3261ab99e5bb1f9f36eafa597d11491bd85da5ec
sha256=430ef7b5f54256d3ed5bfe77e8b0afc51aa209aeebe4f95b69c3a52ce3acc6e9
else
targetArch=x86_64-apple-darwin
sha1=57810789bf2813dfa9bf5da26a712dc30b56ce16
sha256=f8da93e0689122268f720ddb48c8357f3da18be8c88aff23a8e75a7a219367db
fi
installSccache "$targetArch" "$targetVersion" "$sha1"
installSccache "$targetArch" "$targetVersion" "$sha256"
+39
View File
@@ -0,0 +1,39 @@
#!/usr/bin/env bash
# Copyright (C) 2026 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
# This script installs Syft
# Syft is used for generating SBOM (Software Bill of Materials) files.
# shellcheck source=../unix/InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="1.45.1"
uname_m="$(uname -m)"
case "$uname_m" in
x86_64|amd64)
SHA1="ecd1a9283e4ce025b5905a85e505fcba237edd51"
arch="amd64"
;;
arm64|aarch64)
SHA1="996f3985f14ebbe8661c0b72d7ad520200155c46"
arch="arm64"
;;
*) fatal "Unknown architecture in uname: $uname_m" 43 ;;
esac
PrimaryUrl="http://ci-files01-hki.ci.qt.io/input/syft/syft_${version}_darwin_${arch}.tar.gz"
AltUrl="https://github.com/anchore/syft/releases/download/v${version}/syft_${version}_darwin_${arch}.tar.gz"
targetFolder="/opt/syft-$version"
appPrefix=""
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix"
SetEnvVar "PATH" "$targetFolder:\$PATH"
echo "Syft = $version" >> ~/versions.txt
@@ -1 +1 @@
--disable-programs --disable-doc --disable-debug --enable-network --disable-lzma --enable-pic --disable-vulkan --disable-v4l2-m2m --disable-decoder=truemotion1
--disable-programs --disable-doc --disable-debug --enable-network --disable-lzma --enable-pic --disable-vulkan --disable-v4l2-m2m --disable-decoder=truemotion1 --disable-avdevice --disable-avfilter
@@ -40,7 +40,7 @@ if [[ "$patchelf_version" == "0.18.0" ]]; then
echo "WARNING: patchelf version 0.18.0 is known to have issues with Android." >&2
fi
ffmpeg_libs=("avcodec" "avdevice" "avfilter" "avformat" "avutil" "swresample" "swscale")
ffmpeg_libs=("avcodec" "avformat" "avutil" "swresample" "swscale")
stub_prefix="Qt6FFmpegStub-"
for lib_name in "${ffmpeg_libs[@]}"; do
@@ -0,0 +1,39 @@
// Copyright (C) 2026 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
// Installed by Coin into $GRADLE_USER_HOME/init.d to route every gradle
// invocation's repositories through the internal Nexus mirror.
def mirror = 'https://ci-passth-cache.ci.qt.io/repository/gradle-all/'
def addMirror = { repositories ->
repositories.maven { mavenRepository ->
mavenRepository.name = 'qt-nexus-mirror'
mavenRepository.url = mirror
}
}
def enforceMirror = { repositories ->
repositories.all { repository ->
if (repository.name != 'qt-nexus-mirror')
repositories.remove(repository)
}
addMirror(repositories)
}
// Modern templates: replace the settings-level repositories with the mirror.
settingsEvaluated { settings ->
settings.pluginManagement.repositories.clear()
addMirror(settings.pluginManagement.repositories)
settings.dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.PREFER_PROJECT)
repositories.clear()
addMirror(repositories)
}
}
// Legacy templates: replace the buildscript and project repositories with the mirror.
allprojects { project ->
enforceMirror(project.buildscript.repositories)
enforceMirror(project.repositories)
}
@@ -7,7 +7,9 @@ which use `--offline`.
Caches dependencies for:
- `com.android.application`: used by Qt test/example APK builds
- `com.android.library`: used by Qt JAR builds
- `android.dynamic.feature`: used by Feature Delivery tests
- `org.jetbrains.kotlin.android`: used by some Qt modules
- `org.qtproject.qt.gradleplugin`: used by Qt for Android Studio projects
- AndroidX: used by app builds
These files should be updated each time Qt bumps the supported Android or
@@ -10,11 +10,14 @@ android {
applicationId 'org.qtproject.qt.gradlecache.app'
minSdk = 28
}
dynamicFeatures = [':feature']
}
dependencies {
implementation libs.core
implementation libs.appcompat
implementation libs.material
implementation libs.play.feature.delivery
testImplementation libs.junit
}
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="feature_title">Feature</string>
</resources>

Some files were not shown because too many files have changed in this diff Show More