Compare commits

...
Author SHA1 Message Date
Alexei Cazacov b679fc833f Update essential top-level files in the Qt's super-repo
This commit introduces the following changes:

- README.md - Updated, completely rewritten. Now includes up-to-date
  information.
- README.git - Deleted.
- SECURITY.md - A new document that points to QUIP 15.
- CODE_OF_CONDUCT.md - A new document that points to QUIP 12.
- GOVERNANCE.md - A new document that points to QUIP 2.
- CHANGELOG.md - A new document that points to what's new pages,
  release wiki pages, porting guide, dist/ deprecation note.
- LICENSE.md - A new document that explains where per-module terms live.
- README.md.template - Updated, to specify its purpose.

Fixes: QTBUG-149126
Change-Id: I2d2385e22769d4df360a626abc7484baf1cb0285
Reviewed-by: Kai Köhne <[email protected]>
(cherry picked from commit 7e2b6df4a8)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
(cherry picked from commit 93b324a453)
2026-09-14 06:34:11 +00:00
Qt Submodule Update Bot 3c74fcadea Update submodules on '6.12.0 in qt/qt5'
Change-Id: Ife093b6b517721e328608cc835e31c14477f1767
Reviewed-by: Qt Submodule Update Bot <[email protected]>
2026-09-14 06:34:10 +00:00
Assam Boudjelthia badc52004e Android: bump Android target API level to 37
Provision the Android 17 SDK platform and build tools,
and compile the Gradle cache project against them.

Task-number: QTBUG-136620
Change-Id: I6470f60c08f028a2bfbc6ed09a99492d4a174402
Reviewed-by: Antti Kokko <[email protected]>
2026-09-12 12:02:25 +00:00
Joerg Bornemann 574021bdfa coin: Switch vcpkg-provided libs to static linkage for HarmonyOS
Pick-to: dev 6.12
Task-number: QTBUG-147895
Change-Id: I9534cd6218e4115c8ace1fb1bff7d60e2779274b
Reviewed-by: Liang Qi <[email protected]>
Reviewed-by: Simo Fält <[email protected]>
2026-09-12 12:02:21 +00:00
Qt Submodule Update Bot ec6b23ce8a Update submodules on '6.12.0 in qt/qt5'
Change-Id: Iadb963a0f83ef89b556eb9d45246140ad1c6d927
Reviewed-by: Qt Submodule Update Bot <[email protected]>
2026-09-11 20:11:06 +00:00
Jani Heikkinen 392114430e Adjust submodule branches
Change-Id: I0878d33c66c7bad6187adddfce63ef33b4b4f9f4
2026-09-09 07:57:46 +03:00
Simo Fält acbb42c920 Provisioning: Fix for missing Debian security packages
Pick-to: 6.11 6.8
Change-Id: I65b47bfc1580996989ab1d948a141d46fd53b6f8
Reviewed-by: Jukka Jokiniva <[email protected]>
(cherry picked from commit 31071aed4a)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-09-08 15:02:08 +00:00
Eike Ziller f79439844d COIN: Install chrpath on OpenSUSE 16
Required for building Qt Creator/Profiler (installing Qt and
patching ICU)

Pick-to: 6.11
Change-Id: I733bd8c9a16ebae31c72c01e94d9413c7ff678ab
Reviewed-by: Patrik Teivonen <[email protected]>
(cherry picked from commit 779613db43)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-09-08 12:39:29 +00:00
Patrik Teivonen 3e9b56e0ad Coin: Add platform config for qt-labs/qtxcbnativepainting
Linux only, as the plugin requires the xcb QPA plugin. Includes the
Linux packaging configurations so release binaries can be exported.

Task-number: QTQAINFRA-8015
Change-Id: I481c39db55ad4ef6f36a7ceaef00e1a30c43adc8
Reviewed-by: Jani Heikkinen <[email protected]>
(cherry picked from commit 6bda9bdef9)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-09-08 10:56:04 +00:00
Karim Pinter da7ca1ee75 [VxWorks] Tune the NFS server and move TMP,HOME,CACHE dirs to ramfs
The switch of the VxWorks guests' NFS mounts from TCP to UDP removed
transport-level backpressure and retransmission: when the server drops
a request or a reply, the client re-sends the RPC itself. With
VXWORKS_QEMU_INSTANCES=4 KVM-speed x86 guests hammering the server
concurrently, drops are frequent enough that non-idempotent metadata
ops (MKDIR, RENAME, REMOVE) get replayed, which surfaces as spurious
errors and crashed autotests in exactly the metadata-heavy paths
(QSettings, QFileDialog, tst_QFile::openDirectory).

Address the three drop points on the server:

- nfsd threads: the distro default of 8 is too few; when all of them
  block in a commit, incoming UDP requests are silently discarded.
  Raise to 32.
- sync exports: commit latency under parallel load exceeds the
  client's RPC timeout and triggers the retransmit storms above.
  Export async instead; the exports carry disposable CI scratch data,
  so relaxed durability is acceptable.
- socket buffers and fragment reassembly: NFS3 rsize/wsize over a
  1500-byte MTU turns every large reply (READ, READDIRPLUS) into an
  IP fragment train, and one lost fragment costs the whole RPC. Raise
  rmem/wmem to 8 MiB and the ipfrag thresholds to 16/12 MiB, applied
  on every boot since sysctls do not persist.

Also use exportfs -ra so changed export options are resynced on VMs
that already carry the exports from a previous run.
TMP,HOME,CACHE directories were in NFS, now they are moved to ramfs
on the device side. imx6 ram increased to 4G because of this.
This also includes the NFS patch from WindRiver.

Fixes: QTBUG-149201
Change-Id: I710d81789d6cdd7b4de40bba0c55086ea61724fd
Reviewed-by: Toni Saario <[email protected]>
(cherry picked from commit 58b1334bac)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-09-05 10:52:40 +00:00
Axel Spoerl d110ff4c98 Coin: Build offscreen QPA plugin for Android CI configs
Qt 6.11 removed the NOT ANDROID guard around the offscreen platform
plugin, so it can now be built for Android. Add offscreen to -qpa
alongside android in the Android build configs so libqoffscreen is
built and shipped for every ABI.

Pick-to: 6.11
Change-Id: I01fea9372c5297ef633fa3ddead84e9e975a2051
Reviewed-by: Shawn Rutledge <[email protected]>
(cherry picked from commit e0f1c974c3)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-09-05 10:52:38 +00:00
Matti Paaso f77f152366 Add tqtc-qtedgeai platform configuration
Task-number: QTQAINFRA-7955
Change-Id: Iac232265ba56caca54518a7721ea58e1a4ea77a0
Reviewed-by: Toni Saario <[email protected]>
2026-09-05 10:52:36 +00:00
Elias Toivola 178aaee44f 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.11 6.8
Change-Id: If4f1e997aef40037ee876bc3843ed09a5412615f
Reviewed-by: Simo Fält <[email protected]>
(cherry picked from commit d4992d4da4)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-09-03 05:22:34 +00:00
Qt Submodule Update Bot edde2ec93f Update submodules on '6.12 in qt/qt5'
Change-Id: I5c76c9b3a7fdb7b9ba60f7156b6442cc752bdcbb
Reviewed-by: Qt Submodule Update Bot <[email protected]>
2026-09-02 20:17:17 +00:00
Nils Petter Skålerud a870cffea0 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.

Task-number: QTBUG-148761
Change-Id: Id765e01fbd402ee494a6a3ffec773d1dccc07c87
Reviewed-by: Tim Blechmann <[email protected]>
(cherry picked from commit 7fdc3c2e63)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-09-01 04:22:07 +00:00
Qt Submodule Update Bot 37a97fa211 Update submodules on '6.12 in qt/qt5'
Change-Id: I70bb76614052ea9fac60559f9d5e507a96bc60cd
Reviewed-by: Qt Submodule Update Bot <[email protected]>
2026-08-31 21:16:32 +00:00
Simo Fält c31f19bf62 Provisioning: Run Python certificate installer synchronously
Pick-to: 6.11
Change-Id: I18e8b8256ad66313166dd6e01ea0a030fa81aee7
Reviewed-by: Jukka Jokiniva <[email protected]>
(cherry picked from commit 33df950977)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-30 17:33:30 +00:00
Assam Boudjelthia e1f514bd3a 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.

Task-number: QTBUG-145101
Change-Id: Ieae7c662b80b18f6b287bdd8c19e971932b0d171
Reviewed-by: Alexandru Croitor <[email protected]>
(cherry picked from commit 6b51154f65)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-29 05:43:12 +00:00
Saman Hashemi 478db5551d Add and update platforms for Qtmcp + QmlpreviewMcp
- Create platform config file for the 6.12 branch in tqtc-qml-preview-mcp repo
 - Both QtMcp and QmlPreviewMcp have the same platforms supported

Change-Id: I9dd65966e6319ca51e8dfd3a9ef43a4f6a3db7ac
Reviewed-by: Antti Kokko <[email protected]>
2026-08-28 10:01:13 +00:00
Tim Blechmann 7b72c15f61 FFmpeg: iOS - build with AudioToolbox
It is typically hard to beat AudioToolbox. We may be better off not
disabling them when building FFmpeg.

Change-Id: Iba10fa3fe2f972e408017743a0db67d0e1a04a47
Reviewed-by: Nils Petter Skålerud <[email protected]>
Reviewed-by: Artem Dyomin <[email protected]>
(cherry picked from commit 51aab48f53)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-28 01:38:15 +00:00
Tuomas Vaarala f582feb449 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.

Change-Id: I75a2df6e0002886e3de91f0573f8083645307c39
Reviewed-by: Marianne Yrjänä <[email protected]>
Reviewed-by: Simo Fält <[email protected]>
(cherry picked from commit 2b92278152)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-26 15:55:03 +00:00
Jani Heikkinen 9da885a19b Qt 6.12: Add offline documentation build config for qtwebengine
Pick-to: dev
Change-Id: Ib5ac73f0de663d8a40349e5f79ffb74bc1ab3541
Reviewed-by: Antti Kokko <[email protected]>
2026-08-26 15:54:53 +00:00
Jukka Jokiniva 1e60576633 Update CINetworkTest application version
Task-number: QTQAINFRA-8035
Change-Id: I5b7df957dd9688b4357426dd4996f6bd56d755b4
Reviewed-by: Axel Spoerl <[email protected]>
(cherry picked from commit 092792a1f4)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-26 04:29:32 +00:00
Karim Pinter 58114728c5 [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
Change-Id: I0b6d753085c3e1f830cd705e6513003437909c64
Reviewed-by: Toni Saario <[email protected]>
(cherry picked from commit e9ce684743)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-26 04:29:29 +00:00
Tero Heikkinen 9840747bd7 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.

Task-number: QTQAINFRA-7483
Change-Id: I2cb2e2ef180b11cad61a5131ec47ea2ad207f338
Reviewed-by: Artem Dyomin <[email protected]>
Reviewed-by: Tim Blechmann <[email protected]>
(cherry picked from commit 295083dd9b)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-26 04:29:26 +00:00
Liang Qi 8fb6ce2ecf coin: also build HarmonyOS on macOS arm64
Change-Id: I35b04541f930745e4e10125582a8a810f3aaaaf5
Reviewed-by: Simo Fält <[email protected]>
(cherry picked from commit 3ed07a35b3)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-24 21:29:55 +00:00
Joerg Bornemann d4abe79578 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.

Change-Id: Ief4b12c57c082f94b2bcfae6fd02ebac7018a5c9
Reviewed-by: Alexandru Croitor <[email protected]>
(cherry picked from commit dd170ab8a4)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-24 21:29:52 +00:00
Qt Submodule Update Bot 24f5a030f4 Update submodules on '6.12 in qt/qt5'
Change-Id: Idc61374180f332f99740892dca925d1802a35688
Reviewed-by: Qt Submodule Update Bot <[email protected]>
2026-08-23 08:13:07 +00:00
Tuomas Vaarala 29a3079d3d 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.11
Change-Id: I467cb977313ce2496e2ab063c820929f2bfa591e
Reviewed-by: Marianne Yrjänä <[email protected]>
Reviewed-by: Simo Fält <[email protected]>
(cherry picked from commit c899623a25)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
2026-08-20 12:58:25 +00:00
Michal Klocek 3925e7d921 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.

Change-Id: I7fe87f8464b07683ec41a76511e8eec45941376d
Reviewed-by: Jani Heikkinen <[email protected]>
(cherry picked from commit 8732522eea)
Reviewed-by: Jukka Jokiniva <[email protected]>
2026-08-20 06:15:33 +00:00
135 changed files with 970 additions and 386 deletions
-1
View File
@@ -3,6 +3,5 @@
.gitattributes export-ignore
.commit-template export-ignore eol=lf
init-repository export-ignore
README.git export-ignore
*.bat text eol=crlf
*.bat.in text eol=crlf
+46 -55
View File
@@ -1,54 +1,54 @@
[submodule "qtbase"]
path = qtbase
url = ../qtbase.git
branch = 6.12
branch = 6.12.0
status = essential
[submodule "qtsvg"]
depends = qtbase
path = qtsvg
url = ../qtsvg.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtdeclarative"]
depends = qtbase
recommends = qtimageformats qtshadertools qtsvg qtlanguageserver
path = qtdeclarative
url = ../qtdeclarative.git
branch = 6.12
branch = 6.12.0
status = essential
[submodule "qtactiveqt"]
depends = qtbase
path = qtactiveqt
url = ../qtactiveqt.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtmultimedia"]
depends = qtbase qtshadertools
recommends = qtdeclarative qtquick3d
path = qtmultimedia
url = ../qtmultimedia.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qttools"]
depends = qtbase
recommends = qtdeclarative qtactiveqt
path = qttools
url = ../qttools.git
branch = 6.12
branch = 6.12.0
status = essential
[submodule "qttranslations"]
depends = qttools
path = qttranslations
url = ../qttranslations.git
branch = 6.12
branch = 6.12.0
status = essential
priority = 30
[submodule "qtdoc"]
depends = qtdeclarative qttools
recommends = qtmultimedia qtshadertools qttasktree qtwebengine
recommends = qtmultimedia qtshadertools qttasktree
path = qtdoc
url = ../qtdoc.git
branch = 6.12
branch = 6.12.0
status = essential
priority = 40
[submodule "qtrepotools"]
@@ -61,7 +61,7 @@
depends = qtbase
path = qtqa
url = ../qtqa.git
branch = 6.12
branch = 6.12.0
status = essential
priority = 50
[submodule "qtlocation"]
@@ -69,243 +69,234 @@
recommends = qtdeclarative
path = qtlocation
url = ../qtlocation.git
branch = 6.12
branch = 6.12.0
status = preview
[submodule "qtpositioning"]
depends = qtbase
recommends = qtdeclarative qtserialport
path = qtpositioning
url = ../qtpositioning.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtsensors"]
depends = qtbase
recommends = qtdeclarative
path = qtsensors
url = ../qtsensors.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtconnectivity"]
depends = qtbase
recommends = qtdeclarative
path = qtconnectivity
url = ../qtconnectivity.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtwayland"]
depends = qtbase
recommends = qtdeclarative
path = qtwayland
url = ../qtwayland.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qt3d"]
depends = qtbase
recommends = qtdeclarative qtshadertools qtmultimedia
path = qt3d
url = ../qt3d.git
branch = 6.12
branch = 6.12.0
status = deprecated
[submodule "qtimageformats"]
depends = qtbase
path = qtimageformats
url = ../qtimageformats.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtserialbus"]
depends = qtbase
recommends = qtserialport
path = qtserialbus
url = ../qtserialbus.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtserialport"]
depends = qtbase
path = qtserialport
url = ../qtserialport.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtwebsockets"]
depends = qtbase
recommends = qtdeclarative
path = qtwebsockets
url = ../qtwebsockets.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtwebchannel"]
depends = qtbase
recommends = qtdeclarative qtwebsockets
path = qtwebchannel
url = ../qtwebchannel.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtwebengine"]
depends = qtdeclarative
recommends = qtwebchannel qttools qtpositioning
path = qtwebengine
url = ../qtwebengine.git
branch = 6.12
status = addon
priority = 10
[submodule "qtwebview"]
depends = qtdeclarative
recommends = qtwebengine
path = qtwebview
url = ../qtwebview.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtcharts"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtcharts
url = ../qtcharts.git
branch = 6.12
branch = 6.12.0
status = deprecated
[submodule "qtdatavis3d"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtdatavis3d
url = ../qtdatavis3d.git
branch = 6.12
branch = 6.12.0
status = deprecated
[submodule "qtvirtualkeyboard"]
depends = qtbase qtdeclarative qtsvg
recommends = qtmultimedia
path = qtvirtualkeyboard
url = ../qtvirtualkeyboard.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtscxml"]
depends = qtbase qtdeclarative
path = qtscxml
url = ../qtscxml.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtspeech"]
depends = qtbase qtmultimedia
recommends = qtdeclarative
path = qtspeech
url = ../qtspeech.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtnetworkauth"]
depends = qtbase
path = qtnetworkauth
url = ../qtnetworkauth.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtremoteobjects"]
depends = qtbase
recommends = qtdeclarative
path = qtremoteobjects
url = ../qtremoteobjects.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtlottie"]
depends = qtbase qtdeclarative qtquicktimeline
path = qtlottie
url = ../qtlottie.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtquicktimeline"]
depends = qtbase qtdeclarative
path = qtquicktimeline
url = ../qtquicktimeline
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtquick3d"]
depends = qtbase qtdeclarative qtshadertools
recommends = qtquicktimeline
path = qtquick3d
url = ../qtquick3d.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtshadertools"]
depends = qtbase
path = qtshadertools
url = ../qtshadertools.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qt5compat"]
depends = qtbase qtdeclarative
path = qt5compat
url = ../qt5compat.git
branch = 6.12
branch = 6.12.0
status = deprecated
[submodule "qtcoap"]
depends = qtbase
path = qtcoap
url = ../qtcoap.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtmqtt"]
depends = qtbase qtdeclarative
recommends = qtwebsockets
path = qtmqtt
url = ../qtmqtt.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtopcua"]
depends = qtbase qtdeclarative
path = qtopcua
url = ../qtopcua.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtlanguageserver"]
depends = qtbase
path = qtlanguageserver
url = ../qtlanguageserver.git
branch = 6.12
branch = 6.12.0
status = preview
[submodule "qthttpserver"]
depends = qtbase
recommends = qtwebsockets
path = qthttpserver
url = ../qthttpserver.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtquick3dphysics"]
depends = qtbase qtdeclarative qtquick3d qtshadertools
path = qtquick3dphysics
url = ../qtquick3dphysics.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtgrpc"]
depends = qtbase
recommends = qtdeclarative
path = qtgrpc
url = ../qtgrpc.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtquickeffectmaker"]
depends = qtbase qtdeclarative qtshadertools
recommends = qtquick3d
path = qtquickeffectmaker
url = ../qtquickeffectmaker.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qtgraphs"]
depends = qtbase qtdeclarative qtquick3d
path = qtgraphs
url = ../qtgraphs.git
branch = 6.12
branch = 6.12.0
status = addon
[submodule "qttasktree"]
depends = qtbase
path = qttasktree
url = ../qttasktree.git
branch = 6.12
branch = 6.12.0
status = preview
[submodule "qtopenapi"]
depends = qtbase
recommends = qtdeclarative
path = qtopenapi
url = ../qtopenapi.git
branch = 6.12
branch = 6.12.0
status = preview
[submodule "qtcanvaspainter"]
depends = qtbase qtdeclarative qtshadertools
path = qtcanvaspainter
url = ../qtcanvaspainter.git
branch = 6.12
branch = 6.12.0
status = addon
+30
View File
@@ -0,0 +1,30 @@
# Changelog
This repository does not keep a changelog of its own. Qt is released as a set
of modules, and the change information for a release is published with that
release rather than tracked here.
## Where to look
**Cumulative release notes** are published in
[qt/qtreleasenotes](https://code.qt.io/cgit/qt/qtreleasenotes.git/tree/qt).
**What changed in a Qt version.** Each minor release has a "What's New" page in
the Qt documentation. It lists new modules, new and deprecated APIs, and the
notable changes per module.
See [What's New in Qt 6](https://doc.qt.io/qt-6/whatsnewqt6.html).
**Release phases and schedule.** Each release has a wiki page with the
release plan. See [Qt Releasing Wiki](https://wiki.qt.io/QtReleasing).
**Moving between major versions.** The
[Porting to Qt 6](https://doc.qt.io/qt-6/portingguide.html) guide covers the
changes that affect existing code.
## Qt 4 and Qt 5 changelogs
Most module repositories feature a `dist` directory holding `changes-*` files.
These are no longer maintained. They stop at `changes-6.0.0` and are kept only
as a historical record of Qt 4 and Qt 5 releases. Do not add to them, and do
not treat them as a current source of change information for Qt 6. Use the
sources above instead.
+23
View File
@@ -0,0 +1,23 @@
# Code of conduct
The Qt Community Code of Conduct applies to everyone who takes part in the Qt
Project. It covers any forum, mailing list, wiki, website, IRC channel, public
meeting, or private correspondence in the context of the project and its
services.
[QUIP 12](https://contribute.qt-project.org/quips/12) is the Code of Conduct
itself and is the authoritative text. It asks participants to be considerate,
respectful, collaborative, pragmatic, and supportive of one another, and it
explains what each of those means in practice.
## If something goes wrong
QUIP 12 describes how the community handles problems. In short: offer personal
support to anyone who is being attacked, and remind those involved of the Code
of Conduct. Moderators of a mailing list, channel, or forum can suspend access
for anyone who persistently breaks it, so raise the matter with them when it
needs to go further. Where a disagreement is technical, ask the community for
advice or request mediation rather than escalating it into a public dispute.
Read [QUIP 12](https://contribute.qt-project.org/quips/12) in full for the
complete guidance.
+29
View File
@@ -0,0 +1,29 @@
# Governance
The Qt Project is a meritocratic, consensus-based community. Anyone with an
interest in Qt can join it, take part in its decision-making, and contribute to
Qt's development.
[QUIP 2](https://contribute.qt-project.org/quips/2) is the Qt Governance Model
and is the authoritative text. It describes five levels of involvement and how
people move between them:
* **Users** — community members who use Qt. They report bugs, help other
users, and advocate for the project.
* **Contributors** — community members who provide input to the project, by
proposing changes in Gerrit, reviewing, writing documentation, or testing.
There is no selection process.
* **Approvers** — contributors who have shown a sustained commitment to the
project and who can approve changes for inclusion.
* **Maintainers** — approvers responsible for a specific area of Qt, who
decide what happens in the code they maintain.
* **Chief Maintainer** — leads the maintainer group, sets the overall
direction of the project, and has the final say when the project fails to
reach consensus.
The current maintainers are listed at
[wiki.qt.io/Maintainers](https://wiki.qt.io/Maintainers).
For the processes that sit alongside this model — the branch policy, the
security policy, the code of conduct, and the rest — see
[contribute.qt-project.org](https://contribute.qt-project.org/).
+69
View File
@@ -0,0 +1,69 @@
Qt licensing
============
Qt is not distributed under a single license, and this file is not a license
text. Qt is available under commercial terms and under several open source
licenses, and which terms apply depends on the module and the file.
The open source licenses in use across the Qt repositories include LGPL-3.0,
GPL-2.0, and GPL-3.0 for module implementations, GFDL-1.3 for documentation,
and BSD-3-Clause for build system files, examples, and tooling. Third-party
code bundled inside a module carries its own terms.
How licensing is declared
-------------------------
Licensing is declared per file, following the
[REUSE version 3.3 specification](https://reuse.software/spec-3.3/). Every file
carries an SPDX-License-Identifier header, or is covered by an adjacent
REUSE.toml file where an inline header is not possible. The full text of every
license referenced this way is in the LICENSES directory of the repository it
applies to.
Those SPDX headers and the LICENSES directory are the authoritative,
machine-readable record for the Qt sources. They are what the REUSE tool and
Qt's software bill of materials pipeline read when generating the SBOM for the
sources; they do not describe the licensing of Qt binaries.
Finding the terms for a module
------------------------------
Each Qt module carries its own licensing, and the terms are stated in the
"Licenses and Attributions" section of that module's documentation overview
page. For example, see:
https://doc.qt.io/qt-6/qtcore-index.html
That section also lists the third-party code the module includes and the
license of each such component.
License of built modules and tools
----------------------------------
When building Qt, you can build SBOM documents alongside (`-sbom` argument for
`configure`). You can use the generated SBOM artifacts to query copyrights and
licenses for built modules, and tools. For more details, see
[Software Bill of Materials](https://doc.qt.io/qt-6/sbom.html}.
Further information
-------------------
Qt licensing overview
https://doc.qt.io/qt-6/licensing.html
Licenses used in Qt
https://doc.qt.io/qt-6/licenses-used-in-qt.html
All Qt modules
https://doc.qt.io/qt-6/qtmodules.html
Commercial licensing
https://www.qt.io/licensing/
Open source licensing and its obligations
https://www.qt.io/download-open-source
Qt educational license
https://www.qt.io/qt-educational-license
-57
View File
@@ -1,57 +0,0 @@
OBTAINING QT 6 FROM GIT
=======================
Synopsis
========
For a more in-depth description on how to build Qt 6 from git,
please see: http://wiki.qt.io/Building_Qt_6_from_Git
Note that, although the git module is called qt5.git, the dev and 6.x branches
do contain Qt 6!
Get The Submodules
==================
Cloning qt5.git does not automatically clone all submodules.
To get the submodules, it is recommended to use the `init-repository' script.
./init-repository
See `./init-repository -help' for full documentation on the many supported
options.
Update The Submodules (optional)
================================
After a plain `git clone' and `init-repository', you will have each submodule
checked out to a particular SHA1. This combination of SHA1s is guaranteed to
have passed some basic acceptance testing.
If (and only if!) you need newer versions of some submodules, you can manually
fetch and/or pull and/or reset any modules you like, or use the qt5_tool to
pull all modules:
./qtrepotools/bin/qt5_tool -p
NOTE! As soon as you change the SHA1 of any submodule, you are using a
combination of modules which is potentially untested and broken! If you want
something which is more likely to compile, stick to the module SHA1s provided
in this repository.
Install The Git Grafts (optional)
=================================
If you want to be able to connect the Qt5 and Qt4 development history, you
may set up git grafts with the following command:
git submodule foreach '../qtrepotools/bin/git-qt-grafts <path_to_history>'
Developing and Contributing to Qt
=================================
For more information on how to develop and contribute to Qt, please see:
http://wiki.qt.io/Category:Developing_Qt
+57 -104
View File
@@ -1,127 +1,80 @@
HOW TO BUILD Qt 6
=================
# Qt 6
This repository, `qt5.git`, is the Qt super-repository. It records a git
submodule pointer to each Qt module repository, such as `qtbase` and
`qtdeclarative`, along with the build system, the `configure` scripts, and the
continuous integration configuration that build those modules as a single tree.
Synopsis
========
Each submodule points at a specific revision. The combination of revisions that
a branch records is a snapshot that has passed Qt's continuous integration.
Clone this repository first and let it select the module revisions for you. If
you move a submodule to a different revision, you are building a combination
that nobody has tested.
System requirements
-------------------
> Despite the name `qt5.git`, the `dev` and `6.x` branches contain Qt 6.
* C++ compiler supporting the C++17 standard
* CMake
* Ninja
* Python 3
To use Qt rather than build it from sources, see
[Get and Install Qt](https://doc.qt.io/qt-6/get-and-install-qt.html).
For more details, see also https://doc.qt.io/qt-6/build-sources.html
## Repository layout
Linux, Mac:
-----------
Each Qt module lives in its own directory, such as `qtbase` or
`qtdeclarative`. Those directories are git submodules.
```
cd <path>/<source_package>
./configure -prefix $PWD/qtbase
cmake --build .
```
The other top-level entries are:
Windows:
--------
| Entry | Purpose |
| ----- | ------- |
|`.gitmodules`| Lists modules for the current branch.|
| `CMakeLists.txt` | Entry point for the top-level build of all modules. |
| `configure`, `configure.bat` | Wrappers that configure that build. |
| `init-repository` | Checks out the submodules. Git clones only. |
| `cmake/` | CMake modules shared by the top-level build. |
| `coin/` | Continuous integration configuration and provisioning. |
| `LICENSES/`, `REUSE.toml` | License texts and per-file licensing metadata. |
1. Open a command prompt.
2. Ensure that the following tools can be found in the path:
* Supported compiler (Visual Studio 2022 or later, or MinGW-builds gcc 13.1 or later)
* Python 3 ([https://www.python.org/downloads/windows/] or from Microsoft Store)
## Get the sources
```
cd <path>\<source_package>
configure -prefix %CD%\qtbase
cmake --build .
```
For instructions, see [Getting Qt Sources from the Git repository](https://doc.qt.io/qt-6/getting-sources-from-git.html).
More details follow.
## Build Qt
For instructions, see [Build from sources](https://doc.qt.io/qt-6/build-sources.html).
Build!
======
## Documentation
Qt is built with CMake, and a typical
`configure && cmake --build .` build process is used.
The [Qt 6 documentation](https://doc.qt.io/qt-6/index.html) covers the
framework itself.
If Ninja is installed, it is automatically chosen as CMake generator.
## Report an issue
Some relevant configure options (see configure -help):
Report bugs at [bugreports.qt.io](https://bugreports.qt.io/), following
[these steps](https://doc.qt.io/qt-6/bughowto.html).
* `-release` Compile and link Qt with debugging turned off.
* `-debug` Compile and link Qt with debugging turned on.
## Security
Example for a release build:
To report a security vulnerability in Qt, and to read what the Qt Project
commits to in response, see [SECURITY.md](SECURITY.md).
```
./configure -prefix $PWD/qtbase
cmake --build .
```
## Contribute to Qt
Example for a developer build:
(enables more autotests, builds debug version of libraries, ...)
The Qt Project does not accept pull requests on GitHub. Every contribution goes
through [Gerrit](https://codereview.qt-project.org), so read
[how to contribute](CONTRIBUTING.md) before you push a change. All
participation in the project is subject to our
[code of conduct](CODE_OF_CONDUCT.md). To learn who decides what, and how
someone becomes an approver or a maintainer, see
[how the project is governed](GOVERNANCE.md).
Development discussions happens in the open on the
[Qt Project mailing lists](https://lists.qt-project.org/).
```
./configure -developer-build
cmake --build .
```
## License
See output of `./configure -help` for documentation on various options to
configure.
Qt is available under both commercial and open source licenses, and the terms
depend on the module you use. [LICENSE](LICENSE) explains how licensing is
declared across the Qt repositories and where to find the terms that apply to
a given module.
The above examples will build whatever Qt modules have been enabled
by default in the build system.
It is possible to build selected repositories with their dependencies by doing
a `ninja <repo-name>/all`. For example, to build only qtdeclarative,
and the modules it depends on:
```
./configure
ninja qtdeclarative/all
```
This can save a lot of time if you are only interested in a subset of Qt.
Hints
=====
The submodule repository `qtrepotools` contains useful scripts for
developers and release engineers. Consider adding qtrepotools/bin
to your `PATH` environment variable to access them.
Building Qt from git
====================
See http://wiki.qt.io/Building_Qt_6_from_Git and [README.git](README.git)
for more information.
See http://wiki.qt.io/Qt_6 for the reference platforms.
Documentation
=============
After configuring and compiling Qt, building the documentation is possible by running
```
cmake --build . --target docs
```
After having built the documentation, you need to install it with the following
command:
```
cmake --build . --target install_docs
```
The documentation is installed in the path specified with the
configure argument `-docdir`.
Information about Qt's documentation is located in qtbase/doc/README
Note: Building the documentation is only tested on desktop platforms.
For the full picture, see the
[Qt licensing overview](https://doc.qt.io/qt-6/licensing.html) and
[qt.io/licensing](https://www.qt.io/licensing/).
+3 -3
View File
@@ -34,6 +34,6 @@ We welcome contributions to Qt! If you'd like to contribute, read the
Qt is available under various licenses. For details, check out the
[license documentation](https://doc.qt.io/qt-6/licensing.html).
*Note that this README.md.template serves as a guideline for README.md files,
and that further sections can be added to individual README.md files if
necessary.*
*Note that this README.md.template serves as a guideline for the README.md
files of Qt module repositories, and that further sections can be added to
individual README.md files if necessary.*
+3 -1
View File
@@ -26,7 +26,9 @@ SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
SPDX-License-Identifier = "BSD-3-Clause"
[[annotations]]
path = ["**README*", "CONTRIBUTING.md", ".commit-template", ".github/pull_request_template.md"]
path = ["**README*", "CONTRIBUTING.md", "CODE_OF_CONDUCT.md", "GOVERNANCE.md",
"SECURITY.md", "CHANGELOG.md", "LICENSE",
".commit-template", ".github/pull_request_template.md"]
comment = "documentation"
precedence = "closest"
SPDX-FileCopyrightText = "Copyright (C) 2024 The Qt Company Ltd."
+42
View File
@@ -0,0 +1,42 @@
# Security policy
## Reporting a vulnerability
Report suspected security vulnerabilities in Qt by email to
<security@qt-project.org>. Do not report them in the public bug tracker at
bugreports.qt.io.
If you hold a commercial license, you can instead report the issue to the Qt
Company support team through the support portal, using the "Security Issues"
category.
## The policy
[QUIP 15](https://contribute.qt-project.org/quips/15) is the Qt Project
Security Policy. It is the authoritative source for how the project handles
security issues, and it covers:
* How reports are received, acknowledged, and triaged, and in what time frame.
* Who is responsible for addressing an issue, and how it is escalated.
* How issues are disclosed, including CVE handling and notification of
packagers.
* Which versions of Qt fixes are guaranteed for.
Security announcements are published to the
[announce mailing list](https://lists.qt-project.org/listinfo/announce).
Qt customers with a commercial license now have the opportunity to subscribe to
the Qt Early Warning List in the [Customer Portal](https://account.qt.io/). The
EWL subscription requires an active
[Commercial Qt license](https://www.qt.io/development/qt-framework/commercial-qt).
## Related material
* [Security in Qt](https://doc.qt.io/qt-6/security.html) — what Qt does and
does not protect against, and how to use Qt securely.
* [QUIP 23](https://contribute.qt-project.org/quips/23) — the `Qt-Security`
header that marks how security-relevant a source file is.
* [QUIP 16](https://contribute.qt-project.org/quips/16) — the branch policy,
which governs which branches accept which changes.
* [Responsible Vulnerability Disclosure Agreement](https://www.qt.io/terms-conditions/responsible-vulnerability-disclosure-process) -
Terms and Conditions of Responsible Vulnerability Disclosure Process at Qt Group.
+4 -4
View File
@@ -269,7 +269,7 @@ Configurations:
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',
@@ -290,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',
@@ -420,7 +420,7 @@ Configurations:
'TARGET_CONFIGURE_ARGS=-developer-build -no-warnings-are-errors -nomake examples -nomake tests -platform macx-visionos-clang',
]
-
Id: 'windows-11_24h2-mingw13'
Id: 'windows-11_24h2-mingw15'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'Mingw'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
@@ -446,7 +446,7 @@ Configurations:
'Protobuf_ROOT={{.Env.Protobuf_ROOT_llvm_mingw}}',
]
-
Id: 'windows-11_24H2-mingw13-developer-build'
Id: 'windows-11_24H2-mingw15-developer-build'
Template: 'qtci-windows-11_24H2-x86_64-73'
Compiler: 'Mingw'
Features: ['Sccache', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
@@ -10,7 +10,7 @@ Configurations:
Platform dependency: 'macos-universal-on-arm64'
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'DisableTests', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis arm64-v8a',
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -qpa android;offscreen -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis arm64-v8a',
'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=-DQT_ADDITIONAL_HOST_PACKAGES_PREFIX_PATH=/usr/local -DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_ARM64_NDK_LATEST}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_LATEST}}'
@@ -22,11 +22,11 @@ Configurations:
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}}',
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis armeabi-v7a -no-feature-pkg-config',
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -qpa android;offscreen -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis armeabi-v7a -no-feature-pkg-config',
'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=-DQT_ADDITIONAL_HOST_PACKAGES_PREFIX_PATH={{.Env.Protobuf_ROOT_mingw}} -DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_ARMV7_NDK_LATEST}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR={{.Env.Protobuf_ROOT_msvc}}/include',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_LATEST}}'
@@ -41,7 +41,7 @@ Configurations:
Platform dependency: 'rhel-9.6'
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'JavaDocs']
Environment variables: [
'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',
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -qpa android;offscreen -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
'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_NDK_LATEST}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
# We check QT_USE_TARGET_ANDROID_BUILD_DIR only in one configuration, to ensure builds
@@ -60,12 +60,12 @@ Configurations:
Platform dependency: 'rhel-9.6'
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'JavaDocs']
Environment variables: [
'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_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -qpa android;offscreen -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'
]
@@ -79,12 +79,12 @@ Configurations:
Platform dependency: 'rhel-9.6'
Features: ['Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'JavaDocs', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Environment variables: [
'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_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -qpa android;offscreen -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'
]
@@ -32,3 +32,19 @@ Configurations:
'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'
]
@@ -19,7 +19,7 @@ Configurations:
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}}',
@@ -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,7 +1,7 @@
Version: 2
Include: [
cmake_platforms.yaml: [
'windows-11_24h2-mingw13'
'windows-11_24h2-mingw15'
]
]
Configurations:
@@ -12,7 +12,7 @@ Configurations:
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 -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'
@@ -11,8 +11,8 @@ Include: [
"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 -2
View File
@@ -13,8 +13,8 @@ Include: [
"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: []
@@ -0,0 +1,9 @@
Version: 2
Include: [
cmake_platforms.yaml: [
'rhel-9.6',
'ubuntu-24.04-arm64',
'ubuntu-24.04-x64-developer-build'
]
]
Configurations: []
@@ -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: []
+37
View File
@@ -0,0 +1,37 @@
Version: 2
Include: [
cmake_platforms.yaml: [
'ubuntu-22.04',
'ubuntu-24.04-x64',
'ubuntu-24.04-arm64',
'jammy-arm64-debian-pkg-packaging',
'jammy-amd64-debian-pkg-packaging'
],
cmake_platforms_qemu.yaml: [
'qemu-arm64-developer-build'
]
]
Configurations: []
Overrides:
# Set pch off due to stale pch file causing false positive sccache hit
-
Id: 'ubuntu-22.04'
-Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON -DQT_DEPLOY_FFMPEG=TRUE']
+Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON -DQT_DEPLOY_FFMPEG=TRUE -DQT_FEATURE_gstreamer_qt_api=ON -DBUILD_WITH_PCH=OFF']
-
Id: 'ubuntu-24.04-x64'
-Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON']
+Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON -DQT_FEATURE_gstreamer_qt_api=ON -DBUILD_WITH_PCH=OFF']
-
Id: 'ubuntu-24.04-arm64'
-Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON -DINPUT_tiff=qt -DINPUT_webp=qt']
+Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON -DINPUT_tiff=qt -DINPUT_webp=qt -DQT_FEATURE_gstreamer_qt_api=ON -DBUILD_WITH_PCH=OFF']
-
Id: 'jammy-arm64-debian-pkg-packaging'
+Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DQT_FEATURE_gstreamer_qt_api=ON -DBUILD_WITH_PCH=OFF']
-
Id: 'jammy-amd64-debian-pkg-packaging'
+Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DQT_FEATURE_gstreamer_qt_api=ON -DBUILD_WITH_PCH=OFF']
-
Id: 'qemu-arm64-developer-build'
+Environment variables: ['NON_QTBASE_CMAKE_ARGS=-DQT_FEATURE_gstreamer_qt_api=ON -DBUILD_WITH_PCH=OFF']
+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: []
@@ -25,8 +25,8 @@ basePath="http://ci-files01-hki.ci.qt.io/input/android"
toolsVersion="19.0"
toolsFile="commandlinetools-linux-13114758_latest.zip"
toolsBackupUrl="https://dl.google.com/android/repository/$toolsFile"
sdkBuildToolsVersion="36.0.0"
sdkApiLevel="android-36"
sdkBuildToolsVersion="37.0.0"
sdkApiLevel="android-37.0"
toolsSha1="5fdcc763663eefb86a5b8879697aa6088b041e70"
ndkVersionLatest="r27c"
@@ -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)"
}
@@ -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"
@@ -48,6 +48,14 @@ targetFile="qnx710.tar.xz"
sha1="98b24df7e8c53a104aee76e769011396fa4bdafd"
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"
+5 -5
View File
@@ -49,12 +49,12 @@ sha1="a3fdcd98e12bc5054d00f18e4088af26288fd020"
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"
@@ -53,6 +53,11 @@ 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
+6 -6
View File
@@ -22,12 +22,12 @@ SetEnvVar "VXWORKS_HOME" "/opt/vxworks"
SetEnvVar "VXWORKS_SSH" "[email protected]"
# IMX 6
VXWORKS_BUILD_VER="12-05-2026_2"
VXWORKS_BUILD_VER="20-08-2026"
######### VXworks toolchain #########
# 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="a1553f377ae84a722c8ad258fccb684f9198717c"
sha1="cb40acde7227aaefe8397e3472318fe09af2d9d0"
targetFolder="/opt/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
SetEnvVar "WIND_CC_SYSROOT" "/opt/fsl_imx6_2_0_6_3_VSB"
@@ -36,7 +36,7 @@ SetEnvVar "WIND_CC_SYSROOT" "/opt/fsl_imx6_2_0_6_3_VSB"
# 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="487a056d389a764717142100fb408e65ea720f92"
sha1="4209a8c2724fccfec9d30a22e53ca6598ef83b57"
targetFolder="/opt/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
@@ -44,20 +44,20 @@ InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder"
# 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="b312f38a7ca670398c940c25d20ed2a26155160d"
sha1="20c1c31fc8ddc5356566a717a913e51bef42d41f"
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="9fddd5aa0b9599113c22670fcc1221004978ee8a"
sha1="dae9280a45f0ece5a2adc3bc6182ff0b675f4389"
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="cb366addbea7a1fd34aa49b739dcc0b480350fce"
sha1="264b3280e6fa89c8c8a2b1cdc8cb29bd3f1bb621"
targetFolder="/opt/"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$sha1" "$targetFolder" ""
@@ -35,21 +35,38 @@ fi
exec 9>"/tmp/vxworks_qemu_host_setup.lock"
flock 9
NFS_CONF_MARKER="# VxWorks QEMU NFS settings (added by vxworks_qemu_launcher.sh)"
# Persist the sysctl settings so they survive the reboot between the build
# and test phases, then apply them to the running kernel as well.
SYSCTL_CONF="/etc/sysctl.d/90-vxworks-qemu.conf"
if [ ! -f "$SYSCTL_CONF" ]; then
sudo tee "$SYSCTL_CONF" >/dev/null <<'EOF'
# VxWorks QEMU network settings (added by vxworks_qemu_launcher.sh)
net.core.rmem_max=8388608
net.core.rmem_default=8388608
net.core.wmem_max=8388608
net.core.wmem_default=8388608
net.ipv4.ipfrag_high_thresh=16777216
net.ipv4.ipfrag_low_thresh=12582912
EOF
fi
sudo sysctl -q -p "$SYSCTL_CONF"
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 'threads=32\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"
sudo bash -c "echo '/home/qt/work 172.31.1.10/24(rw,async,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,async,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,async,root_squash,no_subtree_check,anonuid=2001,anongid=100)' >> /etc/exports"
# Restart NFS server
sudo exportfs -a
sudo exportfs -ra
sudo systemctl restart nfs-server
fi
@@ -70,7 +87,7 @@ if [ "$TYPE" = "arm" ] || [ "$TYPE" = "" ]; then
$VXWORKS_QEMU/bin/qemu-system-arm \
-machine sabrelite \
-smp 2 \
-m 2G \
-m 3G \
-nographic \
-monitor none \
-serial null \
@@ -85,7 +102,7 @@ elif [ "$TYPE" = "intel" ]; then
$VXWORKS_QEMU/bin/qemu-system-x86_64 \
-M q35 \
-smp 4 \
-m 4G \
-m 15G \
-cpu "Skylake-Client" \
-enable-kvm \
-monitor none \
@@ -96,15 +113,49 @@ elif [ "$TYPE" = "intel" ]; then
-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
QEMU_PID=$!
for _ in $(seq 30)
# The launcher is also re-invoked from inside the ctest environment when
# coin_vxworks_qemu_runner.sh restarts a wedged emulator. That environment
# carries a library path with the provisioned OpenSSL, which the system ssh
# (linked against the distro OpenSSL) refuses to load ("OpenSSL version
# mismatch"), so run ssh with a clean library path. Bound each probe with a
# hard timeout as well: ConnectTimeout only limits TCP connect, and a
# half-booted guest that accepts the connection but never answers would
# otherwise stall the loop.
#
# Boot-to-ssh takes seconds on KVM x86 but 15-60s+ on TCG ARM, with a long
# tail when several instances boot in parallel (a fixed 30-try budget killed
# healthy relaunches mid-boot on qemu_armv7), so wait on a wall-clock
# deadline rather than a retry count, and give up early only when the QEMU
# process itself has died.
SSH_WAIT_SECS=${VXWORKS_SSH_WAIT_SECS:-300}
SSH_UP=0
deadline=$((SECONDS + SSH_WAIT_SECS))
while (( SECONDS < deadline ))
do
status=$(ssh -o BatchMode=yes -o HostKeyAlgorithms=+ssh-rsa -o ConnectTimeout=1 "${SSH_TARGET}" echo emulator up) || true
if [[ -n "$QEMU_PID" ]] && ! kill -0 "$QEMU_PID" 2>/dev/null; then
echo "QEMU process for instance ${INSTANCE} exited during boot"
break
fi
status=$(env -u LD_LIBRARY_PATH timeout -k 5 15 \
ssh -n -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 (instance ${INSTANCE} @ ${GUEST_IP})"
SSH_UP=1
break
else
echo "Waiting VXWORKS QEMU SSH server (instance ${INSTANCE} @ ${GUEST_IP})"
sleep 1
fi
done
# Do not report success for an instance whose SSH server never came up: the
# caller would go on to source the test script on a guest in an unknown
# state. Exit non-zero so the testrunner's restart path can fail the attempt
# and let qt-testrunner retry with a clean slot.
if [[ $SSH_UP -ne 1 ]]; then
echo "VXWORKS QEMU SSH server did not come up (instance ${INSTANCE} @ ${GUEST_IP})"
exit 1
fi
+2 -5
View File
@@ -25,8 +25,8 @@ basePath="http://ci-files01-hki.ci.qt.io/input/android"
toolsVersion="19.0"
toolsFile="commandlinetools-mac-13114758_latest.zip"
toolsBackupUrl="https://dl.google.com/android/repository/$toolsFile"
sdkBuildToolsVersion="35.0.1"
sdkApiLevel="android-35"
sdkBuildToolsVersion="37.0.0"
sdkApiLevel="android-37.0"
toolsSha1="c3e06a1959762e89167d1cbaa988605f6f7c1d24"
ndkVersionLatest="r27c"
@@ -43,9 +43,6 @@ ndkVersionNightly1=$ndkVersionLatest # Set as same version as latest = skip NDK
ndkSha1Nightly1=$ndkSha1Latest
ndkVersionNightly2=$ndkVersionLatest
ndkSha1Nightly2=$ndkSha1Latest
sdkBuildToolsVersion="36.0.0"
# this is compile sdk version
sdkApiLevel="android-36"
toolsTargetFile="/tmp/$toolsFile"
toolsSourceFile="$basePath/$toolsFile"
+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.
+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,7 +4,8 @@ plugins {
android {
namespace = 'org.qtproject.qt.gradlecache.app'
compileSdk = 36
compileSdk = 37
compileSdkMinor = 0
defaultConfig {
applicationId 'org.qtproject.qt.gradlecache.app'
@@ -4,7 +4,8 @@ plugins {
android {
namespace = 'org.qtproject.qt.gradlecache.feature'
compileSdk = 36
compileSdk = 37
compileSdkMinor = 0
defaultConfig {
minSdk = 28
@@ -4,7 +4,8 @@ plugins {
android {
namespace = 'org.qtproject.qt.gradlecache.lib'
compileSdk = 36
compileSdk = 37
compileSdkMinor = 0
defaultConfig {
minSdk = 28
@@ -1,7 +1,7 @@
set(VCPKG_ENV_PASSTHROUGH_UNTRACKED OHOS_SDK_ROOT)
set(VCPKG_TARGET_ARCHITECTURE arm64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE static)
set(VCPKG_CMAKE_SYSTEM_NAME OHOS)
set(VCPKG_MAKE_BUILD_TRIPLET "--host=aarch64-unknown-linux-ohos")
set(VCPKG_CMAKE_CONFIGURE_OPTIONS -DOHOS_ARCH=arm64-v8a -DCMAKE_PLATFORM_NO_VERSIONED_SONAME=ON)
@@ -3,8 +3,7 @@
"default-registry": {
"kind": "git",
"repository": "https://git.qt.io/qtbuildsystem/vcpkg",
"reference": "refs/tags/2026.05.05-ohos",
"baseline": "e59d4f2aeeb7f21a7d22b078111223ef71a509f2"
"baseline": "93580fc29654eec8d22804a01d7191284d65f28e"
},
"overlay-triplets": [ "./../triplets" ]
}
@@ -13,7 +13,8 @@
},
{
"name": "protobuf",
"platform": "!osx & !ohos"
"platform": "!osx & !ohos",
"features": [ "libprotoc" ]
},
{
"name": "protobuf",
@@ -1 +1 @@
vcpkg_version=2026.05.05-ohos
vcpkg_version=2026.06.01-qt
@@ -2,25 +2,38 @@
# Copyright (C) 2024 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
download_ffmpeg() {
local version="${1:-"n8.1.2"}"
local sha1="${2:-a7f4ce77209afdadca9f371db261e8d69903dc85}"
download_ffmpeg() (
local version="${1:-"9.0.1"}"
local sha1="${2:-89c318905212e6b67e10e42ab10ab8007e0aefda}"
local ffmpeg_name="FFmpeg-$version"
local ffmpeg_name="FFmpeg-n$version"
local target_dir="$HOME"
local ffmpeg_source_dir="$target_dir/$ffmpeg_name"
if [ ! -d "$ffmpeg_source_dir" ]; then
local url_public="https://github.com/FFmpeg/FFmpeg/archive/refs/tags/$version.tar.gz"
local url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/FFmpeg-$version.tar.gz"
local url_public="https://ffmpeg.org/releases/ffmpeg-$version.tar.gz"
local url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/ffmpeg-$version.tar.gz"
local app_prefix=""
local temp_dir
temp_dir=$(mktemp -d)
trap 'rm -rf "$temp_dir"' EXIT
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
InstallFromCompressedFileFromURL "$url_cached" "$url_public" "$sha1" "$target_dir" "$app_prefix" > /dev/null
InstallFromCompressedFileFromURL "$url_cached" "$url_public" "$sha1" "$temp_dir" "$app_prefix" > /dev/null
local extracted_dirs=("$temp_dir"/*/)
if [ "${#extracted_dirs[@]}" -ne 1 ] || [ ! -d "${extracted_dirs[0]}" ]; then
>&2 echo "Expected exactly one directory in the FFmpeg archive, got: ${extracted_dirs[*]}"
exit 1
fi
mkdir -p "$target_dir"
mv "${extracted_dirs[0]%/}" "$ffmpeg_source_dir"
fi
echo "$ffmpeg_source_dir"
}
)
get_ffmpeg_config_options() {
local build_type="$1"
+2 -2
View File
@@ -41,8 +41,8 @@ $ndkOfficialUrlNightly2 = "https://dl.google.com/android/repository/android-ndk-
$toolsVersion = "19.0"
$toolsFile = "commandlinetools-win-13114758_latest.zip"
$sdkApi = "ANDROID_API_VERSION"
$sdkApiLevel = "android-36"
$sdkBuildToolsVersion = "36.0.0"
$sdkApiLevel = "android-37.0"
$sdkBuildToolsVersion = "37.0.0"
$toolsCachedUrl= "\\ci-files01-hki.ci.qt.io\provisioning\android\$toolsFile"
$toolsOfficialUrl = "https://dl.google.com/android/repository/$toolsFile"
$toolsChecksum = "54a582f3bf73e04253602f2d1c80bd5868aac115"
@@ -7,21 +7,38 @@
# This script will install FFmpeg
$msys = "C:\Utils\msys64\usr\bin\bash"
$version="n8.1.2"
$url_public="https://github.com/FFmpeg/FFmpeg/archive/refs/tags/$version.tar.gz"
$sha1="a7f4ce77209afdadca9f371db261e8d69903dc85"
$url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/FFmpeg-$version.tar.gz"
$ffmpeg_name="FFmpeg-$version"
$version="9.0.1"
$url_public="https://ffmpeg.org/releases/ffmpeg-$version.tar.gz"
$sha1="89c318905212e6b67e10e42ab10ab8007e0aefda"
$url_cached="http://ci-files01-hki.ci.qt.io/input/ffmpeg/ffmpeg-$version.tar.gz"
$ffmpeg_name="FFmpeg-n$version"
$download_location = "C:\Windows\Temp\$ffmpeg_name.tar.gz"
$unzip_location = "C:\"
$ffmpeg_source_dir = "C:\$ffmpeg_name"
Write-Host "Fetching FFmpeg $version..."
Download $url_public $url_cached $download_location
Verify-Checksum $download_location $sha1
Extract-tar_gz $download_location $unzip_location
Remove $download_location
$extract_temp_dir = "C:\Windows\Temp\FFmpeg-extract-$([System.Guid]::NewGuid().ToString('N'))"
try {
New-Item -ItemType Directory -Path $extract_temp_dir -Force | Out-Null
Download $url_public $url_cached $download_location
Verify-Checksum $download_location $sha1
Extract-tar_gz $download_location $extract_temp_dir
$extracted_dirs = @(Get-ChildItem -Path $extract_temp_dir -Directory)
if ($extracted_dirs.Count -ne 1) {
throw "Expected exactly one directory in the FFmpeg archive, got: $($extracted_dirs.Name -join ', ')"
}
Remove $ffmpeg_source_dir
Move-Item -Path $extracted_dirs[0].FullName -Destination $ffmpeg_source_dir
} finally {
Remove $download_location
Remove $extract_temp_dir
}
function GetFfmpegDefaultConfiguration {
$defaultConfiguration = Get-Content "$PSScriptRoot\..\shared\ffmpeg_config_options.txt"
@@ -6,8 +6,8 @@
. "$PSScriptRoot\helpers.ps1"
$networkTestLocation = "C:\Program Files"
$url_public="https://ci-files01-hki.ci.qt.io/input/networktestapp/CiNetworkTest-MSVC-2022-Windows.tgz"
$sha1="543D4562159140D4E7223721AF15ED6E1998E5B5"
$url_public="https://ci-files01-hki.ci.qt.io/input/networktestapp/CiNetworkTest-MSVC-2022-Windows-v1.2.tgz"
$sha1="C1D8871E610CF281E74E009DBE1BE5DA84B49807"
$download_location = "C:\Windows\Temp\network-test.tgz"
Write-Host "Fetching CiNetworkTest.exe..."
@@ -24,6 +24,15 @@ echo "Using public repositories for now. Repo-clones isn't set yet for Debian us
echo "deb https://archive.debian.org/debian bullseye-backports main" | sudo tee -a /etc/apt/sources.list
echo "deb-src https://archive.debian.org/debian bullseye-backports main" | sudo tee -a /etc/apt/sources.list
# the securitey.debian.org key has expired
sudo sed -i 's|http://deb.debian.org/debian-security|http://snapshot.debian.org/archive/debian-security/20260831T211304Z|g' /etc/apt/sources.list
sudo sed -i 's|http://security.debian.org/debian-security|http://snapshot.debian.org/archive/debian-security/20260831T211304Z|g' /etc/apt/sources.list
# Disable expiration checks
cat <<'EOF' | sudo tee /etc/apt/apt.conf.d/99bullseye-eol
Acquire::Check-Valid-Until "false";
Acquire::AllowInsecureRepositories "false";
EOF
# Make sure needed ca-certificates are available
installPackages+=(ca-certificates)
# Git is not needed by builds themselves, but is nice to have
@@ -260,7 +269,8 @@ installPackages+=(tzdata)
echo "Running update for apt"
waitLoop
sudo apt-get update
sudo rm -rf /var/lib/apt/lists/*
sudo apt-get -o Acquire::http::No-Cache=true -o Acquire::Check-Valid-Until=false update
echo "Installing packages"
waitLoop
sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}"
@@ -7,6 +7,11 @@ set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/shared/network_test_server_ip.txt
source "$BASEDIR/../common/shared/network_test_server_ip.txt"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts"
echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts
@@ -8,6 +8,13 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
# shellcheck disable=SC2129
source "${BASH_SOURCE%/*}/../common/linux/verify-release-packages.sh"
@@ -8,6 +8,11 @@ set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/shared/network_test_server_ip.txt
source "$BASEDIR/../common/shared/network_test_server_ip.txt"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts"
echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts
@@ -9,6 +9,13 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
# shellcheck disable=SC2129
echo "*********************************************" >> ~/versions.txt
echo "***** All installed RPM packages *****" >> ~/versions.txt
@@ -7,6 +7,11 @@ set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/shared/network_test_server_ip.txt
source "$BASEDIR/../common/shared/network_test_server_ip.txt"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts"
echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts
@@ -8,6 +8,13 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
# shellcheck disable=SC2129
echo "*********************************************" >> ~/versions.txt
echo "***** All installed RPM packages *****" >> ~/versions.txt
@@ -7,6 +7,11 @@ set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/shared/network_test_server_ip.txt
source "$BASEDIR/../common/shared/network_test_server_ip.txt"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts"
echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts
@@ -8,6 +8,13 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
# shellcheck disable=SC2129
echo "*********************************************" >> ~/versions.txt
echo "***** All installed RPM packages *****" >> ~/versions.txt
@@ -9,6 +9,11 @@ BASEDIR=$(dirname "$0")
source "$BASEDIR/../common/shared/network_test_server_ip.txt"
# shellcheck source=../common/unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
echo "Set timezone to UTC."
sudo timedatectl set-timezone Etc/UTC
@@ -8,6 +8,13 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
# shellcheck disable=SC2129
echo "*********************************************" >> ~/versions.txt
echo "***** All installed RPM packages *****" >> ~/versions.txt
@@ -11,6 +11,11 @@ source "$BASEDIR/../common/shared/network_test_server_ip.txt"
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
# shellcheck source=../common/unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
echo "Set timezone to UTC."
sudo timedatectl set-timezone Etc/UTC
@@ -8,6 +8,13 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
# shellcheck disable=SC2129
echo "*********************************************" >> ~/versions.txt
echo "***** All installed RPM packages *****" >> ~/versions.txt
@@ -9,6 +9,11 @@ set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
NTS_IP=10.212.2.216
@@ -2,5 +2,12 @@
#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
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/ubuntu-version.sh"
@@ -9,6 +9,11 @@ set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
NTS_IP=10.212.2.216
@@ -2,5 +2,12 @@
#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
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/ubuntu-version.sh"
@@ -9,6 +9,11 @@ set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
NTS_IP=10.212.2.216
@@ -4,5 +4,5 @@
set -ex
# shellcheck source=../common/linux/install-vcpkg-ports-ohos.sh
source "${BASH_SOURCE%/*}/../common/linux/install-vcpkg-ports-ohos.sh"
# shellcheck source=../common/unix/install-vcpkg-ports-ohos.sh
source "${BASH_SOURCE%/*}/../common/unix/install-vcpkg-ports-ohos.sh"
@@ -4,5 +4,5 @@
set -ex
# shellcheck source=../common/linux/install-openssl-headers-ohos.sh
source "${BASH_SOURCE%/*}/../common/linux/install-openssl-headers-ohos.sh"
# shellcheck source=../common/unix/install-openssl-headers-ohos.sh
source "${BASH_SOURCE%/*}/../common/unix/install-openssl-headers-ohos.sh"
@@ -2,5 +2,12 @@
#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
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/ubuntu-version.sh"
@@ -8,6 +8,11 @@ BASEDIR=$(dirname "$0")
source "$BASEDIR/../common/shared/network_test_server_ip.txt"
# shellcheck source=../common/unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
# https://bugzilla.opensuse.org/show_bug.cgi?id=1032027
sudo btrfs quota disable /
@@ -8,6 +8,12 @@
set -ex
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
# shellcheck disable=SC2129
echo "*********************************************" >> ~/versions.txt
echo "***** All installed RPM packages *****" >> ~/versions.txt
@@ -10,6 +10,11 @@ source "$BASEDIR/../common/shared/network_test_server_ip.txt"
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
# shellcheck source=../common/unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
# https://bugzilla.opensuse.org/show_bug.cgi?id=1032027
sudo btrfs quota disable /
@@ -8,6 +8,13 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
# shellcheck disable=SC2129
echo "*********************************************" >> ~/versions.txt
echo "***** All installed RPM packages *****" >> ~/versions.txt
@@ -10,6 +10,11 @@ source "$BASEDIR/../common/shared/network_test_server_ip.txt"
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
# shellcheck source=../common/unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Get distro version to later check if version has changed at the end of the provisioning
record_os_version
# https://bugzilla.opensuse.org/show_bug.cgi?id=1032027
sudo btrfs quota disable /
@@ -52,6 +52,9 @@ sudo zypper -nq install alsa-devel dbus-1-devel libxkbfile-devel \
# qtwebkit
sudo zypper -nq install libxml2-devel libxslt-devel
# Qt Creator/Profiler (for installing Qt and patching ICU)
sudo zypper -nq install chrpath
# GStreamer (qtwebkit and qtmultimedia), pulseaudio (qtmultimedia)
sudo zypper -nq install gstreamer-devel gstreamer-plugins-base-devel libpulse-devel pipewire-devel # gstreamer-plugin-openh264 not available
@@ -8,6 +8,13 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/linux/distro_version_check.sh
source "$BASEDIR/../common/linux/distro_version_check.sh"
# Check distro version if it has changed
verify_os_version_unchanged
# shellcheck disable=SC2129
echo "*********************************************" >> ~/versions.txt
echo "***** All installed RPM packages *****" >> ~/versions.txt
+8
View File
@@ -0,0 +1,8 @@
#!/bin/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
set -ex
# shellcheck source=../common/macos/harmonyos.sh
source "${BASH_SOURCE%/*}/../common/macos/harmonyos.sh"
@@ -0,0 +1,10 @@
#!/bin/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 -ex
brew install autoconf autoconf-archive automake libtool
# shellcheck source=../common/unix/install-vcpkg-ports-ohos.sh
source "${BASH_SOURCE%/*}/../common/unix/install-vcpkg-ports-ohos.sh"
@@ -0,0 +1,8 @@
#!/bin/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 -ex
# shellcheck source=../common/unix/install-openssl-headers-ohos.sh
source "${BASH_SOURCE%/*}/../common/unix/install-openssl-headers-ohos.sh"
@@ -1,11 +0,0 @@
. "$PSScriptRoot\..\common\windows\install-mingw.ps1"
# This script will install 64-bit MinGW 13.1.0
# Note! MinGW version is 9.0.0 but the GCC version is 13.1 which is used with the naming of MinGW
$release = "MinGW-w64-x86_64-13.1.0-release-posix-seh-msvcrt-rt_v11-rev1"
$sha1 = "561db0989c1b2cb73e0ceb27aed3b0ee8cb1db48"
InstallMinGW $release $sha1
@@ -0,0 +1,11 @@
. "$PSScriptRoot\..\common\windows\install-mingw.ps1"
# This script will install 64-bit MinGW 15.1.0
# Note! MinGW version is 12.0.0 but the GCC version is 15.1 which is used with the naming of MinGW
$release = "MinGW-w64-x86_64-15.1.0-release-posix-seh-msvcrt-rt_v12-rev0"
$sha1 = "2fbec5f4a0e46099a850b11780500d0208b10591"
InstallMinGW $release $sha1
@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\install-network-test.ps1"
@@ -1,13 +0,0 @@
# 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
. "$PSScriptRoot\..\common\windows\install-mingw.ps1"
# This script will install 64-bit MinGW 13.1.0
# Note! MinGW version is 9.0.0 but the GCC version is 13.1 which is used with the naming of MinGW
$release = "MinGW-w64-x86_64-13.1.0-release-posix-seh-msvcrt-rt_v11-rev1"
$sha1 = "561db0989c1b2cb73e0ceb27aed3b0ee8cb1db48"
InstallMinGW $release $sha1
@@ -0,0 +1,13 @@
# 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
. "$PSScriptRoot\..\common\windows\install-mingw.ps1"
# This script will install 64-bit MinGW 15.1.0
# Note! MinGW version is 12.0.0 but the GCC version is 15.1 which is used with the naming of MinGW
$release = "MinGW-w64-x86_64-15.1.0-release-posix-seh-msvcrt-rt_v12-rev0"
$sha1 = "2fbec5f4a0e46099a850b11780500d0208b10591"
InstallMinGW $release $sha1
+1 -1
Submodule qt3d updated: b1e9df0e9d...c321077c09
+1 -1
Submodule qtbase updated: da8e73b254...a2c0b1ea39
+1 -1
Submodule qtcoap updated: 498970686e...22aa6bf9c1
+1 -1
Submodule qtdoc updated: 1801131765...f1b9ab04dc

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