Upstream CMake sometimes introduces behavior changes or breakage that
affects building Qt or user projects.
It is beneficial to catch these issues earlier, before a major / minor
CMake release is made, and before we update our provisioning scripts
to use a newer CMake.
Add a new nightly platform file, which includes all existing cmake
platform configurations, and adds the "BuildCMakeFromSources" feature
to all of them.
This feature:
- tells qtbase CI instructions to download the latest master branch
sources from the CMake repository mirror
- builds CMake from these sources
- uses this CMake to configure Qt
The nightly build will run once a week to catch potential issues
introduced in newer CMake changes.
Fixes: QTBUG-143633
Change-Id: If7223b462a437f97b9fecabb5726a5fcaab4be53
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Wrong to add them as configure args.
Put them to the right place.
This amends ab346b98dc.
Change-Id: I5357c3d5ea0ee63f1b292974ceb9fd5792321b4b
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
This amends commit 378c8719a9.
Since 378c8719a9, -skip is registered as a known option in
init-repository's option parser. This caused -skip values to be consumed
during option parsing and no longer appear in the unknown_args list that
gets forwarded to configure. As a result, -skip was silently ignored
when -init-submodules was not passed.
Fix by collecting skip modules into a dedicated list from two sources:
the -skip option values consumed by init-repository's parser, and
exclusion entries from -submodules/--module-subset. The merged list is
then forwarded to configure.
This also simplifies the previous merge logic that searched for -skip in
filtered_args, which became dead code after 378c8719a9.
Pick-to: 6.8 6.10 6.11
Task-number: QTBUG-140359
Change-Id: I816020959f86cf4b8e36ce1a62172acd442ed1d3
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
install-vxworks-qemu.sh uses a variable that doesn't exist, causing
issues when we turn on more strict error-handling.
Pick-to: 6.11 6.10 6.8
Change-Id: I9d644a497e4689c7ab35c80f97548b1a1a6bdf12
Reviewed-by: Simo Fält <simo.falt@qt.io>
Swiftly is need to install swift tools to linux.
Change-Id: Idfdaacf680f2dc30aa944811ce3daf2e52efe21d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
There have been cases where necessary symlinks have been lost when
extracting prebuilt OpenSSL builds for Android. This patch ensures the
script will always create them.
As a drive-by, the patch cleans up some behavior related to
'opensslHome' being used to write to a variable outside function scope.
Pick-to: 6.11 6.10 6.8
Change-Id: Id6fb4143aaadcbf11e1b9bc6301ef53d2043ad10
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Need upgrade of the IANA db to 2022g or later with Ubuntu 22.04. Ensure
zoneinfo (tzdata/timezone) always stays up to date with all Linux OS.
Both packages (tzdata/timezone) provide the same thing:
- the IANA TZ database under /usr/share/zoneinfo/
tzdata:
- Debian
- Ubuntu
- RHEL
timezone:
- openSUSE
- SLES
Pick-to: 6.11 6.10 6.8 6.5
Fixes: COIN-1282
Change-Id: I6fe7d548470d8f0f63e5451a6b5203e658575f48
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
When running configure -init-submodules -skip <module>, the -skip
option was ignored because init-repository ran before -skip values
were processed. The skipped modules were still initialized.
Fix by preprocessing -skip values in qt_tl_run_main_script() before
calling qt_ir_run_main_script(). The -skip values are converted to
module-subset exclusions (e.g. -qtwebengine) and merged with the
existing module-subset option.
Also register -skip as a known option in init-repository so it can
be parsed from the optfile.
Fixes: QTBUG-140359
Pick-to: 6.8 6.10 6.11
Change-Id: I37ed916dd1c22b6d10d23821044fee807919d4a9
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
App Store requires that our FFmpeg distribution includes dSYM files for
debugging symbols.
This patch removes stripping from the FFmpeg build, generates the
dSYM files and then manually strips the dylibs afterwards.
Pick-to: 6.11 6.10 6.8
Fixes: QTBUG-143963
Change-Id: I2740f46bb0fd7e7ee9da8dede01944b89bc3db7a
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
This patch rewrites the create_framework() function to
be more readable and adds commenting.
No functional changes.
Pick-to: 6.11 6.10 6.8
Task-number: QTBUG-143963
Change-Id: Id52fb43d733fe0c815a13b15135539452999cb40
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Currently this script is stored under unix, but it's only ever going
to be used on macos. This patch moves the script.
No functional changes.
Pick-to: 6.11 6.10 6.8
Change-Id: Iba3d101d360e90ffaa3478689bb002b4e5f65bc1
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
The script accepts an OS parameter, which is then forwarded into the
`build_ffmpeg_android` function. This function expects a different set
of values, that are different in name only, not in meaning.
This patch makes us forward the OS parameter directly into the function
and changes the internal logic accordingly.
No functional changes.
Pick-to: 6.11 6.10 6.8
Change-Id: I5614f1cf489594cfab2966a680e87a95c7be267b
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Fix vcpkg install to use correct architecture (arm64/x64)
as a host when using --host-triplet argument.
Pick-to: 6.11
Task-number: QTQAINFRA-7691
Change-Id: I899f6521b47e407e1c9bde1c0f2b83e560894794
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
OpenSSL packages have differing features indicated in their file name,
separate those in their own $suffix variable for the install function to
reduce hard-coding.
The function will now rename the extracted root directory to mirror the
package name from Ci-files. This is to prevent later "OpenSSL not found"
errors in provisioning when prebuild package and its root are not named
exactly the same.
Pick-to: 6.11 6.10 6.8 6.5
Change-Id: I71019a0d2731aace00ff2eb82d63537673f6e41a
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Android FFmpeg provisioning requires 'readelf', which is provided by
binutils package. This package is shown to be flaky on older macOS x86
hosts. It is not critical that we compile that we compile Android
FFmpeg on these hosts, so this patch removes them.
Pick-to: 6.11 6.10 6.8
Change-Id: I6722f2c543b022a998573cc76ffc671378a4fcb5
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Since the version we use right now has some issues, download a newer
version from the Qt Multimedia repository to get the latest fixes and
improvements.
Change-Id: I6f42c01680ebd9fb3cb67ea802afa23536751ae8
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Baseline tests need the -auto argument to actually check baselines.
Add it.
Task-number: QTQAINFRA-7602
Change-Id: Id65f0a46764ce74284a3b445bbd18955bd654ea2
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
It seems that qmake does not pass /FS to the compiler causing compile
errors in parallel builds. In theory we could still compile examples
with cmake, but there seems to fine-grained configuration for that.
Change-Id: Ia3954cee61e842f029ac0033ee895c39b8b91b04
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
This makes it easier to use a debug VM without having to use
full paths from the Android SDK and also without having to
know where they live.
Pick-to: 6.5 6.8 6.10 6.11
Change-Id: Ib6c255edae5e5773551fab1008ebdb9a5e1ff8f2
Reviewed-by: Simo Fält <simo.falt@qt.io>
To fix ImportError:
/usr/lib64/python3.13/lib-dynload/
pyexpat.cpython-313-x86_64-linux-gnu.so:
undefined symbol: XML_SetAllocTrackerActivationThreshold
Current libexpat1-2.7.1-160000.2.2 did not export the Alloc Tracker
symbol but Python 3.13.11’s pyexpat module was built expecting symbol.
Therefore needs to install newer available libexpat1-2.7.1-160000.3.1
Pick-to: 6.11
Fixes: QTQAINFRA-7650
Change-Id: Iea9b838e97830c9c6f2b1fa3be8db02447b49de4
Reviewed-by: Simo Fält <simo.falt@qt.io>
10.150.153.60 is the right IP. 10.9.70.11 was a legacy address.
Correct it.
Found-by: Juhani.Kurola@qt.io
Task-number: QTQAINFRA-7602
Change-Id: I1b176d0a614960e0f2acfcdcc6ca603d2a1b0ade
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
With disabling the desktop overview and skipping/fixing 100% blocking
tests. The failed test runs for x11 have reduced significantly.
Pick-to: 6.11 6.10
Task-number: QTBUG-132070
Task-number: QTQAINFRA-6098
Change-Id: I4b431235e959a352c0de851961e80336ee241ba3
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
This upgrade is needed to fix:
tst_QScreenCaptureBackend failed on Ubuntu 24.04 GNOME X11
Old Tier1: qtci-linux-Ubuntu-24.04-x86_64-51 - X11
New Tier1: qtci-linux-Ubuntu-24.04-x86_64-54 - X11
Other fixes included:
- 24.04.2 has also a fix to mutterlib issue
- https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/2095396
- Which caused a crash seen in journal system logs
- Installed no-overview gnome extension to fix issue: QTBUG-132070
Pick-to: 6.11 6.10
Task-number: QTQAINFRA-7007
Task-number: QTBUG-128515
Task-number: QTBUG-132070
Change-Id: I4ed86470d7b4ce82802f0a98726eb1ed51931623
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
They are required to build the Qt OpenAPI module.
Amends 3a7f17e0cd which introduced this
platform.
Task-number: QTBUG-138968
Change-Id: I2fd7b08d7acdd5dbaa89e712968e0b91dcc83839
Reviewed-by: Tatiana Borisova <tatiana.borisova@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
When building on iOS, the minimum deployment target was only declared as
linker flags for the libary. However the flags can affect the run-time
features by potentially enabling APIs or affecting codegen if the
compiler can assume that certain CPU features are present.
We should therefore pass the minimum deployment target as compiler flags
as well as linker flag.
Pick-to: 6.11 6.10 6.8 6.5
Change-Id: If9b96fb31bf4173da2e4c574c1c080be075851b8
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
- the newest 7.18.0 has some generation updates,
that affect named inline objects generation. It may be
useful from testing perspective to have the latest version
on CI.
Pick-to: 6.11
Change-Id: Iaaaae823b7ccc1496f83e5af845bfcfa7999767f
Reviewed-by: Simo Fält <simo.falt@qt.io>