When running 'install-ffmpeg-android.sh' on Ubuntu hosts, it may fail
due to the FFmpeg build process using the host's 'strip' executable.
This causes the build to fail due to the 'strip' throwing an error
due to it not being able to recognize the format of the .so files for
the FFmpeg Android build.
This patch solves this by explicitly using the executable 'llvm-strip'
command from the Android NDK.
Pick-to: 6.11 6.10 6.8
Change-Id: Ia32c31e3e9d1f550a026f2684362e19d663a8863
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
The configuration is duplicate as it is also run on 24.04.
Pick-to: 6.11 6.10 6.8
Task-number: QTQAINFRA-7146
Change-Id: Icbd1f7379cb1f23ed8c818f25aa3e09c5fcb5a45
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Currently, this script is hardcoded to output to the directory
'/usr/local/'. This output is stored in the variable 'prefix'. However,
this variable is used inconsistently in the script, meaning we cannot
actually modify the variable to change the output directory.
This patch does the following:
- Applies the 'prefix' variable where necessary.
- Allows an optional command-line parameter to be applied to 'prefix',
allowing one to specify where the output directory. This is
particularly useful for local builds.
No changes to current CI behavior.
Pick-to: 6.11 6.10 6.8
Change-Id: I51f83ce3844c2aa9db778b1c54091acb64a227e6
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Commit d6918d7ac5 broke init-repository if
you did not pass an --alternates option.
Pick-to: 6.8 6.10 6.11
Task-number: QTBUG-142712
Fixes: QTBUG-142744
Change-Id: Ia727b420a34a46e52f0f05e549aabe2c975c6d7e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This patch updates build.gradle to set compile- and
targetSdkVersion to 36.
Task-number: QTBUG-138552
Task-number: QTBUG-138549
Pick-to: 6.11 6.10 6.8
Change-Id: I44be99956f39e7bc23e8c5a3d15289dfdd574921
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
RTA is using different means to install Squish for RTA tests, no need
to do it in general provisioning.
Pick-to: 6.11
Change-Id: I4858a282ad7a0b1412f6dd0f4876109fe54a4c88
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This patch bumps:
-The sdkBuildToolsVersion used in Coin to 36.0.0
-The sdkApiLevel used in Coin to 36
Task-number: QTBUG-138550
Task-number: QTBUG-138549
Pick-to: 6.11 6.10 6.8
Change-Id: Ic63cd28ba39743e517ea3a3e2f9ec08bd5dc3267
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Axvion analysis will be run also in release branches and this
prevents results to be mixed between brnaches.
Task-number: QTQAINFRA-7599
Pick-to: 6.11 6.10 6.8
Change-Id: I5766d234bce2054d0dc6999ae1cac3f05c197d0e
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
installing libc++-20-dev and libgstreamer1.0-dev on the same system
causes problems:
* using the llvm apt repo, it will uninstall libgstreamer1.0-dev
* using ubuntu's repo, it will break gstreamer's pkg-config integration
reason is that libgstreamer1.0-dev depends on libunwind-dev, but llvm's
libunwind-20-dev does not provide the pkg-config files.
as temporary workaround we basically revert
e5b56d1d37.
Pick-to: 6.11
Change-Id: Ib4626d17339256d56c4764e3167f4e9fe4b9c909
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
Introduce a new --codereview-https option to use HTTPS instead of SSH
for Gerrit URLs. Update QtIROptionsHelpers.cmake and document in
QtIRHelp.txt.
Change-Id: Iae032bdf07e323a8f63946475c692cab23deffc4
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Currently, the iOS FFmpeg provisioning script will install .xcframework
files into a subfolder 'frameworks'. The .xcframework files fulfill a
similar purpose to ordinary .dylib files and should be placed in a
'lib' subfolder, to make provisioning more similar to how we deploy
FFmpeg for other platforms.
This patch makes us install .xcframework files in a 'lib' subfolder
instead.
Task-number: QTBUG-136480
Pick-to: 6.11 6.10
Change-Id: I91f9938b595ecff5b04d49a71e9872f5d7278cda
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
This helps with the test stability when code.qt.io is down or slow.
Pick-to: 6.10 6.11
Change-Id: I0bdaaa06772a94e73cb33d3f827e4e327123b60a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
When using --alternates with a relative path, nested submodules
(e.g., qtdeclarative/tests/auto/qml/ecmascripttests/test262) failed
because the alternates path wasn't adjusted for the changed working
directory depth. The --alternates option worked correctly with absolute
paths.
Fix by converting the passed alternates path to an absolute path.
Pick-to: 6.8 6.10 6.11
Fixes: QTBUG-142712
Change-Id: Ief7a87768d9ff17bb2832ae363f573ecae58d5ee
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This disables 12 more generally Mostly Harmless warnings to have a
realistic chance to get down to a base line of zero violations.
Later we can re-evaluate the disabled rules one by one and re-enable
them if wanted.
Change-Id: Id9fc2e4013fb7c59040868fea54f14dcda6cefe0
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
This patch
- Replaces Android 15 with Android 16 as a maximum version
- Sets Android 16 as significant and switches to r07 version
Task-number: QTQAINFRA-7299
Task-number: QTQAINFRA-7298
Pick-to: 6.11 6.10 6.8
Change-Id: Ic2ac071da7ab1763225c82e441c27f60cc25fe06
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Needed for WebEngine based on Chromium 140
Pick-to: 6.10 6.11
Change-Id: I0cf1df1107cc8f5aa2850239608f03a7c7831676
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This script is currently located in the 'linux' directory. In future
patches, it will be reused by macOS and Linux hosts.
This patch moves it into the 'unix' folder.
Pick-to: 6.11 6.10 6.8
Change-Id: Ib03b999bef0373dc9600d505b1f4ce926fa97de6
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
The current script relies on some commands intentionally failing during
provisioning because they only apply to certain versions of Xcode.
These errors are silenced using pipes. This is error-prone because we
can no longer catch when these commands are failing in the case where
they should not.
This patch introduces some additional error-handling and conditionals
to make sure we only run commands when they are intended to succeed.
Pick-to: 6.11 6.10 6.8
Change-Id: Ic5048f54adb31d263e28f51312f44fe3b55e6fe5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This patch updates the Android Command-Line Tools in CI from v2.1 to
v19.0.
The zip file for the older version contained a single directory
'tools', this directory has been renamed to 'cmdline-tools' in the
newer version. This patch includes some changes to make sure we still
use the same folder structure as before.
Task-number: QTQAINFRA-7487
Pick-to: 6.11 6.10 6.8
Change-Id: Id9227241283d4c529005c4961449f50ca7af13be
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
The Android provisioning scripts on macOS and Linux perform many of the
same tasks, but with slightly differing approaches. Future patches will
make us run Android emulators on ARM64, which will further make these
scripts similar.
This patch performs some modifications to the macOS provisioning script
to make it more similar to the Linux one. This will help us combine
parts of these scripts in the future.
Task-number: QTQAINFRA-7487
Pick-to: 6.11 6.10 6.8
Change-Id: Idba30d07607780d1ef8c60cc5e038a034c821632
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
This script is stored in the directory 'provisioning/common/unix'. This
implies it can be used from Linux and macOS hosts. The script
uses the wget command, but at the time of writing, wget is not
installed on our macOS hosts. If wget is not found, this command will
assume the HTTP proxy is not found rather than fail the script
execution.
This patch rewrites this script to use curl if wget is not found.
This makes it run correctly on macOS. Additionally, it adds a fail
case if neither wget or curl is found on the system.
Pick-to: 6.11 6.10 6.8
Change-Id: Id54b9fc69307ef28eb35cf1c0042df11e704a6e2
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
The Python provisioning on macOS ARM hosts is done multiple times
across separate targets.
This patch moves the code into a common script 'macos/python-arm.sh'.
As a drive-by, we bump the version of all targets to 3.12.11, whch is
the same as the one used in the macOS 15 ARM host.
Pick-to: 6.11 6.10 6.8
Change-Id: I8c1f6f7d635fe47b9faa34dbe6988e89252dc2c9
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
On macOS hosts we are using external mirrors for installing with pyenv.
We should instead pull the necessary files from our local mirror.
Pick-to: 6.11 6.10 6.8
Change-Id: I6ba67dfd7cd37809164c7e2c4bcf89d07d45b1b2
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Custom patched packages for windows.
Also Add Windows on arm support.
Pick-to: 6.11 6.10 6.8
Fixes: COIN-740
Change-Id: I27f7d36b3501be2a2011b9b8dfa0ec846cd57bf5
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Renamed files since it leads to misunderstanding due to their index.
Our CI system sees only two first digits, so 100 is seen as 10
and executed with other 10s which is misleading.
Pick-to: 6.10 6.8
Change-Id: Iabb548c622d71df8a3593cc171b7e0c2e2ae0287
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Updating for raising the compiler requirements.
Also adds Ubuntu 22 to test with GCC 11
Since Qt Creator branches can use the same Qt branches
that define these platforms, keep one RHEL 8 job
for Qt Creator 18. Mark it in the features, so the
Qt Creator 19+ configuration can filter these out.
Pick-to: 6.11 6.10
Change-Id: Ib771f473b6ed3ce42c6191647da7d473b64c2316
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
- need to trigger an update for enabling changes required
for merging windows provisioning.
Change-Id: I8b5804c2bda2e4f4f4f204b0db95232583ac57e1
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
The installer from Microsoft which is used for ARM machines has a
different default installation path compared to the installer from
Oracle that is used for x64 machines, but the provisioning script did
not take it into consideration.
As a result, the JAVA_HOME variable was pointing to a non-existing dir
on Windows ARM machines.
An attempt to adjust the installation path using TARGETDIR or INSTALLDIR
properties did not work, so this patch simply hardcodes the path that is
used by the current ARM installer.
Amends b3f5b4fd64 that added Java
provisioning to Windows ARM.
Task-number: QTBUG-138968
Pick-to: 6.10 6.8
Change-Id: I2abdc07195a9c633340c2d7b21deaa80762aee67
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- Rename the sha256 variable to sha1, because that's the actual
algorithm that was used to calculate the checksum.
- Use the `version` variable when constructing `externalUrl`.
Amends 0ac4df3e52.
Change-Id: I79d38fdf5033dce7d0b04c2d8788767b2325895f
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
It is required for qtopenapi.
The patch adds the maven provisioning to only those Windows
configurations that are currently used in qtopenapi.
This commit amends 0ac4df3e52 which
provisioned the same files for Linux and macOS.
Task-number: QTBUG-138968
Change-Id: I8ec903959c58185a5c46bdb7c13f178bdc10a109
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- Add Windows configurations that use MSVC
- Provision openapi generator on the relevant platforms
- golang is already provisioned on all these platforms
The patch does not enable mingw and llvm configs, because
we need to build zlib using mingw first.
It also does not enable x64_64->arm64 cross-compile configs,
because they have a dependency on the mingw config.
Task-number: QTBUG-138968
Change-Id: I4fe35d149a1f9bfa93c1a128e5910b33aad536d4
Reviewed-by: Tatiana Borisova <tatiana.borisova@qt.io>
Place the downloaded file into the new directory inside C:\Utils and
add it to the PATH, because that's what the qtopenapi build scripts
expect.
Task-number: QTBUG-138968
Change-Id: I113b0095074cc8f0dc0470daf54fa7f22ee22719
Reviewed-by: Toni Saario <toni.saario@qt.io>
That is required for qtopenapi builds that would be enabled in the
follow-up patch.
The zlib library is already built after commit
97e80c1538. That commit also sets the
ZLIB_PATH_{arch} environment variables. So, we only need to set
ZLIB_ROOT to point to the proper zlib installation.
This patch does not cover llvm and mingw configurations, because we
need to builds zlib using these compilers first.
Task-number: QTBUG-138968
Change-Id: I5d5ad754d13bef9fc6184b41823a42d98863991a
Reviewed-by: Toni Saario <toni.saario@qt.io>
libuuid is needed for it. RHEL 9.0 already has it in its package list,
but it was missing for the later RHEL 9 versions
Pick-to: 6.10
Change-Id: Ibd052438c534e5811d2f0b0ee848808227e795f9
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This currently flags 294 occurences in Qt Core as errors, practically
all of them related to the implemenation of QDataStream related
functionality.
I think this generally at the wrong level, certainly for Qt Core,
but also for user code: operator>> is (besides operator<<)
/the/ main reason to use the QDataStream class, so if we consider
this risky, QDataStream itself should not be used, i.e. it would
be better to flagging code that creates QDataStream objects not
every use of operator>> of such objects.
Change-Id: If758bde3a77f64cc8c06f8328459dfcd2d94dc8f
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
To all linux, macOS and Windows platforms.
Task-number: QTQAINFRA-7554
Change-Id: I677440fb9faf3f3d36744b59f91f0036449b639b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
RHEL-9.6 will be run in parallel with RHEL-9.4 with insignificant tests
until RHEL-9.6 is confirmed stable, then it will replace RHEL-9.4.
[CI Platforms]
Task-number: QTQAINFRA-7528
Change-Id: I5fe6bfe6f57f1dfb7ec4aeb05560dd7f01fc7f2f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
openSSL 3.2.0 or newer required for libcurl in openSUSE 16.0
This solution has possibility to leave default openSSL
version into use for others, and openSUSE 16.0 (or others)
can move to a newer version if needed.
There are currently two tests failing in this update,
but as openSUSE 16.0 is non-blocking in the CI, it
doesn't get blocked.
Tickets created to fix those:
- QTBUG-141722
- QTBUG-141723
Task-number: QTQAINFRA-7502
Task-number: QTQAINFRA-7455
Task-number: QTQAINFRA-7452
Change-Id: Ie9995a3afcdb09d091d75651528a94f71f5ece2a
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Notes:
- GCC 15
- Python 3.13
- MimerSQL with openSSL 3
- CINetworkTest skipped until newer ICU 77 version available
- gstreamer-plugin-openh264 not available
Repository names have changed:
- Old: /etc/zypp/repos.d/repo-oss.repo
- New: /etc/zypp/repos.d/openSUSE:repo-oss.repo
Not installed by default, therefore no need to disable anymore:
- balooctl
- ntp
Task-number: QTQAINFRA-7455
Task-number: QTQAINFRA-7452
Change-Id: I2af7f828e07d31d3622cf46e819318c71d28783e
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
This is an unfortunate combination of clazy-function-args-by-ref and
clazy-function-args-by-value.
function-args-by-ref fixes are almost always safe to apply. They
actually may save an unbounded amount of cycles, and there are typically
only a few of them.
On the other hand, function-args-by-value is a mixed bag: There are a
lot of them and the expected gain is small: It's typically trading one
or two register for one register and a "hot" location on the stack.
Especially when passing down such objects to a through a sequence of
function calls this is not even necessarily a clear win on all
architecture.
In any case it should be considered that especially in the Qt context
changing signatures of public functions is not cheap, if possible
at all.
Change-Id: I281ea086fb15e0a045316591d9af620b5e730f4a
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
The binaries will be stored to ci-files02 after successful integrations
and the testing/release process will use those binaries.
Currently we can disable tests, as there are no unit tests in the
plugin itself.
Task-number: QTQAINFRA-7390
Change-Id: I7777ee47eed845022d67447a9389ab6943d69bc9
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
'JavaDocs' is a new configuration feature to generate HTML docs and
source JARs using JavaDoc after an Android module build is done.
Task-number: QTBUG-138976
Change-Id: I7d79a4b1aa93692956845838ae102f7bed113a28
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
Our iOS FFmpeg provisioning includes build info.plist manifest files
for the FFMpeg framework files. This manifest includes the version of
FFmpeg that we are deploying. This version string is currently
hardcoded and does not match the version we are actually building.
This patch changes the 'install-ffmpeg-ios.sh' script to
programmatically grab the FFmpeg version from our related scripts, and
inserts it in the info.plist manifest.
Pick-to: 6.10
Task-number: QTBUG-136480
Change-Id: Iafeaade2ff6f2a933a0ba48749af459eef37ab51
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Needed to export release content from the yocto builds.
Task-number: QTBUG-136634
Change-Id: I854b5b67d66aebc2b146e357785c987db47db362
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
- javac was not found on sles and opensuse, so installing
an additional package is required.
Change-Id: Ic26615dc8f7433c3acd870cc85ce16622a046d0f
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- there is already 43-install-golang.sh file presented
Change-Id: I92fd18a95f21e084affe21d74d34aa706399bdfc
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
CI configs for new Qt on board repo.
Task-number: QTBUG-136635
Change-Id: I04d72a4d973ca96f66591ed109c10001824d16b5
Reviewed-by: Toni Saario <toni.saario@qt.io>
- add openSUSE15.6 build configuration for qtopenapi.
- add rhel9.4 build configuration for qtopenapi.
- delete macos15-x86_64 build configuration for qtopenapi,
because the current qtopenapi code only builds go binaries
targeting arm64 architecture, and the x86_64 configuration would
fail trying to run those binaries.
Task-number: QTBUG-140130
Change-Id: Ia4f1b91345d3d7a87916ceee319a6037318fac63
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- replace the linux/install-golang.sh to the unix/install-golang.sh
for macos and linux provisioning configurations.
NOTE:
The Golang version is updated from 1.22.4 to 1.25.2.
Task-number: QTBUG-140130
Change-Id: Ic5e7a93bcad4d82210bcd5c7f4144153c938a603
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Documentation warnings easily sneak into integrations, as they were not
caught by pre-checks. Enabling them to catch them early.
Change-Id: I24eb9c653d6f774dccec82dea3003be27d81b8b7
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
'cp -p' attempts to copy NFSv4 ACL extended attributes when preserving
permissions. On filesystems that do not support these xattrs (e.g., ext4),
this results in `Operation not supported` and causes 'cp' to fail.
Add explicit skip entries for these attributes in /etc/xattr.conf
so libattr ignores them during copy operations. This is needed to get
bitbake builds to work when using download cache from NFS4 mount.
Change-Id: I3dabb065c4d9928121fe14d0fdc896c7415bdcb9
Reviewed-by: Toni Saario <toni.saario@qt.io>
* Ubuntu 24.04 - clang-20 with libc++
Note: HAVE_cxx23_stacktrace failed on clang-20, which is experimental
in libstdc++ and not implemented in libc++.
Task-number: QTQAINFRA-7340
Change-Id: Ib2b2e8b34b7a978d1e5d98c1baf0cbdd4a49da6b
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Allow the emulator launcher to take new options that are commonly
used:
* --window: shows the emulator window instead of running headless
* --avd: set the emulator name instead of using the env var, this
can be more intuitive and more expected than the env var.
* --help: to guide users how to use this script.
Also, the script now will print a list of available AVD names to
use instead of the less obvious error of no AVD name provided
which forces the user to manually find the names first.
This also, sets the COIN_CTEST_RESULTSDIR to CWD in case
it's not set, this is the case when running as a debug VM.
Pick-to: 6.5 6.8 6.10
Change-Id: Id90ca2fddda713645e9c1621e346d73f1dc85ea1
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Ubuntu 23.10 introduced new apparmor features and those prevent bitbake
to work correctly until a apparmor configuration file is installed.
Task-number: QTBUG-137321
Change-Id: Ib3f5faae07ea116012b1c66554211c53ca0e77e7
Reviewed-by: Toni Saario <toni.saario@qt.io>
This is needed for the selenium tests in qtdeclarative.
Change-Id: Iaca14244cd42c8b93150b48d6f37c647a2fd7d34
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
The toolchain is x86_64 only, which trips up xcodebuild if Rosetta2
is not installed: https://github.com/swiftlang/swift-build/issues/836
We don't have any CI configurations that build QNX on macOS, so we
don't need to install it.
Pick-to: 6.10 6.8 6.5
Change-Id: I8714438c6373e613f28f67b48d2f4f78a723bc9d
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Provision started to fail in python2 installation.
Task-number: QTQAINFRA-7459
Pick-to: 6.10 6.8 6.5
Change-Id: I3059615e8469bf935031791fa826452e01f4f972
Reviewed-by: Simo Fält <simo.falt@qt.io>
to follow the syntax like others.
Pick-to: 6.10 6.8
Change-Id: I64ce1b62d6a1caace624acd36c17be02005156c5
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
The directory and file did not exist in cache. Added them and this
change sets versioning to the nuget file name in cache.
Pick-to: 6.10
Task-number: QTQAINFRA-7264
Task-number: QTQAINFRA-7265
Change-Id: I4cf7ce1b547bd8cd4272a981de6845c06a4d1d79
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
This patch introduces 16KB page size support for Windows
host to do Qt for Android build.
Currently Windows only builds FFmpeg on armeabi-v7a ABI.
32-bit ABI's like armeabi-v7a do not support 16KB page
sizes so the build is done for 4KB page size.
Amends ce488ecbc125cb3484f1cbed592ac9e28867eb66
Task-number: QTBUG-139762
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: Ife7d56dd4a9f6d2892127571cab616b3f861dee6
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
This patch adds needed linker flags for FFmpeg Android
compilation to get FFmpeg binary to be compliant for
16KB page size. 16KB page size is compliant with 4KB
page size.
This patch updates Android OpenSSL to be version 3.0.7,
which is build with two NDK's: NDK27c and NDK29-beta2.
Both with 16KB page size support. They are build with https://github.com/KDAB/android_openssl/pull/69
just changing OpenSSL version from 3.1.1 to 3.0.7 and
NDK version from 25.2.9519653 to 27.2.12479018 (27c) and
another build with 29.0.13599879 (beta2). The both build
artefacts are added to CI-files to be usable.
As the 16KB page size is applicable only to 64-bit ABI's
this patch adds the variable to 90-install-ffmpeg.sh files
for android-x86_64 and android-arm64.
Change is picked to all branches using Android 15 or newer
as Android 15 introduced the 16KB page size support.
Fixes: QTBUG-139762
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I50bab81b97dad3e9d8c1e834c1928949d1e19687
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
The previous comment referenced a specific bug report but didn't
clearly explain the intent. Replace it with a more general note
clarifying that comment reflow is disabled.
Task-number: QTCREATORBUG-30304
Pick-to: 6.5 6.8 6.9 6.10
Change-Id: I963a3585a20e089df5e5bf71b638e9fc4b15542f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Related to 33dd0de8fb51bb83230b8c2524d5aae28ffc799b
Task-number: QTBUG-138144
Change-Id: I2aa4a67f8c14de6645f5e821d269474646e616f3
Reviewed-by: Toni Saario <toni.saario@qt.io>
This causes issues with incorrect indentation of comments, as explained
in the linked bug report.
Task-number: QTCREATORBUG-30304
Pick-to: 6.5 6.8 6.9 6.10
Change-Id: I6951bc7bf42990b8671cf99b04b8ca7bed1d24cb
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Update also Xcode to 26 official release
Task-number: QTQAINFRA-7196
Change-Id: I3549f0b5e7a153cb2728a66a7d69ab4378e0acb6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Brew install started to fail on older macos arm versions. Getting
rid of all brew install to avoid future problems with it.
Task-number: QTAINFRA-7408
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I22eddfad1f49b0814841a5d554100fdffd329593
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
The release config was replaced with rhel 9.2. There is no need
to export 8.10 artifacts anymore.
Pick-to: 6.10
Change-Id: I64fe163a1ab22f4275a8c449f18b3c51d71f8633
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Set Android 16 to use the _LATEST NDK instead, and create nightly
Android targets that use the _PREVIEW NDK.
Task-number: QTQAINFRA-7290
Task-number: QTQAINFRA-7291
Change-Id: I13688d2c624ba985b5d1fa7a62a2617844dfb9e2
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
This patch introduces preview NDK. Environment variables related to
preview NDK's are marked with _PREVIEW. The patch introduces NDK
29.0.13599879-beta2 as first _PREVIEW NDK. This preview NDK will be
first used in insignificant platforms Android 16.
Task-number: QTQAINFRA-7290
Fixes: QTQAINFRA-7291
Change-Id: Id093b8f71970f77409bd805d6d1d153f47ade762
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
CI configs for new Qt on board repo.
Task-number: QTBUG-139550
Change-Id: I51a4ecf78088557a53a6754c0bcd661a1165b87f
Reviewed-by: Toni Saario <toni.saario@qt.io>
Update QR rule set and add user name mapping into email to enable
erosion notification.
Task-number: QTQAINFRA-7222
Change-Id: I98fa2f278c3fea7dde61477841ef03ce10223d58
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
After swapping the packaging node from x86_64 to arm64 the
default python got downgraded from 3.11 to 3.9.
Pick-to: 6.10
Change-Id: Iea65e3c3d959c22e1a12d2a4f12ba466de4dbf24
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
We provide qtwasmserver.py when running the selenium tests,
but the dependencies of it must be installed.
Change-Id: Ib12ff04ec6bed28e44b7b2517339669fde9f256a
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
We install the new driver alongside the old one,
to make sure that existing builds work unmodified.
The new chromedriver is needed for jspi to work.
We set environment variables:
-- for existing builds
BROWSER_FOR_WASM
CHROMEDRIVER_PATH
-- for new builds
WASM_BROWSER_JSPI
WASM_BROWSER_JSPI_ARGS
WASM_CHROMEDRIVER_PATH_JSPI
WASM_CHROMEDRIVER_PATH_JSPI_ARGS
Change-Id: Ia83d639ea2daf34cf44bd72bae455211fd64a441
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Invoke-NMake helper temporarily clears MAKE flags, such as
MAKEFLAGS='-j8', to prevent errors from GNU-style flags and to reduce
flakiness with NMAKE.
The helper is used to build zlib and to prevent:
error U1065: invalid option '-'
Pick-to: 6.10 6.9 6.8 6.5
Task-number: QTQAINFRA-7363
Change-Id: Ia80216677eba6fd8f8364741b6999e6155d678ab
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
This ensures that link-local IPv6 address is unique per
each VM.
Task-number: QTQAINFRA-7383
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I53434ec3a158cec09f03c96087a401ef05f47b86
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
libclang-v100-dyn.sh had the libclang version 10.0 hard coded in the
file name for the Windows scripts. All local provisioning scripts
calling the latter also had the same version hard coded in their
respective filenames. libclang-v100-dyn.sh also sets the version to be
downloaded in a local variable
There is a mismatch between file names and actually installed version
when the download version is modified.
Remote version from common installer and related local scripts.
Change-Id: I81773ff5a834b6f396ce17af93c6510991de129a
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
With possibility to extend other drivers's versions into log
Task-number: QTQAINFRA-7168
Pick-to: 6.10 6.9 6.8
Change-Id: Ib10887fb904a75ccbb91bef2e9be0e83625da784
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Target jammy-arm64-debian-pkg-packaging fails in
waitLoop function, which is also used by Ubuntu platforms.
Fix by extending wait loop for lock paths:
- /var/lib/dpkg/lock
- /var/lib/apt/lists/lock (new)
Task-number: QTQAINFRA-7361
Change-Id: If8d5eacaeb72ea6a36496093bc5c248f61997afb
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
This patch updates the fully booted check for Android.
Old logic used init.svc.bootanim property and it's status
"stopped", but since Android 16 forward the status is kept
empty "" if "-no-boot-anim" emulator startup parameter is used.
The new logic simplifies old and relies only to two values:
sys.boot_completed and dev.bootcomplete. These work similary
from Android 9 to 16.
Task-number: QTQAINFRA-7299
Task-number: QTQAINFRA-7298
Pick-to: 6.10 6.9 6.8
Change-Id: I62efb0b05cd9792f92040dcb98a37f4bf14022e6
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Libclang dyn >= 14 is needed e.g. for Squish.
As a drive-by, optimize shell script.
Bump version from 10 to 20.1.3.
Task-number: QTQAINFRA-7353
Change-Id: Iba3584c056c8f06b4efe19ac42d030b4a4049d34
Reviewed-by: Andreas Muss <andreas.muss@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Stefan Gehn <stefan.gehn@qt.io>
The fetching from 3rd party repos has become very flaky.
To avoid mirrors throttling us and other flaky issues cache
the dependencies and set -o to enable offline mode.
This seems to also speed up the step considerably.
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I01663e60baa44ab828d8880ab8b346034a50b60e
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Ubuntu 24.04 installs Wayland by default. The X11 version is known to
be problematic, which is why ubuntu-24.04-x64-documentation-x11-tests
has been marked InsignificantTests.
Extend this to ubuntu-24.04-x64-x11-tests.
Task-number: QTBUG-137909
Task-number: QTBUG-136092
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: I38f4bb5ca59255870dc6dbbb69e9ab339c679ddc
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
At the time of writing, homebrew ships patchelf version 0.18.0. This
version of patchelf has a bug specific to Androd binaries. The macOS
14 arm64 host currently uses this version of patchelf. This causes an
issue during runtime linking in Qt Multimedia applications on Android.
This patch modifies the macOS 14 arm64 host to use patchelf v0.17.2
that we compile from source. It also adds warnings to the provisioning
log should someone try to use v0.18.0 in the future.
Fixes: QTBUG-136930
Pick-to: 6.10 6.9 6.8
Change-Id: Id66b560e6a1d4300a54017e9c3366720dc291944
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
This patch amends 133de012af95507ac485845d8de8f58da005df64.
The previous patch introduced a regression where the newer build paths
were not being passed correctly into 'fix_ffmpeg_dependencies.sh'
during FFmpeg Android builds.
This patch introduces a common function to resolve the installation
directory, which is then used both during compilation and during
FFmpeg patching.
Additionally, it introduces some basic error-handling when running
'fix_ffmpeg_dependencies.sh' so that we can catch this issue in
integration, in the future.
Pick-to: 6.10
Fixes: QTBUG-138615
Change-Id: I195ebd3034a3184bad32e75916a41a20838b2db1
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
coin/provisioning/common/unix/libclang-v100-dyn.sh had the libclang
version 10.0 hard coded in the filename.
All local provisioning scripts calling the latter also had the same
version hard coded in their respective filenames.
At the same time coin/provisioning/common/unix/libclang-v100-dyn.sh
sets the version to be downloaded in a local variable.
When the download version is bumped, there is a mismatch between file
names and actually installed version.
Remove version from common installer and related local scripts.
Task-number: QTQAINFRA-7353
Change-Id: I7489489056e611d6ab84862dafbe48e4e2532780
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Installing directly from rb file no longer supported by
homebrew without HOMEBREW_DEVELOPER set after https://github.com/Homebrew/brew/pull/20414
was merged.
Create local tap for install to avoid need for homebrew developer mode.
Task-number: QTQAINFRA-7344
Change-Id: Id59af01875b16d1757b1dba36c2ba04bf973c212
Reviewed-by: Simo Fält <simo.falt@qt.io>
Stable is debian codename and the script was ran in Ubuntu, so it makes
me wonder how did this warm in the first place.
Change-Id: I6d907ce11d53aa498ea93522539891f38e7c8388
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Will also make glibc versions visible in Tools and Versions pages.
Task-number: QTQAINFRA-7333
Pick-to: 6.10 6.9 6.8 6.5
Change-Id: Ic0274822f326e4b23ed423d8da20002bc6d4f20a
Reviewed-by: Simo Fält <simo.falt@qt.io>
After shocking realization that build artifacts are mixed between
cross-compiled and native window arm builds for installer add missing qt-zlib config, so configs match better.
The -no-opengl mismatch is covered in different patch.
Any auto detected platform configs and features mismatch is unknown,
but let's do hope it works (as the final output is not covered by
single ci test).
Pick-to: 6.10 6.9
Task-number: QTBUG-138859
Change-Id: I03562f1b518cf711cee894b5cf3f4512e2521f77
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
OpenCL, OpenGL, and Vulkan Compatibility pack has been
installed to WoA 11 23h2 Tier1 images to support OpenGL
usage with these modules:
- QtBase
- QtGui
- QtWidgets
- QtDeclarative
- QtQuick
- Qt3D
Enabling OpenGL by removing tags:
-no-opengl
-no-feature-run-opengl-tests
Introduce new cross-compile build target for WoA 11 23h2
- windows-11_24H2-msvc2022-arm64-23H2
- Which has OpenGL enabled
- Should not be used with WoA 11 22h2 as it doesn't have OpenGL
New build will be used only for WoA 11 23h2 tests
- windows-11-x86_64-arm64-tests-23H2
- Which has OpenGL tests enabled
Names for these build and test targets will be renamed later when
WoA 11 23h2 replaces WoA 11 22h2 by removing '-23H2' suffix from names.
Task-number: QTQAINFRA-6973
Task-number: QTQAINFRA-6109
Task-number: QTBUG-126030
Pick-to: 6.10 6.9 6.9.2
Change-Id: Ifa29d93d996ac4884a86835328170d857bf91f33
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
the gstreamer-1.20-plugin-openh264 package seems to be outdated, as
opensuse's openh264 repo seems to have moved to gstreamer-1.24 and
renamed the package to gstreamer-plugin-openh264:
https://codecs.opensuse.org/openh264/openSUSE_Leap/x86_64/
This partially reverts 69f651b01794c93da20894a7ea5728a332903850.
Pick-to: 6.10 6.9
Change-Id: Ie159ec48f83a7b7d10671d2200f7eb4fbcf93db3
Reviewed-by: Lars Sutterud <lars.sutterud@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
TLDR: We need force cross-build the compilation of WebEngine tools
when cross-compiling for Windows ARM64, to ensure that native
development on Windows ARM64 hosts can use the WebEngine tools.
Long version:
We have two packaging configurations for Windows ARM64.
1) we cross-compile 'Windows On Arm' Qt on an x64 Windows host.
This configuration includes the WoA WebEngine libraries, but not
the tools.
2) we build Windows on Arm Qt on a native arm64 windows host. This
currently lacks the WebEngine libraries and tools, because it takes
too much time to build them on native arm hosts in the CI.
When installing WoA on a Windows host using the Qt online
installer, there are three possible scenarios:
a) Running the x64 installer on an x64 Windows host, to be
able to cross-build projects targeting Windows on Arm.
This will install an x64 MSVC host qt, and an arm64 WoA target Qt
from case '1' above.
The x64 qt includes the WebEngine libraries and tools, and the WoA
qt only includes the libraries, but not the tools.
For WoA project builds, the build system will use the
x64 host tools. This works fine.
b) Running the x64 installer on an arm64 Windows host.
This is very similar to the 'a' case, except it involves emulation
of the x64 host tools.
This will install an x64 MSVC host qt, and an arm64 WoA target Qt.
The x64 qt includes the WebEngine libraries and tools, and the WoA
qt only includes the libraries, but not the tools.
For WoA project builds, the build system will use the
x64 host tools using /emulation/. This works fine, as long as x64
emulation is available and enabled.
c) Running the arm64 installer on an arm64 Windows host.
This will install the native arm64 WoA Qt from case '2' above.
The arm64 qt includes arm libraries and tools from case '2', but
that lacks the WebEngine libraries and tools.
So the installer will also install the cross-compiled arm64
WebEngine libraries from case '1', but not the WebEngine tools
(e.g. dict conversion tool).
To ensure that scenario 'c' also gets WebEngine tools, we need to
force build (cross-compile) the tools in scenario '1'.
This patch achieves that by passing -DQT_FORCE_BUILD_TOOLS=ON ,
similar how we do it for yocto builds.
Pick-to: 6.9 6.10
Task-number: QTBUG-138859
Change-Id: I8270731a4afef7ab9af8df63326fb838e02968e8
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
So it can be used during cross-compilation of arm64 packages.
To ensure the env variable set does not conflict with the x86_64
version, the env variable is suffixed with "arm64".
Pick-to: 6.9 6.10
Change-Id: I117f6c4a8431058b9af22390942539a49c632d6a
Reviewed-by: Toni Saario <toni.saario@qt.io>
So that we get complete test results for all failing tests.
Change-Id: I83288f7b8865d494402ada8c8401bce932ac2510
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Effectively insignificant for now, due to COIN_CTEST_IGNORE_EXIT_CODE.
Change-Id: I78a4e37c833c30d63da69da6b3d18e40a22da621
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
This makes configuring nightlies more simple and its results more
readable.
Pick-to: 6.10 6.9 6.8 6.5
Task-number: QTQAINFRA-5945
Task-number: QTQAINFRA-7069
Change-Id: I89ca6b65fbdfcd52dd607c008174e446dc6925f4
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
This patch introduces support for building FFmpeg for Android ARMv7
on Unix hosts.
Pick-to: 6.10 6.9 6.8
Change-Id: I21affa1137cb4b3aa3a5b9cfd5c71e755684db9c
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
In preparation for generating a CycloneDX SBOM for Qt framework,
install the cyclonedx-python-lib package which will be a required
dependency for the SBOM generation process (assuming CycloneDX
generation feature is enabled in the build).
Pick-to: 6.8 6.9 6.10
Task-number: QTBUG-129598
Change-Id: Iacaeb22aa568cecd6ffbe2ece30de953e37c5cf2
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Bullseye-backports has reached end-of-life and is no longer
supported or updated.
Pick-to: 6.8 6.9 6.10
Change-Id: If154155507e159333c0d0b638fc6910b1814665a
Reviewed-by: Patrik Teivonen <patrik.teivonen@qt.io>
Added CI configs for QNX8.0. Toolchain updated to latest version.
Qemu build files updated for new toolchain.
Task-number: QTBUG-131708
Change-Id: I25f5386c85f6bc2f87c69bf820d1bacc0ebd2a47
Reviewed-by: Simo Fält <simo.falt@qt.io>
It's not included by default in Xcode 26.
Change-Id: Ie1e11bdeba18c4ee1e00132fc4bc075b8218e1fc
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Many of the system tools seems to be written in Swift now, which results
in a warning when running them:
swift runtime: backtrace-on-crash is not supported for privileged
executables
Luckily we can silence this warning via 'warnings=suppressed'.
See https://forums.swift.org/t/suppressing-backtrace-warnings/79235
Change-Id: I09b97553d996269fd4c9d23bf52a319bf964c833
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
New targets:
- windows-11_23h2-arm64-msvc2022
- windows-11-x86_64-arm64-tests-23H2
With latest versions
- Visual Studio Professional 2022: 17.14.7
- MSVC: 14.44.35207
OpenGL is still disabled, but 'OpenCL, OpenGL, and Vulkan
Compatibility pack' has been installed to WoA 11 23h2 Tier1
image to support OpenGL usage with QtWebengine, Qt3D etc.
These targets will be added later:
- windows-11_23h2-arm64-msvc2022-minimal-static-test
- Windows-MSVC2022-arm64_Static-23H2
[CI Platforms]
Task-number: QTQAINFRA-6973
Change-Id: I049f84ad7df91cd62e7f40044d8ef40705ac34e1
Reviewed-by: Simo Fält <simo.falt@qt.io>
Enable testing using QT_USE_ANDROID_MODERN_BUNDLE on the Android
RHEL x86_64 platform.
Change-Id: I1c31aad313b93ae454068bd1315d945b2ced227b
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Tool allows managing modern android bundles. Provision it on RHEL
8.10 platform - the one we use for the Qt for Android x86_64 builds.
Change-Id: Ia1a7bb077e9dc0afc95ad92cbd85c96724ab0ced
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
The option is mature enough to attempt adding full support in CI.
Enable it for CI testing on Android x86 RHEL machine.
Change-Id: Ib0ba96f7a30b10be64bc6df44353e10c090ec3ad
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
If used it might over write package that we want to release.
Pick-to: 6.8 6.9 6.10
Change-Id: I8c0403065cff7354699df6f4d16b5a8125277195
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Set the VCPKG_INSTALLED_DIR, VCPKG_HOST_TRIPLET, VCPGK_TARGET_TRIPLET
environment variables after vcpkg ports installation. These variables
will be used when building Qt modules to setup the correct build
environment.
(This commit extends original f41e72adc6)
Change-Id: I7956fc828d6c490f19bfa5222d7db29d1550687e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
The flite plugin for QtSpeech wasn't tested on CI as the development
files weren't installed.
Pick-to: 6.8 6.9 6.10
Change-Id: Ieefe42f67009b99cc95f54567f224972d12c1538
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
Files were prebuild by cloning emsdk repo in their respective VM
produced by Coin provisioning, and running './emsdk install 4.0.7' and
'./emsdk activate 4.0.7' in macOS 15 and OpenSUSE 15.6. And just
'./emsdk install 4.0.7' in Windows 10.
This amends 5510396f4d9f175e7f61a953ea0722ce57d059d4
Pick-to: 6.10
Task-number: COIN-1232
Change-Id: Ifa768173093c4b6b90599d0fff8b34a1db8b1bbc
Reviewed-by: Lorn Potter <lorn.potter@qt.io>
Emscripten 4.0.7 requires Python +3.8, OpenSUSE does have Python 3.11
but its path is only set to PYTHON3_EXECUTABLE envvar defined in
08-pythondev.sh.
OpenSUSE 15.6 comes with Python 3.6.15 which the previous emscripten
3.1.70 used.
Pick-to: 6.10
Change-Id: Ied63ace32b7fb252d124ad447bc56dba353ff403
Reviewed-by: Lorn Potter <lorn.potter@qt.io>
Native WoA builds are done with -no-opengl switch,
therefore native test coin nodes do not need to have
openglsw installed.
(ms-windows-store://pdp/?productid=9NQPSL29BFFF)
However, when trying to run cross compiled WoA on native
test nodes this ends up with:
tst_QOpenGLWindow::create() Failed to load opengl32sw (%1 is not a valid
tst_QOpenGLWindow::create() Failed to load and resolve WGL/OpenGL
function
However, adding no-opengl flag would affect our release binaries
and would remove qt3d and qtdatavisualisation from packaging.
Use run-opengl-test feature instead.
Pick-to: 6.10
Task-number: COIN-1211
Change-Id: Id21051bc69e431a9d3773c4b4e0c8c2e63315b42
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This change removes 'InsignificantTests' from all 24H2 targets and also
adds 'Packaging' to 24H2 targets that have 'Packaging' in equivalent
23H2 targets. [CI Platforms]
Pick-to: 6.10
Task-number: QTQAINFRA-6734
Change-Id: I6056ddafcb351875d297ab52565e6b20ba75bb2b
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This path will be used as CMAKE_MAKE_PROGRAM explicitly.
Change-Id: Ic15253f837b798c468f782ad4116d1ba4cc7c934
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Ubuntu 24.04 GNOME X11 still has too many flaky issues in our
CI, which blocks integrations too much.
This reverts commit 365860ce42.
Pick-to: 6.10 6.9 6.8
Task-number: QTBUG-137909
Change-Id: I058c5d9c5e67bbea4a5ea88a915270ef00110d7a
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Ubuntu 24.04 GNOME X11 still has too many flaky issues in our
CI, which blocks integrations too much.
This reverts commit e2e25e8a66.
Pick-to: 6.10 6.9 6.8
Task-number: QTBUG-137909
Change-Id: Ifcb56d0172b7bd0e66d1fe6e764ea6643b8e4834
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Ubuntu 24.04 GNOME X11 still has too many flaky issues in our
CI, which blocks integrations too much.
This reverts commit 6db000ab67.
Pick-to: 6.10 6.9 6.8
Task-number: QTBUG-137909
Change-Id: Iec2323da11354b3176c2428e441965b77fd768a1
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Previous patch 75fea893b1 introduced
a small bug where multiple nightly builds of FFmpeg were being
outputted into the same directory, effectively causing them to
overwrite each other.
This patch gives the nightly builds their own subfolder for outputted
library files.
Pick-to: 6.10
Task-number: QTQAINFRA-7069
Change-Id: I5f7e111708aecedd2817888948b77b8163f0452d
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Set the latest NDK envvars for android-quick-minimal and Android 16.
Pick-to: 6.10
Task-number: QTQAINFRA-7069
Change-Id: Ib533eeb08a31437967485cc35f40e434c2880108
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Bug reports from the nightly target are updated to the ticket.
Task-number: QTQAINFRA-5945
Change-Id: I9e0622b3da4909dc72af1da8c0deb260f6cd5a3e
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Multiple Android NDKs are installed in provisoning. FFmpeg build uses
NDK in its build process for Android, so this change makes provisioning
build multiple Android FFmpeg builds, so each Android nightly can use a
FFmpeg build where its corresponding NDK version was used.
Pick-to: 6.10
Task-number: QTQAINFRA-7069
Change-Id: Ie4457c87b7b75e0c711a76bd8170e718cbda445d
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
This change makes macOS provisioning also install older NDKs for
Android (if set), which will be used in nightly targets.
Pick-to: 6.10
Task-number: QTQAINFRA-7069
Change-Id: Ie176c5ea69a1398afa69691ad6f37b7af2f66dfc
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
This change makes provisioning also install older NDKs for Android,
which will be used in nightly targets.
Pick-to: 6.10
Task-number: QTQAINFRA-7069
Change-Id: Ia8695383e94df282822da9019c33f1004a879bf6
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
When you use the helper to set an envvar in provisioning, you can not
reference the machine scoped variable in a later .ps1 script in the same
provisoning run using the direct/static reference '$env:NAME', instead
you have to use a more verbose method with e.g. 'Get-Item' cmdlet and/or
set the envvar additionally to the process scope yourself.
This change makes the helper also add process scope to the envvars, this
way envvars set in provisioning can be simply referenced with
'$env:NAME' in later provisioning scripts, which is consistent with the
way you can use SetEnvVar helper in Unix and directly reference the
envvar with just its variable name in later .sh scripts.
This change also removes duplicate local scope envvar definitions now
that Set-EnvironmentVariable helper does it.
Pick-to: 6.10
Change-Id: I804fa8f8dfce742a84e8b4bc077f466820589f7e
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
It's easier to see what submodules fail to synchronize and make
the actions on them, rather than looking into full log.
Change-Id: I98bb3b42783e431a53e536e8104a460ba6bc63e9
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Disabling HarfBuzz causes tst_qglyphrun and tst_qfontdatabase to fail.
Also without HarfBuzz, tst_qxmlstream is too slow and always times out.
Task-number: QTBUG-137809
Change-Id: I5794c7f2f3b371f80dcfbb9d53f95572d874bf2a
Reviewed-by: Toni Saario <toni.saario@qt.io>
Qt Multimedia needs correct permissions set in order to run automated
tests. This is currently being done on our macOS ARM targets, but not
x86 targets.
This patch runs the scripts on relevant x86 targets.
Pick-to: 6.10 6.9 6.8
Task-number: QTBUG-137582
Change-Id: Ia13b8f190938b44b8a14fc8c796912910a8d6d88
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This script has previously failed under some configurations, while
also failing to stop provisioning.
This patch enables fast-fail behavior, catches potential issues with
missing executables early with a descriptive error message. This
should allow us to detect if the required packages are missing
in the future, and stop provisioning accordingly.
This patch also installs the necessary packages on the relevant
CI build targets.
Task-number: QTBUG-136930
Pick-to: 6.10 6.9 6.8
Change-Id: I7c781264ad67508d19fd44556a9caf0f201638d4
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
with Qt Wayland QPA/client were moved into qtbase.
[CI Platforms]
Pick-to: 6.10
Change-Id: Ia268f974784c8f2cc0b4245041801a6442eaabce
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Large Send Offload (LSO) was originally disabled because it caused
deterioration in network throughput but the cause of that deterioration
is now fixed in infra and LSO should be enabled back as it improves
network performance. LSO is enabled in Windows by default.
Pick-to: 6.10 6.9 6.8 6.5
Task-number: QTQAINFRA-7236
Change-Id: I243632d958007142792df0cbd9a341fb2b86df69
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
We are going to run test suite twice with qtwebview, with
different backends on windows. Therefore install
webview2 to build plugin also on other nodes.
Task-number: QTBUG-128447
Task-number: QTBUG-75747
Pick-to: 6.10
Change-Id: I88da09eb9bf9e58f630ed65071d33bd4a89ac094
Reviewed-by: Toni Saario <toni.saario@qt.io>
This makes the qemu virtualize the target rather than emulating
it. Virtualization allows few times better performance in tests.
Pick-to: 6.9 6.10
Change-Id: I7a5f7e3e2b04c52034325459ef05bfc0dce5d0b7
Reviewed-by: Simo Fält <simo.falt@qt.io>
Moved the name construction to a dedicated function so that it can be
reused in `call_cmake_in_qt_build_dir`
Change-Id: Iace4130e79cd08f622e762e2861948db5f2bd972
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
After all repos are configured and built, do another round of
reconfigure.
This can catch issues in the find_package of plugins. E.g. when running
the builds for qtbase -> qtdeclarative -> qtmultimedia, during the
first pass qtdeclarative is reconfigured without any plugins present,
but in the second pass additional plugins will be added in the
`find_package` chain.
Change-Id: I298492463e38e57f250ee22f1e8c7f880ce9940a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This is enabled by default and replaces the hard-coded qtdeclarative
dependencies.
Change-Id: I58dbf4f801aeacf73a0f38a5cbdb856418bddae4
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
If a list is provided to `OUTPUT_EXCLUDED_OPTIONAL_DEPS` for
`qt_internal_*_module_dependencies`, all optional dependencies that were
not marked as required when resolving the requested modules are saved to
the list.
Change-Id: I2c239a79f483c78af0d649c5b437db03d09eea57
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
When using local sources, the sync step is replaced with setting up
symlinks to the current source folders.
Change-Id: I16500c130b35b962e9d0398498e0c83d71bdc149
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Also `configure_qt` did not have `CMAKE_GENERATOR` defined in the args.
Change-Id: I84a2aed1b992d8169d92fe727094708d8bd447b0
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Allow to define variables used in `ConfigureBuildQt` at configure time.
The preference is local var -> environment var -> cache var -> default.
Change-Id: Ib4bc4f31b3764a6c734e24562d18418560c3a8a8
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This script requires that we have setup specific environment variables
ahead of time. If they are missing, we are prone to receiving
non-descriptive error messages.
This patch adds checks for the required environment variables, and
gives useful error messages if they are not set correctly.
Pick-to: 6.10 6.9 6.8
Change-Id: I0cfb99187f303b22dbdd46a7a848b85dbf571aad
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
This patch adds an optional parameter to the provisioning script
'install-ffmpeg-ios.sh', allowing us to override the output directory
for which the finalized library is installed.
This is particularly useful for local builds, where we often need
multiple different versions of FFmpeg installed, for different Qt
versions.
This patch has no impact for existing coin workflows.
Pick-to: 6.10 6.9 6.8
Change-Id: Ib0764eb29b84ae8badcfb48424f86316f3b2b650
Reviewed-by: Simo Fält <simo.falt@qt.io>
In the provisioning script 'install-ffmpeg-ios.sh', we have a variable
'prefix' controlling where to install the finalized library. The value
of this prefix is sometimes hardcoded into some of the temporary build
directories, making the script break if we actually modify the 'prefix'
variable. This means we currently cannot easily change the output
directory.
This patch modifies 'install-ffmpeg-ios.sh' so that the 'prefix' is
applied consistently throughout the script, allowing us to change
the output directory in the future.
Pick-to: 6.10 6.9 6.8
Change-Id: I3458984aa22f8c82ed4d0bfac8ac8e71356e8789
Reviewed-by: Simo Fält <simo.falt@qt.io>
This patch adds an optional parameter to the provisioning script
'install-ffmpeg-macos.sh', allowing us to override the output directory
for which the finalized library is installed.
This is particularly useful for local builds, where we often need
multiple different versions of FFmpeg installed, for different Qt
versions.
This patch has no impact for existing coin workflows.
Pick-to: 6.10 6.9 6.8
Change-Id: If31922e931db19ab189850b975ce0131a64321b4
Reviewed-by: Simo Fält <simo.falt@qt.io>
Set the VCPKG_INSTALLED_DIR, VCPKG_HOST_TRIPLET, VCPGK_TARGET_TRIPLET
environment variables after vcpkg ports installation. These variables
will be used when building Qt modules to setup the correct build
environment.
Change-Id: I3a625f4ef089b5da676b96a5bebaacfb09112ee4
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
VxWorks version update to 25.03 from 24.03.
Removed xf86drm patch.
Pick-to: 6.10
Change-Id: Idd5930fae79c68bc6c14cba5245404de9e851ef8
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Our CI does not need some mDNS multicast services by Windows and they
are spammed by Windows VMs in network with mdns.mcast.net requests.
Pick-to: 6.10 6.8 6.5
Task-number: QTQAINFRA-6761
Change-Id: Ie676f94b81e7281ec84d9fbbfa2fd7f1d28dfbca
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Prefer static linking for now, to bypass the deployment issues.
We will switch to dynamic libraries once online installer deliver the
vcpkg installed libraries.
Change-Id: Iac9a888237742ae886df8fb9b742b45f4727e28a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Provision protobuf and gRPC packages using vcpkg.
Change-Id: I4d834236408938e228fb0721474edfad946a8dc8
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Add a script to download windows app sdk and webview2 to be used for CI
This script downloads NUGET, then tries to download Windows App SDK,
WebView2 and CppWinRT libraries and sets appropriate environment paths
to be used later by webview2 plugin.
Task-number: QTBUG-128447
Task-number: QTBUG-75747
Pick-to: 6.10
Change-Id: I1b7ff29b1870d0445034590d01caa503c9e3ae0f
Reviewed-by: Toni Saario <toni.saario@qt.io>
It's needed for static linking with static xcb libs.
xcb-image depends on xcb_aux.h which is in xcb-util package.
Debian-11.6, Ubuntu, openSUSE, SLES already have it.
Pick-to: 6.10 6.9 6.8
Task-number: QTBUG-137004
Change-Id: Iffb9ab7d62a2bea3cb8e27354d25957c49911859
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Commit b0e38f6ace22f9e8ff8dbbe16e8e1cdf8e75648c introduces a new
QML tree model class and the feature definition to go with it. This
model is not needed in the minimal configuration => disable it.
Amends: 30aadf11aa
Task-number: QTBUG-134299
Change-Id: Ie0adcc17f8cecd02c1c5c8bb47f8a085c029539a
Reviewed-by: Mate Barany <mate.barany@qt.io>
The clipboard is unconditionally needed by recent changes to
(qtbase) qnsview_complextext.mm (QTBUG-126238). After discussion
with Tor Arne, decided to drop the clipboard size optimization.
Its size impact is not large and the platform is a desktop
plaform where size is typically not so critical.
Amends: 30aadf11aa
Task-number: QTBUG-134299
Change-Id: I342cdd8cd37e8a54c1f70fda680ca6e9743ed2d5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
We already have same config in u2404.
Replace the usage of ubuntu-22.04-developer-build with u2404 one.
Pick-to: 6.10 6.9 6.8
Task-number: QTQAINFRA-7146
Change-Id: Ie304b3abbe6da9b203c1ce7eec45d7f9254a7392
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
We already have two tests on u2404.
Replace the usage of ubuntu-22.04-developer-build-x11-tests with u2404
one.
Pick-to: 6.10 6.9 6.8
Task-number: QTQAINFRA-7146
Change-Id: Ib3b1888e1bbb70637432ac70f6116b723e71320d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Qt Wayland client was moved into qtbase. We will try to enable
them from qtbase to all modules in the future in dev. For 6.9
and 6.8, they are InsignificantTests, waste some CI resources.
Perhaps we can fix them later, but I don't think it's worthy.
Pick-to: 6.10 6.9 6.8
Change-Id: I0f26312284bec4f02da915e829d3a68aac820ceb
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This commit adds size-optimized Qt configuration for Qt
Quick apps. By having a CI configuration helps in ensuring
that the configuration doesn't break over time.
The goal of the configurations is to provide a size-optimized
build while typical Quick applications should still work. The
latter point was checked by checking several example apps:
Coffeemachine, Calqlatr, Gallery, Colorpalette, and few
smaller test applications. Space-savings are in 60%
ballpark when comparing optimized with non-optimized
static builds. Optimizations also include stripping the
binaries where applicable.
Tested platforms: iOS, macOS, Windows, Linux, WebAssembly
and Android. Autotests are compiled and run only on one
platform (macOS) to preserve CI compute. Configurations
are 'Insignificant' to avoid interruptions - this should
be changed once proven stable.
Notably all except Android builds are static builds;
static build optimizations (LTO in particular) are very
powerful in optimizing size. Qt for Android OTOH
does not support static builds.
There are more features and options that user can disable
for further space savings. Prior art for Linux show-cases
taking the optimizations further (QTBUG-117638).
This commit is preceded by numerous compilation fixes to
qtbase and qtdeclarative (now merged).
Fixes: QTBUG-134299
Change-Id: Iaec0aea3e9d475220161ca8d00f0ec15eaa637a9
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
The Gnome session type boots into the autostart user's Activty Overview.
This overview doesn't allow window activation and fails tst_selftest.
This can't be prevented with gnome-settings or gnome-tweaks.
Add pre-provisioning instruction to select Gnome Classic session type,
which boots into the normal desktop mode.
Fixes: QTBUG-136467
Pick-to: 6.10 6.9
Change-Id: Id189dd948a9a912179e0c86a6cf56f4a2417dfce
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
gcc10 was removed from official and SUSE community repositories for SP6.
The missing gcc10 is blocking provisioning so install gcc11 instead. SP5
still has gcc10 and it is active in dev branch.
Pick-to: 6.10 6.9
Task-number: QTQAINFRA-7187
Change-Id: Ie7c9f2175553c29654cf5b358ead6dd76e635d60
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
We used to build the documentation with these configurations but they
changed to developer-builds and the documentation was moved to a
separate configurations (documentation-warnings, offline-documentation).
We added those configurations but ignored the developer-builds, and at
the moment they are not doing anything expect wasting resources when
acquiring VMs, so let's get rid of them.
Pick-to: 6.10 6.9
Fixes: QAA-2976
Change-Id: Ia9509e43aec2974bae098de8a2d13ac9d29e2fad
Reviewed-by: Petri Virkkunen <petri.virkkunen@qt.io>
Enables WOA test running in webengine. Which is unable to
build the native WOA target.
Add 'fake' configure argument -corss-compiled to
so test instruction on native windows arm have
a chance to bailout (qquickeffect maker is never
cross-compiled)
Task-number: COIN-1211
Change-Id: Ie920f65f9ec260c0c1a7111e495fd9a86adee5f6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
In the provisioning script 'install-ffmpeg-macos.sh', we have a variable
'prefix' controlling where to install the finalized library. The value
of this prefix is sometimes hardcoded into some of the temporary build
directories, making the script break if we actually modify the 'prefix'
variable. This means we currently cannot easily change the output directory.
This patch modifies 'install-ffmpeg-macos.sh' so that the 'prefix' is
applied consistently throughout the script, allowing us to change
the output directory in the future.
Pick-to: 6.9 6.8
Change-Id: Id0b1bb23513b7bccf02f0c4073e4177f651792dd
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
This is needed for building cmdbridge for remote Linux support
in Qt Creator. This got lost for Linux/ARM prebuilt packages for
Qt Creator when moving from Debian/ARM to Ubuntu24/ARM.
Task-number: QTCREATORBUG-32928
Pick-to: 6.9 6.8
Change-Id: Ic993eaadacec21882e1e2f1b6e0d73bc4ffbf6d4
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Add a new nightly platform configuration to run qt5.git RunCMake
tests.
Currently this will test the init-repository script, and will also
attempt to build and install Qt in various configurations that
developers use locally.
Change-Id: I74e0befc76ef0702c9036d30c85b8cf16b0b98a3
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Coin CI only tests 'prefix' builds of Qt, because that's what we use
for packaging.
But many developers configure and build Qt in various ways which are
not covered by tests.
Introduce a new suite of RunCMake tests that configure and build Qt
in all the different permutations that we know people use.
This includes various combinations of:
- prefix vs no-prefix
- out-of-source vs in-source
- per-repo vs top-level
- building tests and examples in-tree vs out-of-tree
- building examples as in-tree vs external projects
- building more than one repo
The aim is to run all or some subset of these tests in a nightly Coin
CI run.
It can also be a useful way to test "risky" unmerged changes in an
automated way, instead of manually doing the various builds.
The current default set of repos that are built are:
qtbase, qtshadertools and qtdeclarative.
The submodules that are built can be controlled by setting various
cmake or env vars when configuring or running the test:
- QT_CI_BUILD_QT_SYNC_MODULE - the main repo that should be checked
out. Its dependencies will also be checked out, based on its
dependencies.yaml info.
- QT_CI_BUILD_QT_PIN_GIT_REF - the git sha1 or ref of the main repo
that should be checked out
- QT_CI_BUILD_QT_SKIP_SUBMODULES - a list of submodules that should be
skipped, can be useful to skip optional dependencies
- QT_CI_BUILD_QT_EXTRA_CHECKOUT_CHANGES - a list of gerrit commit
sha1s or refs for each submodule to be checked out to specifically.
- QT_CI_BUILD_QT_EXTRA_CHERRYPICK_CHANGES - a list of gerrit commit
sha1s or refs to be cherry-picked on top of whatever commits the
submodules were synced to.
- QT_CI_BUILD_QT_FILTER - a list of filters to include or exclude
test cases to run.
Sample usage:
mkdir build && cd build
cmake ~/qt5/tests/manual/RunCMake
# Run regular tests
ctest -V -R RunCMake.ConfigureBuildQt
# Skip some optional submodules of qtdeclarative
export QT_CI_BUILD_QT_SYNC_MODULE=qtdeclarative
export QT_CI_BUILD_QT_SKIP_SUBMODULES='qtimageformats,qtlanguageserver"
ctest -V -R RunCMake.ConfigureBuildQt
# Cherry-pick extra changes on top of the synced commits
# repos are split by '|', commits by ','
export QT_CI_BUILD_QT_EXTRA_CHERRYPICK_CHANGES='qtbase aaabbbccc|qtshadertools a12,b23,b45,refs/changes/57/628457/2'
ctest -V -R RunCMake.ConfigureBuildQt
# Checkout specific commits for each submodule
export QT_CI_BUILD_QT_EXTRA_CHECKOUT_CHANGES='qtbase refs/changes/54/634554/5|qtshadertools 3bb8a41c44fa69c30f6887685ad70ef7e84c10a6'
ctest -V -R RunCMake.ConfigureBuildQt
# Only run top-level no-prefix, but not in-source source builds
export QT_CI_BUILD_QT_FILTER='top_level,no_prefix,-per_repo,-in_source'
ctest -V -R RunCMake.ConfigureBuildQt
Change-Id: I355084081dd7b48cdf75c03eb001b64ab7ba96fb
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Cristian Le <cristian.le@qt.io>
We don't want Windows VMs to spam mDNS messages about optimizing
Windows updates, when the updates themselves are disabled.
Pick-to: 6.9 6.8
Task-number: QTQAINFRA-6761
Change-Id: I1452ebbb612f784c96f07de0a29cb2cfb54f1e75
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
The <Package>_ROOT should point to the package prefix, where
CMake should look for the respective cmake/, lib/cmake, and other
CMake package directories. Setting directly it to package path is
incorrect.
Pick-to: 6.8 6.9
Change-Id: Id8859c29da08144c60ed3d6301d2c65c8d602d1f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
We may read the installed package information from the 'vcpkg list'
command instead of parsing the vcpkg.json. Also instead of using
the jq as a parser, use the cmake script. This allows skipping the
jq installation.
Change-Id: Id3ace62f8f40ff1bd059878da3fd13e466861830
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Provision and run the test script on Windows in warn-only mode.
Task-number: QTQAINFRA-6796
Change-Id: I06fdfc44109017deb5eaacd3811930b98f1a10f7
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Virtio drivers were updated 0.1.204 -> 0.1.271 which seems to fix
network issues in CI. System OS name is also changed to 'WIN-23H2-X64-55' (15 character limit).
At the same time, 23h2 -54 began to receive a popup about incoming
Windows license expiration which was fixed by changing its ipk key in
-55.
Pick-to: 6.9 6.8
Task-number: QTQAINFRA-6761
Change-Id: Iace589156f878ec63e277ab5e30db3264fb29ebc
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
These modules build, but their tests do not. Remove tests from the
config to allow it to be blocking.
Change-Id: I5913835b7621494aa59671bb34b1faeaeaf3442c
Reviewed-by: Simo Fält <simo.falt@qt.io>
On iOS we no longer deploy FFmpeg .dylibs directly. As such, there is
no need to install the .dylibs during provisoning.
This patch removes this installation step during provisioning.
Pick-to: 6.9 6.8
Change-Id: I6f901113caca4b8d602490ba05db0c9dacb8f80d
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Which gets us Xcode 16, with the macOS 15 SDK.
Pick-to: 6.9
Change-Id: I3c7936885e97e479873c4d012adca0d67765c907
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Native WoA builds are done with -no-opengl switch,
therefore native test coin nodes do not need to have
openglsw installed.
(ms-windows-store://pdp/?productid=9NQPSL29BFFF)
However, when trying to run cross compiled WoA on native
test nodes this ends up with:
tst_QOpenGLWindow::create() Failed to load opengl32sw (%1 is not a valid
tst_QOpenGLWindow::create() Failed to load and resolve WGL/OpenGL
function
Use the same switch on cross compile WoA configuration.
Note this can have the impact on installer binaries.
Task-number: COIN-1211
Change-Id: I508587f25701990c438f315bd9163fdd691ddeb3
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Which gets us Xcode 16, with the macOS 15 SDK.
Pick-to: 6.9
Change-Id: I755c27f64f903b281f5d1c7947fbf370ddc3ee17
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
There are two image templates right away: -70 is Windows 11 with no
Visual Studio or Windows SDK ever installed. -71 includes VS2022 17.9.1
(MSVC 14.39.33519) and Windows SDK 10.0.26100.1742
Image changes compared to 23h2:
- VS2019 is left out as it's no longer used in provisioning scripts.
- Old DirectX installation (10-dxsdk.ps1) is left out. It's legacy,
originally used for Windows 7, and newer libraries should be found
from Windows SDK.
- 08-libclang-v100-dyn.ps1 is removed as it's no longer used. It had
dependency to VS2019.
- These images use UEFI instead of BIOS.
[CI Platforms]
Task-number: QTQAINFRA-6734
Task-number: QTQAINFRA-6823
Change-Id: I53a62c74b07d7fbfc9b1afbe44444272ae7c51e7
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
* Update the version variable used to identify the correct package for
download and cache sites.
* Update SHA1 for provisioning packages on all platforms.
Fixes: QTBUG-134304
Pick-to: 6.9 6.8
Change-Id: I2577600296e75080d503dc1a537ddbc00d0f207f
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Reduce ci integration time for qtqwebengine winarm64, where doing
qthost msvc22 target takes ~5h compared to mingw ~15 min.
Add mingw runtime to path for WoA cross compile node.
Task-number: COIN-1211
Change-Id: Iecd6f924544d2a17a595ac85473f51b599f24202
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
We will use RHEL9 to build prebuild binaries from Qt 6.10 ->
Change-Id: Ib49908c2997f5faccc9aa5e32b60088658d405d8
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Currently this script relies on hard-coded values specify minimum
iOS version to link against.
This patch unifies the hard-coded values into a single variable.
No functional changes.
Pick-to: 6.9 6.8
Change-Id: I12bddeb53f0fe3388ea55c841a9864722a1d5f82
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Starting from 6.9 the "ubuntu-22.04-documentation-x11-tests" config
was replaced by "ubuntu-22.04-developer-build-x11-tests". The new
configuration doesn't test the documentation for warnings which is
why we had failures in 6.8 where to docs were checked but not in 6.9
or dev.
This commit fixes the issue by adding the relatively new
"documentation-warnings" configuration, which will once again check
our documentation.
See also 434e4a224a .
Task-number: QAA-2878
Pick-to: 6.9 6.9.0
Change-Id: I479a9606ab16f8b87009d26ab03636c4c658fcb5
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Add instructions to run cmake on the qt5/tests/manual/RunCMake
directory followed by ctest.
These are only executed on platforms that set the
TopLevelRunCMakeTests feature.
Change-Id: I336f9395e5d9d580619eac028fbfc1d6c14bf805
Reviewed-by: Toni Saario <toni.saario@qt.io>
Coin CI doesn't provide git info for the qt5.git repo, but only a
source archive. The InitRepository test needs the git info to work
correctly.
When we detect that the test is run in the CI, instead of using the
source archive, clone the qt5.git repo from code.qt.io instead. Then
fetch and checkout the exact tested ref.
Change-Id: I892545c083288a8d32d3f8957bfc64984d52f5fc
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
The previous stdout regular expressions were expect the build dir to
be in the source dir. Relax that constraint, so any build dir can be
used.
Keep the generated 'tmp' part as the indicator for the build dir.
Change-Id: Ib8c2bf31f80926b9209948a5c70859e086ed71a1
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
RunCMake uses SEND_ERROR instead of FATAL_ERROR in run_cmake(),
which means that the script will continue to run even if a command
fails.
This change adds a check.cmake file and modifies run_suite_command to
ensure that we exit early if a command fails.
Change-Id: I8175ddc91144e3d0dea131857138af7940626208
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
The test has bit-rotted a bit since the last manual run.
Adapt the modified litehtml submodule URL.
Add the additional git config command to the output.
Change-Id: I240274a0772d6024401e8d08f6c150d4f12ac8cb
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Adjust the path to where expect to find the QtRunCMakeTestHelpers
module in qtbase.
Replace the usage of 'QtIRRunCMake' with 'RunCMake' in the root test
CMakeLists.txt.
Pass the current source dir as an extra module path to the RunCMake
test, so it can find the Common module without relying on relative
paths, so that any build dir works.
Remove the unnecessary forwarding of CMAKE_SYSTEM_NAME.
Amends e552513c9f
Change-Id: If804bcb36a0bd3df6e4617e56c146094793138c4
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Currently this script overwrites a local variables and reuses it for
a (slightly) different purpose. This makes the code a bit hard to
follow.
This patch introduces a separate local variable to improve readability.
No functional changes.
Pick-to: 6.9 6.8
Change-Id: Ifa1904482f498d9b380d1ed19ab6b0104afda19b
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Currently this provisioning script builds for arm64 architecture
when on iOS simulator. Qt ships x86_64 binaries for iOS simulator, and
we should build FFmpeg similarly.
This patch introduces support for x86_64-simulator in the iOS FFmpeg
provisioning script and uses it in place of arm64-simulator.
Pick-to: 6.9 6.8
Task-number: QTQAINFRA-7034
Change-Id: Ie93cffba51924cd1d78651d20dec211817cb0cef
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
While writing a documentation for FFmpeg build on iOS it was found that
many options are redundant. Remove them to simplify the provisioning
script and to reduce the amount of cargo cult code.
Pick-to: 6.8 6.9
Fixes: QTBUG-133502
Change-Id: I26aab49365eaca83bcdbfeb86de0638ac701bb80
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
* add FFmpeg stubs to the 'Required.private' section.
This will make the logic more robust after integration this
in qt multimedia.
* add some script comments.
* fix shellcheck.
* add validity checks.
Pick-to: 6.8 6.9
Change-Id: I28639d21c7210109e52ff98ce682da51f8744287
Reviewed-by: Jøger Hansegård <jogerh@gmail.com>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
The provisioning script install-ffmpeg-android.sh can be useful to run
locally to make sure we build FFmpeg with the same configuration as we
do in CI.
This patch introduce an optional parameter to this provisioning script
that allows us to specify where to install the compiled binaries.
Pick-to: 6.9
Change-Id: I7ea30bffa4753ac1fab707ed2876ddcbbca06175
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Windows usually updates certificates once a week, but due
to disabling Windows background updates there is need to
install and update certificates manually.
Updating certificates during provisioning is selected method
as it's aligned with the same procedure how linux machines have
handled the same.
Task-number: QTQAINFRA-7001
Pick-to: 6.9 6.8 5.15
Change-Id: I7c077b5e08328b12c481a3501736f06baf85e71e
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
openSUSE 15.6 doesn't have explicit openssl-3,
same was earlier seen with SLES 15.6 as well.
Therefore System's OpenSSL is read from openssl.
Pick-to: 6.9 6.8
Change-Id: I38d81b5484732e225036530e5326433ab90ef92b
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Disable auto-upgrades as it may lock and block scripts from running, resulting an error in /var/lib/dpkg/lock-frontend. Also remove 01-disable_auto_suspend.sh as auto suspend is already disabled in tier-1.
Pick-to: 6.9 6.8
Change-Id: Ia4420de72b26c7b4fd851f079fd4686624e5bf02
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Squish for Qt 6.8 has glibc 2.38 and glibcxx 3.4.32 dependencies, while
Ubuntu 22.04 LTS supports glibc 2.35 and glibcxx 3.4.30.
Pick-to: 6.9 6.8
Change-Id: Ia401daf444fbc3e460477fd1f5397781b902cf9d
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Bug reports from the nightly targets are updated to the ticket.
Task-number: QTQAINFRA-6540
Change-Id: Ie60275b20a30bac5517a1599050feba6286a624c
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Use the sha from last update of Gradle and update AGP version
to match qtbase's 0e4f9ffa55c2b77fbe79e96362bc68a968982b48 commit.
Task-number: QTBUG-132852
Pick-to: 6.9
Change-Id: Iab851b08bc11290ee51a22f3bdd64369928dff22
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
This task updated the build.gradle of Gradle cache
to use SDK 35 for compile and target.
Task-number: QTBUG-130285
Task-number: QTBUG-129461
Pick-to: 6.9 6.8 6.5
Change-Id: I076211baf896e65aae3b616a3d6286258c3d0640
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Other linux distros have similar ca-certificate install/update in use.
Issue was noticed in RTA, and if similar happens again, these RHELs
need new provisioning to get up-to-date ca-certificates available.
Task-number: QTQAINFRA-7014
Pick-to: 6.9 6.8
Change-Id: Id0ef369b0d714b40b66117d6e62ddd6a787cae71
Reviewed-by: Simo Fält <simo.falt@qt.io>
Previous dependency platform had been removed from CI, leading nightly
builds failing silently. Changed also from MSCV to mingw since it seems
to be more commonly used among customers.
Task-number: QTQAINFRA-7017
Task-number: QTQAINFRA-7000
Pick-to: 6.9 6.8
Change-Id: I009dd5e5c5ad28434816f831de37849a53f2c24f
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Running tests in QEMU for imx8 currently is not reasonably possible,
mostly due to lack of support from QEMU to emulate imx8 board.
Set qtmultimedia and it's dependees qtcharts and VKB as insignificant.
Change-Id: Iffc9c2e7df4bc06fd5b3c77124c650dda5696236
Reviewed-by: Simo Fält <simo.falt@qt.io>
Implement installation script in common/linux and call it from all
distros except arm (for which currently no binary exists).
Run executable after installation.
Warn only, to enable integration.
Task-number: QTQAINFRA-6796
Change-Id: Id0ebed7ae7d43733acb53d908750174634a4e676
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Using original platform config to prevent unnecessary failures
in Axivion analysis.
Task-number: QTQAINFRA-7009
Change-Id: If4b35b1401226c515efd7a29ce73b2fbe408c762
Reviewed-by: Toni Saario <toni.saario@qt.io>
* Update the version variable used to identify the correct package for
download and cache sites.
* Update the file names for all platforms, as these libraries are built
directly from upstream without other patches applied on top.
* Add provisioning package locations for Windows VS2022 x64.
* Set 'vs2022' as default toolchain on Windows.
* Update call sites for `libclang.ps1` to pass `vs2022` as argument to
the script.
* Drop Windows configurations with VS2019.
* Update cached and official URLs with the major version for Windows
platforms.
* Update SHA1 for provisioning packages on all platforms.
* Move from RHEL 8.8 to 8.10.
* Move from RHEL 9.2 to 9.4.
Fixes: QTBUG-129506
Fixes: QTQAINFRA-6605
Task-number: QTBUG-129373
Pick-to: 6.8 6.9
Change-Id: I5146e6551a1b3c83133803f61ca6f8428cb6a14f
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
In practice it already is, because qtbase sets COIN_CTEST_IGNORE_EXIT_CODE
to 0 for macOS 15, and this change has propagated to qt5.git now, but this
makes it official.
macOS 15 is now a significant platform [CI Platforms]
Change-Id: I9dc8b0f56582e08560859a17304e886e7fc3020b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
to the same libraries we build e.g. on macOS. Also, clean up the
script a bit removing a duplicate configure option.
Pick-to: 6.9 6.8
Task-number: QTBUG-133502
Change-Id: If06aad102783bc3025155d3427aa68d87ad4d179
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
The Windows template was upgraded from -53 to -54 just after the
qtgradleplugin platform config was added, and I guess that's why this
one was missed.
Change-Id: Ibc2250a40d6e67e409cee323cb305a93e65ee7ff
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Use prebuilt package stored in intranet when possible and use
intranet mirror when git is required.
Task-number: QTQAINFRA-6903
Pick-to: 6.9 6.8 6.5 5.15
Change-Id: I1630098756c2e9b4f551686679e98a40af5eef2d
Reviewed-by: Simo Fält <simo.falt@qt.io>
This patch bumps the sdkBuildToolsVersion used in Coin to 35.
Task-number: QTBUG-129461
Task-number: QTBUG-130283
Pick-to: 6.9 6.8 6.5
Change-Id: I2e1fbdfd23cb854ec50625ff29331adc61abc32c
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
To catch potential top-level build issues like non-unique example
names, missing AUTOGEN / moc does not exist workarounds and other
issues.
The nightly platform uses the newly introduced
'NoSubmoduleDependencies' Coin feature, which will ensure that we
only configure the qt5.git top-level build, not any of the submodules.
Change-Id: Idb79d768749311b4184e211cd54d38219bcba7c6
Reviewed-by: Toni Saario <toni.saario@qt.io>
This patch bumps the sdkApiLevel used in Coin to 35.
Task-number: QTBUG-129461
Task-number: QTBUG-130283
Pick-to: 6.9 6.8 6.5
Change-Id: Ia26248982a2807b2d3554d1a7a7394efcf13f834
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Currently only SLES and openSUSE has GCC in versions.txt.
Will also make GCC versions visible in Tools and Versions pages.
Task-number: QTQAINFRA-5901
Pick-to: 6.9 6.8 6.5
Change-Id: I9742c3151e074c503947018a0c7f7c2e0c1077bd
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
`git-review` is a command line tool for interacting with Gerrit.
Some IDEs offer support for this tool, either natively or through
plugins. The tool relies on a configuration file, .gitreview. Adding
this configuration file to our repositories simplifies initial setup
for contributors that use the tool directly or through their IDE of
choice.
The configuration file adds a remote called 'gerrit'. This is the
default for the tool, and also the name set for
codereview.qt-project.org by Qt's `init-repository` script. Thus,
the configuration should work seamlessly alongside other repository
helpers.
Task-number: QTBUG-132604
Pick-to: 6.9 6.8
Change-Id: Iea428aeaa1b4cdbaabd3477aaf061b8960efc887
Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
Debian is no longer supported for Qt 6.8.1 and later
Pick-to: 6.9 6.8
Change-Id: Ic9ddac3d95451b900f60be6a90efd5fb32985601
Reviewed-by: Patrik Teivonen <patrik.teivonen@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
That is what we are using for packages too.
Pick-to: 6.8 6.9
Change-Id: I88ab02f577933292c882ec4633d9087b1bf957ea
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
These test helpers are moved to qtbase submodule.
Change-Id: If8aa31fe1d9a93f2667249abd90ae9b8cb81d07a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Effect of this experiment was inconclusive. In some isolated cases
limited benefit was seen, but in overall metrics no change was
observed.
Remove the feature to gain the lost computing capacity back. If the
removal causes noticeably higher flakiness etc, it can be reevaluated.
Pick-to: 6.9
Task-number: QTQAINFRA-6702
Change-Id: I001fc2d3740a287d4546d0f597e81ded9f5449cb
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
QNX qemu configs separated. QNX710 and QNX800 require different set of
dependency libraries and there's an extra image creation bug on QNX800
that needs workaround too.
QNX800 toolchain updated.
Task-number: QTBUG-131708
Pick-to: 6.9 6.8
Change-Id: I3bc5c8bb63abbb729d03fcf3afb2f7881bcdd270
Reviewed-by: Simo Fält <simo.falt@qt.io>
Id: 'macos-13-arm-on-arm64-tests' was just removed, adjust
qtsaferenderer-runtime.yaml configuration to match
what's defined in macos.yaml.
Keep feature definitions same than before for
added 'macos-13-arm64-tests'.
Change-Id: I97becead1e7155d4d586692fd6ff87fad636efd3
Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
find_package looks for PackageName_ROOT and the package is now
named 'protobuf'.
Fixes: QTBUG-132901
Pick-to: 6.9
Change-Id: Ifb956e4ab52c3df059d2624eb989c97473a662a2
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
The hard-coded path paths added to LIBRARY_PATH and CPLUS_INCLUDE_PATH
was not correct on Apple Silicon Macs, where homebrew installs into
/opt/homebrew/.
There's also no point in passing on the library location via compiler
environment variables, when we can use ODBC_ROOT. And we don't need
to pass it on as a CMake define, as a environment variable works just
fine. This decouples the provisioning of libiodbc from the build
configurations.
Pick-to: 6.9 6.8
Change-Id: I40aa3c1852fb0baf3366fa1a9dab85a66eef95e2
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Axivion analysis for qt5 started to fail at out of memory.
Increasing virtual machine size to correct the problem.
Task-number: QTQAINFRA-6931
Change-Id: I2d0f1ee655a1449926f9938dbae6f4be0afbce8f
Reviewed-by: Toni Saario <toni.saario@qt.io>
Newer version of Chrome together with healdess mode
should provide more stability.
Pick-to: 6.9
Change-Id: Ifb6b326b90067d9e069ebef662356d28e2c9edd7
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
as xcframeworks, so that we can provide both arm64 and arm64-simulator
versions (the former can be used in App Store, the latter when
working with a simulator).
Pick-to: 6.8 6.9
Task-number: QTBUG-132313
Change-Id: Ic683f58dffcef8a06adb4a915c4e3abc4ab219e5
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
This caused tst_qplaintextedit to start flaking a lot.
Partially reverts b25251e2ba.
Task-number: QTBUG-133243
Change-Id: I348faa09831720a43aeb1f8097c42185e32c31dd
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
The test broker will later be used by the mqtt tests
There are 4 variants using two ports each
2883, 3883 -> Tcp
9883, 10883 -> Ssl
9080, 10080 -> WebSocket
9081, 10081 -> WebSocketSecure
For each of the 4 variants we test 3 protocols:
3.1, 3.1.1, 5.0
Task-number: QTBUG-129171
Change-Id: If000dd333221e7296499fc756ef97a074cf97273
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
A test requires this much memory.
Change-Id: I85063fbe911317035a6de3e85354ffb243d0cd7f
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
When it activates, all calls to qWaitForWindowActive() fail causing a
barrage of test failures.
Fixes: QTBUG-132070
Change-Id: I4d414e34d91d54f3edac9a476d66d5db8dab6c7b
Reviewed-by: Toni Saario <toni.saario@qt.io>
It seems it has been forgotten from some versions.
It helps with monitoring the IP address the VM gets via DHCP and
offers other useful functionality to the KVM hypervisor.
Task-number: QTQAINFRA-6610
Change-Id: Ie4b3ab7794ae2bafe53224006b2417d73851b495
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
It helps to monitor the IP address assigned by DHCP from they
hypervisor.
Task-number: QTQAINFRA-6610
Change-Id: I51c85b341b039a0625e0362f018c547127083dcc
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
The FFmpeg building flow has become too different on linux and macos.
Decoupling the logic makes it more simple to follow.
The CR also fixes nits and shellcheck warnings in install-ffmpeg.
Pick-to: 6.8 6.9
Change-Id: I28639d28c7210809e52ff18ce612da52f8754285
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
By removing the InsignificantTests flag and adding the
COIN_CTEST_IGNORE_EXIT_CODE env var we can control the
significance at the module level.
Change-Id: I89171f6dbed8c38aed279aec01e3bad36a157f5e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
The 'target' configurations currently trigger the 'host'
configure command line, and are duplication of the existing
rule we have for the host machines. Disable the top-level
configure checks for the 'target' builds completely.
Fixes: QTBUG-132799
Pick-to: 6.8 6.9
Change-Id: Ia06dde53825e882e78a8c6be9e62779aaedcebf4
Reviewed-by: Toni Saario <toni.saario@qt.io>
Needed with all the machines generating SBOM
Task-number: QTQAINFRA-6871
Task-number: QTBUG-131434
Pick-to: 6.9
Change-Id: I15a79c005f530c551f9026e2cbfb465ed1211e98
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Swift 5.9 includes built in crash reporting, printing stack traces,
libraries, and registers to stdout/err.
https://www.swift.org/blog/swift-5.9-backtraces/
As (Core)Foundation is written in Swift nowadays, we get this feature
for free even in our "C++" apps, as we always link to CoreFoundation.
Our test binaries have been taught how to hook into this, so the
remaining step is to enable it via the SWIFT_BACKTRACE env var.
Pick-to: 6.9
Change-Id: I72dbd9ea934ecc3091766456509f4bd42b2bdab8
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This patch
- Replaces Android 14 with Android 15 as a maximum version
- Introduces Android 15 system image to CI cache
- Sets Android 15 as significant
Task-number: QTQAINFRA-6478
Fixes: QTQAINFRA-6652
Pick-to: 6.9 6.8 6.5
Change-Id: Icb6de43f3e2c2f7f98f3172c83d66bebf9603d24
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
There're code duplications in install-ffmpeg scripts.
Let's have a file with FFmpeg installation utils and reuse
the functionality on unix platforms.
The utility functions make the code more robust and get
around code duplications.
Pick-to: 6.9 6.8 6.5
Change-Id: I28639d18c7110109e52ff09ce602da52f8857281
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
WoA template got updated in 2151c5510f
and 0f18b0bc2f, but not everywhere.
Pick-to: 6.9 6.8
Change-Id: Ie2ee9e62f9bc10753bd527a2b1a7edc5de46ca60
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
RHEL 8 installs python3-html5lib, however this only affects
installed pythnon 3.6, webengine should use
3.11 therefore add it to pip installer.
The change for switching webengine to 3.11 is in
so installing of python3-htmllib can be removed.
Change-Id: Ia6f4262971f60b960a61a466f418750c0d956cbc
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
While dylibs embedded in app bundle work locally on a device,
Apple Connect rejects such an app complaining about missing
Swift Runtime Support. Instead we must create frameworks.
Pick-to: 6.9 6.8
Task-number: QTBUG-130813
Change-Id: Ifd6eed227478bc29702b3b59968fcbfe2839ca82
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Change Windows 22h2 arm64 tier-1 template -54 -> -55, where Windows
SDK 10.0.26100.1742 is installed.
Task-number: COIN-1206
Change-Id: Id4b008d12ee092daa1e84c50d9a36240ee680483
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Change Windows 10 22h2 x86_64 tier-1 template -52 -> -53, where Windows
SDK 10.0.26100.1742 is installed.
Task-number: COIN-1206
Change-Id: Ia78f8d3b67c3aa546a4f47ad503f44782722631f
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Change Windows 11 23h2 x86_64 tier-1 template -53 -> -54, where Windows SDK 10.0.26100.1742 is installed.
Task-number: COIN-1206
Change-Id: I713ea4d5032145a92d7bcbccec6c98543cbc90d2
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
CI configs for new Boot2Qt repo.
Task-number: QTBUG-127698
Change-Id: I26fcc8c6a2224959a670290f7fcfe402ed7be137
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Qt auto tests now require exceptions due to usage of
QTEST_THROW_ON_FAIL and QTEST_THROW_ON_SKIP.
(Amends 72e2341971)
Task-number: QTBUG-121822
Pick-to: 6.9
Change-Id: I175ce8459660465477a0ac29d65353c871df69b9
Reviewed-by: Toni Saario <toni.saario@qt.io>
Also change the upper case L to lower case l, because it's changed
upstream.
Amends 0cfa1fa561
Pick-to: 6.9
Task-number: QTBUG-131169
Change-Id: I5e501e37bb5516e15a2cbb68cb523ebc5e88d47c
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
This makes ARM target tests significant for qtbase, qtgraphs and
qtgrpc. Intel target tests for qtgraphs, qtgrpc, qtlanguageserver,
qtquicktimeline, qtmultimedia, qtshadertools and qtsvg.
Pick-to: 6.9
Change-Id: I4ae3591dacb21207d5aaf65c1fdff4fd19c3903c
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Extending feature usage with newest and recently added CI platforms
- openSUSE 15.6
- SLES 15 SP6
The feature enables 1:1 pinning of CPU cores for VM, which should mean
more stable CPU allocation from host and fewer sporadic failure.
The down side of this is that the targets will effectively use double
the capacity from the host that they previously would. It is to be seen
how effective this is in reducing flakiness, which would counter the
increased usage by reducing staging needed.
In Coin the feature is limited so that it only affects test VMs.
(Amends cf237ca8dc)
Task-number: QTQAINFRA-6702
Pick-to: 6.9
Change-Id: I34f76b127899a878ef2ddf8f3c09904d8e21f493
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
The newest stable version of Android emulator should bring more
stability.
Pick-to: 6.9 6.8 6.5
Fixes: QTQAINFRA-6805
Change-Id: Id67d3ec888b486e6aae862588928528788583aae
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
We want automated testing for QtGP. Test cases that can be run with
Gradle have been made a while ago, but they were only run locally by the
developers.
This commit adds Linux/macOS/Windows configurations for QtGP. These are
marked TestOnly as the build/test process in Gradle is packaged together
and we don't want to initiate builds for the Qt side.
Task-number: QTTA-217
Change-Id: I777d191596f43089d0ad80cbb6470c62a0eee257
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Avahi-daemon often hogs 100% of CPU on the VMs. This particularly
causes issue on 2 core(thread) VMs where tests compete for CPU
with avahi.
Limiting avahi to test service related interfaces eliminates the
abnormal CPU usage.
Avahi should be only needed for tests to see the docker test services.
(Amends: 9f1cba8637)
Task-number: QTQAINFRA-6697
Change-Id: I425a0fbe0fb0080ab5e057d020bc7157ea36a3a6
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
The qttools qlitehtml submodule url was recently updated to use a
relative url like '../../playground/qlitehtml.git' instead of an
absolute path to code.qt.io repo.
Same for the nested litehtml submodule.
This broke initialization of the qttools repository, because the
init-repository script only normalized one '../' segment in the
submodule url, instead of all of them, which ended up trying to clone
a non-existent git://code.qt.io/qt/../playground/qlitehtml.git repo.
Apply the url normalization in all the code paths where there might
still be '../' segments in the url.
Pick-to: 6.8 6.9
Change-Id: Iaa8e58104c92858318ad66aefa5a38d63ad7a155
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
There's possibility that some installations might add more into
Path that doesn't get visible during the installation process.
Change makes it easier to detect if there's i.e. JRE installed during
Mimer, which caused Java SE update to 17 fail in qtbase build for
Android, because JRE was the first Java found from Path and it
wasn't the required new JDK 17 version.
This can lead even to test with incorrect version of Java, which can
happen with any other different version installations as well.
Task-number: QTQAINFRA-6392
Task-number: QTQAINFRA-6385
Pick-to: 6.8
Change-Id: Idce79eb06d73894ae648e0be53ff1f07bb21392d
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
If there is an error in emsdk scripts when running ".\emsdk install",
the provisioning would still continue. This change will make the script
exit and stop provisioning when the install command fails.
Also remove the attempt to use Python 2 and make sure the installation
finds Python 3 instead.
Pick-to: 6.8 6.5
Task-number: QTQAINFRA-5453
Change-Id: If052adcd446537b0eeb6261e4a297e9aeb292c6e
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
This will use the newer iOS 17 SDK during the build, and allow us to
enforce the minimum SDK version check.
This change also switches to using an arm mac for the build.
Pick-to: 6.8
Task-number: QTBUG-119490
Change-Id: Ie9ff2b2f4fe40bda2856d4b12a03aaa05f836de4
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
While on windows the instantclient sdk also provides the relevant
(import) libs, on linux those libraries are only provided by
instantclient-basiclite package. Therfore setting the Oracle_ROOT env
var to the sdk dir will prevent the libraries to be found on linux.
The FindOracle.cmake module is already adjusted to look for the
libraries in ${Oracle_ROOT}, ${Oracle_ROOT}/lib and
${Oracle_ROOT}/sdk/lib so they should be found correctly even we don't
append 'sdk' for Oracle_ROOT on windows for consistency.
Task-number: QTBUG-128873
Change-Id: Icd211d5b503234de529c339581a4f42f0b5fc726
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
It's easier to manage the vcpkg tool versions using this file,
but not editing script each time.
Change-Id: If6d04a8ac07731ec1fab46b1f663b86bbe640631
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
The old version doesn't support MSVC 17.10 toolchain, so we cannot
build for arm64.
Change-Id: I63df5b61d6d7e06ee49f46f77528021f3ce5be47
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Add -j4 to limit how many cores is used to build ffmpeg-ios binaries.
Error in logs: "posix_spawn failed: Resource temporarily unavailable"
Task-number: QTQAINFRA-6803
Pick-to: 6.8
Change-Id: I3fb56cdbe4cbda8f779852b0a16121916aa5a1d4
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
-no-feature-exceptions is now possible.
+ more disabled features
Task-number: QTBUG-122999
Change-Id: Ia0a90c62996239d437c39546302cc252529f5655
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
Amends c5ab2fe4fa
Option -force-asserts need to be added also to
-debug-and-release configurations.
Task-number: QTQAINFRA-6624
Change-Id: If98c9e477cc7f788bbaf265e7a8a2fc8baba5465
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Window animations change the physical geometry in relation to the
geometry known in Qt. Windows may not be found by
QGuiApplication::topLevelAt() as expected.
Turn animations off in Linux provisioning.
(linked to 9cd01ef8570f2a2c7392ac33f94005efc327c3fb)
Task-number: QTBUG-130811
Task-number: QTQAINFRA-6745
Change-Id: I2baee63f7f1752d6fadef145d3dd7c358385a42a
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
SLES 15 SP6 and Opensuse 15.6 seem to need direct configuration
for git and curl to take CA certificates into use. [CI Platforms]
nodejs18:
- Needed for QtWebEngine build done in RTA
- But nodejs18 doesn't yet have a provider
- Therefore using commonly installed nodejs 18.6.0 as it's available
Task-number: QTQAINFRA-6746
Task-number: QTQAINFRA-6745
Change-Id: I73fb2a98a648f56b7330e26811e6d4780c51ab80
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Window animations change the physical geometry in relation to the
geometry known in Qt. Windows may not be found by
QGuiApplication::topLevelAt() as expected.
Turn animations off in Linux provisioning.
Task-number: QTBUG-130811
Pick-to: 6.8 6.8.1 6.5
Change-Id: Id0fa13f4dd38b21dd141f4b51308903ccaf40bba
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
This is to run full set of tests instead of stopping of first error.
Change-Id: I606415b6a94f0b8a4a578cce4c4b8f4cce01479a
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Avahi-daemon often hogs 100% of CPU on the VMs. This particularly
causes issue on 2 core(thread) VMs where tests compete for CPU
with avahi.
Limiting avahi to test service related interfaces eliminates the
abnormal CPU usage.
Avahi should be only needed for tests to see the docker test services.
Pick-to: 6.8 6.5 5.15
Task-number: QTQAINFRA-6697
Change-Id: I30d75f2118501cd69d98aeea8c62722a0fb238c5
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
When running Axivion analysis on virtual machine, analysis will
update sourceserver_gitdir and source_server_remote_url into
result database. If these are missing from configuration,
analysis will use work area values for these and those does
not work on dashboard.
Task-number: QTQAINFRA-6262
Change-Id: I00df7eade6de1a12a6bb59cbd24374dd0cedd715
Reviewed-by: Toni Saario <toni.saario@qt.io>
Window animations change the physical geometry in relation to the
geometry known in Qt. Windows may not be found by
QGuiApplication::topLevelAt() as expected.
Turn animations off in Linux provisioning.
(linked to 9cd01ef8570f2a2c7392ac33f94005efc327c3fb)
Task-number: QTBUG-130811
Task-number: QTQAINFRA-6739
Change-Id: I75b2320cde36fe418dfc2d518db74e50072b6204
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
OpenSUSE 15.6 and SLES 15 SP6 seem to need direct configuration
for git and curl to take CA certificates into use. [CI Platforms]
Includes fix to install gstreamer h264 codec
(amending 58e0090020)
Task-number: QTQAINFRA-6740
Task-number: QTQAINFRA-6739
Change-Id: I0d92ef50527564d2f048174777e20d1611aaf4d2
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Enable test building for all modules VxWorks is to be ported to.
Set modules that fail as insignificant. Keep x86_64 target as
insignificantTests, due to it requiring change in qtbase, after
which it can be default significant.
Change-Id: I3c373a2a548c71515901c180e299738f5326c8a4
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
The documentation warning configurations marked with the TestDocs
feature will now use the new doc tools building instructions from
qtbase, instead of using the provisioned qdoc tools when checking the
documentation for warnings.
This means that each qtbase integration will build the doc tools
from qttools/dev/HEAD and use those built tools associated with that
qtbase sha1 integration to check documentation in all other
repositories.
The doc tools will be rebuilt whenever a new qtbase integration
starts.
See the qtbase commit 1f646bb978ed94c25f6224e801779c929096c0ae for
more details.
Task-number: QTBUG-128730
Change-Id: I5a981afa9ec2c2b3a5c519b961e566ec5d2cc925
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
OpenSUSE 15.5 provision can fail to a failed zypper install with
qemu-guest-agent due to a broken/expired mirror. This may be
eventually fixed by the package manager. This changes adds a working
source for zypper and the package.
Sometimes installing any package with zypper can output:
"Repository 'Update repository of openSUSE Backports' is invalid.".
This may mean a current mirror/repo for it is not functioning at that time. Specifying a functioning mirror fixes this.
Change-Id: I7b8ea8f1db291a1001a7d062a3da91ded99301f2
Reviewed-by: Simo Fält <simo.falt@qt.io>
Qt auto tests now require exceptions due to usage of
QTEST_THROW_ON_FAIL and QTEST_THROW_ON_SKIP.
Task-number: QTBUG-121822
Change-Id: I755752c6324368c5cd2509216ec6bb0a3090896c
Reviewed-by: Lorn Potter <lorn.potter@qt.io>
Wrong emulator is started because of this and none of tests run.
Change-Id: I47fee8d69feadccfdd8b5c27e7ff63df550352fa
Reviewed-by: Simo Fält <simo.falt@qt.io>
Both modules are using their own features to enable coco
instructions.
Task-number: QSR-2578
Change-Id: I64ba6a372f19a8f980e2e620786f10c8345f3e5b
Reviewed-by: Toni Saario <toni.saario@qt.io>
To get as close as possible to how developers build and run
tests, and to get debug-build test coverage on macOS in CI.
Pick-to: 6.8
Change-Id: Ice12b7230d56284d352e6a73ac503588b22107bb
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
The feature enables 1:1 pinning of CPU cores for VM, which should mean
more stable CPU allocation from host and fewer sporadic failure.
The down side of this is that the targets will effectively use double
the capacity from the host that they previously would. It is to be seen
how effective this is in reducing flakiness, which would counter the
increased usage by reducing staging needed.
In Coin the feature is limited so that it only affects test VMs.
Task-number: QTQAINFRA-6702
Change-Id: Ie0abd68e0ce80008776f3d0fe931d996f6eb3a61
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Adding these Windows, Linux and MacOS targets:
- windows-11_23H2-msvc2022-unity-build
- rhel-8.10-unity-build
- ubuntu-24.04-arm64-unity-build
- ubuntu-24.04-x64-unity-build
- macos-universal-on-arm64-unity-build
Only builds with make examples, no tests.
Task-number: QTQAINFRA-6391
Change-Id: I4e009e35ef5d30495efd949b8c997ab3ced50dae
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
The triplet it not used on every x86_64 windows VM. Build it only
on windows 11_23_H2-x86_64 where we crosscompile Qt.
Change-Id: I5bfd852ac0cdde8d8f1f7b4b46d208f6dc221162
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Make the Windows vcpkg provisioning script configurable, so scripts
that use it may select the architecture using the 'arch' argument.
Change-Id: Id6180866ed03a9a15ec9b907c9be5545a04ea879
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Jenkins needs Java 17 to run agent on VM
Task-number: QTQAINFRA-6263
Pick-to: 6.8
Change-Id: Ia2749a4812402df8b11f6388f8e6bc3b995d5e53
Reviewed-by: Toni Saario <toni.saario@qt.io>
The h264 codec is required to run the gstreamer-based unit tests on CI.
Pick-to: 6.8
Change-Id: Ic47ee086687230613d56f30d3fd613288e37ce7f
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
RHEL-9.4 will be run in parallel with RHEL-9.2 with insignificant tests
until RHEL-9.4 is confirmed stable, then it will replace RHEL-9.2.
[CI Platforms]
Pick-to: 6.8
Task-number: QTQAINFRA-6362
Change-Id: I92c10a15346e7bd0c0190a8d6a6513cf6143d2a8
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
GHS compiler license has expired.
Change-Id: I5f495d24b5693c1841cb292d791188e1f3896d93
Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
We don't use any configurations for packaging, the feature doesn't
trigger anything.
Pick-to: 6.8
Change-Id: I977566123b491284e029cf1d828c0ce0a36703f2
Reviewed-by: David Schulz <david.schulz@qt.io>
The download helper for .ps1 scripts takes in parameters in order:
1. The external URL (this is 2nd priority DL source)
2. The internal / cache URL (this is 1st priority source)
3. Download location
The URL variables were inputted to the function in wrong order. And URL
variables for x64 were named incorrectly. This change fixes that.
Pick-to: 6.8
Task-number: QTQAINFRA-6296
Change-Id: Ic4f939448a4ac39e4fd7d52e5b80132b02c38dc2
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
I add qtwebsockets as dependency because that allows us to use
it for webassembly (in a later change).
Task-number: QTBUG-129171
Change-Id: I8fa1604488e5351b7a5628361137be0e35051c47
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
The GStreamer backend of Qt Multimedia has known issues with pulseaudio,
caused by bugs in the time smoother. We therefore install pulseaudio 16
from a PPA on our ubuntu testers.
Task-number: QTBUG-112014
Task-number: QTBUG-124372
Task-number: QTBUG-126799
Pick-to: 6.5 6.8
Change-Id: Ifd18ff4b9904ac0ee022c9158e96ebca8768599f
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
The QtSynchronizeRepo.cmake script, which is meant to be driven by a
git-sync-to script, has been rewritten to support more use cases, as
well as improve the code readability and error reporting.
The script now supports the following additional use cases:
- Clone a specified qt/{repo} submodule from code.qt.io into the
current directory, and initialize (clone) its dependencies
- Initialize a submodule and its dependencies in an existing qt5.git
super repo. This is similar to what init-repository does, except
instead of using the qt5.git sha1s, it uses the dependencies.yaml
of the specified submodule
- Support for git fetch --depth, to allow shallow cloning of the
specified submodule and its dependencies. This is useful for CI
where only a specific revision needs to be checked out.
The main incentive for this change is allow cloning qttools/dev/HEAD
and its dependencies in a CI run, but it's useful for daily work as
well. At some point we should check what can be merged together with
the existing init-repository script.
Pick-to: 6.8
Task-number: QTBUG-128730
Change-Id: Ie6d49d253223cc93b8831ef41d25e0adeac39b8b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
This file is used by the script common/unix/install-ffmpeg-android.sh.
This script is useful for compiling FFmpeg for Android locally
on macOS. Currently the script assumes the Homebrew installation
of readelf is that of x86. The Homebrews path for readelf is different
under arm64 and this change accounts for this.
Pick-to: 6.8 6.5
Change-Id: I7ec1d4173e35fe91bc988492e56dd9a5fcbad072
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
On RHEL8, openssl1.x.x is default, and openssl3 pc files
are with the suffix "3", so FFmpeg cannot find them.
The patch fixes pc files so that ffmpeg can find them.
Task-number: QTBUG-130257
Change-Id: I5a95daae0a78aadede109535b2823483bfcbc09d
Pick-to: 6.8
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
This patch adds FFmpeg provisioning for Android and iOS for
qtci-macos-12..15-arm..x86-64 by syncing with qtci-macos-13-x86_64
where this was already done.
Pick-to: 6.8
Change-Id: I070514cbff12504db7c6fa77111e12d7e500ce30
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Change build to x86 and add unit tests
Task-number: QTBUG-122999
Change-Id: I1698f623d40d87d6bb5cda0188accbd6c45b7dd4
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
popd was placed incorrectly and caused the script to be unable to find
the fix_ffmpeg_dependencies.sh file.
Pick-to: 6.8
Change-Id: I7922a698e90d1b3899ecc7b2240a260ea706707f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Script would previously unconditionally run ln even if target file
sometimes exists in precompiled OpenSSL library.
Pick-to: 6.8
Change-Id: I90c4ad7c6cbf9207c2c82114936b478a9ba4ae54
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Instead of relying on the qtbase coin instructions to compute the
SBOM_PYTHON_APPS_PATH path based on the platform, which does not work
reliably, especially when multiple python installations are present,
explicitly specify the path in the provisioning scripts.
Amends 1f2fb6312c
Pick-to: 6.8
Task-number: QTBUG-122899
Task-number: QTBUG-124453
Task-number: QTBUG-125211
Change-Id: I097fd1c4119a203d82f88c477dbf0fc0f67f19f2
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
The 'reuse' tool installed into the Python 3.8 environment on Windows
has a broken 'jinja2' package, due to conan being installed
after the sbom tool, which replaces the jinja package. pip reports the
issue but does not actually exit with a non-zero status for some
reason, thus not blocking the initial provisioning.
The jinja2 version installed in the Python 3.10 environment on Windows
is compatible with both conan and reuse.
To work around the issue, explicitly install the sbom tools only for
Python 3.10 on Windows platforms, and specify the path to the Python
interpreter in an environment variable for the build system to use.
Amends 1f2fb6312c
Pick-to: 6.8
Task-number: QTBUG-122899
Task-number: QTBUG-124453
Task-number: QTBUG-125211
Change-Id: I386da17a1902dd26af332cef3482dbcb2221a1b3
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
We are planning to push WebAssembly dynamic linking
out of technical preview. Building this version on CI
is natural step.
This is minimal build, without tests and examples which
will be added in future after testing.
Change-Id: I2407121cd029f9640b69175a134c911cf8900f5e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Take two. The qtbase TestDoc instructions should not be complete.
We only need the documentation-specific instructions to build the docs,
so instruct the test instructions in qtbase to skip the auto test.
This saves time during integration, and also avoids polluting test
results in our Grafana dashboards with test failures in a
"documentation" build.
Change-Id: Ie7114816ca35a578f01deb9946a2a6bb2e577c94
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Red Hat 8.10 VM template -50 does not have a user set for SSH. This is
fixed in template -51.
Pick-to: 6.8
Change-Id: I602976a0214f6e0f4661e6b876c0710bc3ea9df9
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
It is needed to successfully build Qt with CMake 3.30.
Pick-to: 6.8
Fixes: QTQAINFRA-6484
Change-Id: I70b7d91571f5b20a008947eb0837dd8351965665
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
The MSVC platform was not there when the rest of the platforms where
adjusted to build examples as standalone. Now that it's here, add it.
This is a pre-requisite for building examples as external projects
with MSVC.
Augments d278e682c6
Pick-to: 6.8
Task-number: QTBUG-90820
Task-number: QTBUG-96232
Change-Id: I4a77d16e0f683f5984beeedb6e6d32707847383b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
VNC access has not been enabled on macOS tier1 images.
Add instruction.
Task-number: QTQAINFRA-6626
Change-Id: I1824705aa49b9f5192460e87e5285976bc8176eb
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
The vivid kernel module emulates a v4l2 video devices like webcams. We
instantiate two devices via vivid to allow qt multimedia unit tests
requiring multiple cameras to run correctly.
Pick-to: 6.5 6.7 6.8
Change-Id: I1b87954e3c8af797f5b09dabf2d4939d8320db06
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
qtci-macos-11-x86_64-107 and qtci-macos-12-x86_64-107 have been created
to add VNC accessibility.
Bump the image version used in CI, in order access debug VMs.
Task-number: QTQAINFRA-5815
Task-number: QTQAINFRA-6626
Pick-to: 6.8 6.5
Change-Id: I42c6602f9524b1fbfe47da081a7a15deff001f68
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Qt Creator uses libsecret for saving passwords.
It is dynamically resolved during runtime, but we need the
development package at build time to enable the feature.
Fixes: QTCREATORBUG-31381
Pick-to: 6.8
Change-Id: I71077694ff0f4d04b1d85215791dc7f6f6663f64
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Include also macos-14-arm64-developer-build.
This change amends 49b80c57c6
Change-Id: I40ef2ddbdd0c73ef4573d1d4b9f2012ae1ec8611
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Task-number: COIN-1181
Pick-to: 6.8
Change-Id: I91b156bf4217aba517d02d9003605b09edb08ec6
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Libclang is needed for QDoc.
Adding support for WoA (arch=arm64) also introduced a need
to change archVer parameter from Integer to a string.
Task-number: QTBUG-129256
Pick-to: 6.8
Change-Id: I13f15925a7639c6f926c564146fbbc88f73fff8f
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Don't try to re-install, but install and let apt do its magic.
Pick-to: 6.8
Fixes: QTQAINFRA-6638
Change-Id: I60ccd2717854c6644d1b956362ee3fd535e2d87c
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Adjust the local repo paths for firebird libraries.
Change-Id: Ifb10ab8f4606eefd53f4cd63cf08264d82922cba
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
The current revision 9 seems to have issues that are not reproducible
on other environments and even not with other ABIs like x64 or arm64.
Pick-to: 6.8
Task-number: QTBUG-97650
Change-Id: I6f4827f170ea11b8aae9cc774c075fa043e4df5a
Reviewed-by: Simo Fält <simo.falt@qt.io>
Use the sha from last update of Gradle and update AGP version
to match qtbase.
Pick-to: 6.8
Change-Id: Ia235dacfc3206246c4c4330fb185ce1319d45909
Reviewed-by: Simo Fält <simo.falt@qt.io>
This reverts commit 0cd87bfd32.
The platform is not stable enough, let's remove it first.
Pick-to: 6.8
Change-Id: Ia7a378dc1ad867b085528da02e9d7ed70658c1cd
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
It has to escaped so the PATH is not expanded when appending
to .bashrc. This causes issues in sourcing some 3rd party envs
where PATH is overwritten by bashrc as last and the tools are missing.
Pick-to: 6.8 6.5 6.2 5.15
Change-Id: Idc540d608201a8f8e4c231a7e82b1b2bc42fe70f
Reviewed-by: Simo Fält <simo.falt@qt.io>
This reverts commit 1f426268ad.
Reason for revert: After all, it seems to be cleaner to have a separate
repository that only contains the workflow. Also, its confusing for a
user to see that the qt5 repos only has builds of one tool instead
of the entire Qt library, and if we do add releases on github then it
would get really confusing to mix qmlls and Qt library releases together
on the same repo.
Change-Id: I17ccb1036f17fa80efab3509b8f9d2a245755958
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Create common yaml for building static release packages
for all host platforms, including arm linux and windows.
Pick-to: 6.8
Task-number: QTBUG-117504
Task-number: QTBUG-117819
Change-Id: I8ee78eb9aa4fa5150141227e3367dee1be10f907
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Different compiler than on RHEL (10.2 vs 10.3)
Pick-to: 6.8
Change-Id: I3d115dfcc085c0d561a42022e61225f1f280493f
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
To review and comment on the rules.
Task-number: QTQAINFRA-6577
Change-Id: I3c4f85e307533346d393ed32adccb75c106d882e
Reviewed-by: Simo Fält <simo.falt@qt.io>
Ubuntu 22 arm64 target is missing packages to mount ci-files01 for Squish.
Task-number: QTQAINFRA-6212
Change-Id: Ia5c38f12f2c6ce8ff19d2d46ce1e46f6e1c627f0
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Config 'debian-11.6-arm64' to build Debian LoA is not needed anymore as
its purpose is now done by Ubuntu arm64 target which is based on Debian.
Pick-to: 6.8
Task-number: QTQAINFRA-6129
Change-Id: Ife8a61145e200df30a6f78ba7981b4ed8b5fe5c6
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Changed device's start timeout to 3 minutes,
and restarting retries to 3.
Changed emulator boot check loop to check against
real time value instead int value.
Some of the tests caused previous
for-loop to take more than 1 second.
Task-number: COIN-1154
Change-Id: I58066ad8f440b2fdee3c5b64d094b2713007bf19
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Amends commit 07466f05d7 where
qtdeviceutilities got left out from.
Task-number: QTBUG-128832
Change-Id: I9b9c8e68b4d806a0c8a6883a8b06bad7c2827d0e
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Current RHEL 8 version is 8.10 in dev and soon in 6.8 (6.8.1). WoA is also an active platform in dev and 6.8 so let's add Go to it, upx for Windows on Arm has not been implemented yet.
This amends: 337206334e
Pick-to: 6.8
Change-Id: I8b538e5d68db529e4f396059565856d0af4d8f54
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Windows script to install golang tries to download a .exe file from
cache while the install file is really a .msi file.
Golang and upx are new packages to ci-files so let's define their
directory paths as neatly as possible to prevent more clutter to
ci-files.
This amends: 337206334e
Pick-to: 6.8 6.7
Change-Id: If6cfa38304bfec207500fcd7a67e3acba994eb9f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
The missing libraries are needed to make unit tests pass in CI. With
this patch, we install the same GStreamer libraries on 24.04 as on
22.04.
This follows 02af86d2aa .
Task-number: QTQAINFRA-6098
Pick-to: 6.8
Change-Id: I9fcb5abe0eba01e1e248eb0eb5aff11de4986235
Reviewed-by: Liang Qi <liang.qi@qt.io>
We had b8521b89dfa36519afe8a7c8f02b982d760fc0f6 which made the target
noop and did not make it to qt5 via submodule update before
333cbd0592 was merged.
This resulted in newer qtbase where noop build was fixed failing to
build with the firebase libs.
Disable Ibase/firebird until correct libs are in place.
Change-Id: Ib8dac29ac74c6619f519702c7542cec8b683283c
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Qt Creator will soon start to rely on go for tools and upx for binary compression.
Right now we can't install upx on macOS which we can live with.
Leaving the script in for later re-enabling once brew has been fixed.
Pick-to: 6.7 6.8
Change-Id: I4fdc67e469153e8a0530efd58ff251629dcabdfa
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Recent versions of Xcode (15.3 at least) no longer have this issue.
Change-Id: Iafba08094c3a52c9fd005f0d236fcb945ac43ed4
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Tests have been monitored and passing now [CI Platforms]
Task-number: QTQAINFRA-6109
Task-number: QTQAINFRA-6110
Task-number: QTQAINFRA-6396
Pick-to: 6.8
Change-Id: I321123e08a4a910a9c7effb5d640773adf8a898c
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Our x86_64 capacity is overloaded.
The Mimer SQL plugin is skipped because it has problems in static
builds.
Pick-to: 6.8
Change-Id: I5f89cb7aa6b373792090ea16b0137de05574b71b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This new tier-1 template has an updated MSVC (1941) and other small
optimizations done to Windows 11:
- .NET runtime optimization service is ran so it wont start
automatically in later VMs.
- Event viewer showed that Windows creates Restore Points during
provisioning so this is now disabled.
- Widgets are now disabled, so they no longer download weather/news
data.
Task-number: QTCREATORBUG-31485
Fixes: QTQAINFRA-6518
Pick-to: 6.8
Change-Id: Ifb60e8a24642e7cff9c8ffef319d6008a6af1fa4
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Install Chrome and chromedriver from our cache with
specific version for better CI stability.
Fixes: QTQAINFRA-6465
Change-Id: I34f84563c6eb5feea4f112adbd20136974b211c8
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
The Mimer SQL macOS binaries had a problem fixed in version
11.0.8E. Update provisioning script with new version. Since Mimer SQL
on macOS is now universal binary only, remove the arm64 and x86_64
versions.
Fixes: QTQAINFRA-6559
Pick-to: 6.8
Change-Id: I7e202ffc945167db79430846571cd7e1bb5158f6
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
We have u2404 arm64 offscreen tested in qt5 since
420b779335.
Pick-to: 6.8
Change-Id: Ibbb7d275d4abe4fc73646747939b2361c5317b26
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Add a github action to build a static release build of qmlls.
There should be nightly releases that are build at night on monday,
wednesday and friday (frequency to be adjusted in the future), and
"real" releases that are built when a tag is pushed.
There is also the option to trigger the workflow "by hand" to get
nightly builds.
Nightly qmlls is versioned via qtdeclarative's short SHA,
qmlls-nightly-<short sha>, and "real releases" just follow the tag name
(as long as they have 'qmlls' and not 'nightly' in their tag name).
Add some workaround for the file stripping to have debug information in
a file separate to the qmlls binary.
You can see the github action in action at
https://github.com/samishalayel/qt5/actions/workflows/build_qmlls.yaml
Task-number: QTBUG-126405
Change-Id: I5379215062d7424544663c1519c4e296baf11fba
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Since Dec. 2022, qtwayland.yaml was included in qt5 integration,
which has too many InsignificantTests configs, let's remove some.
Pick-to: 6.8
Change-Id: I7893578797895704bbb8d3ad05070816e30f4678
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
This reverts commit 9053e98de8.
Reason for revert: doc instructions were incomplete
Change-Id: I700a7bac4676497ab54dda957143c8d3e08e5083
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
We only need the documentation-specific instructions to build the docs,
so instruct the test instructions in qtbase to skip the auto test.
Change-Id: I6cca16a584aa39fb994b45c0db68309e59bfada1
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
So it can be included both from qt5.yaml and Boot2Qt's doc.yaml
Amends 434e4a224a
Change-Id: I89d9a5d8d36096358d8cba7afb21b32f6074e200
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
It was previously missed, and thus qdoc wasn't built for the
windows-11_23H2-llvm Packaging configuration.
Amends 9975595a5e
Pick-to: 6.7 6.8
Fixes: QTBUG-121548
Task-number: QTBUG-111580
Change-Id: I1142b593f36c8366ceaeac91eba81e16f1a2557d
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
The screen capture permission might be useful for Qt Multimedia, and
also allows us to do screen capturing of the state of the VM in case
of test failures.
For macOS 15 we need to work around the monthly nagging that an
app has permission to capture the screen, otherwise this popup
may interfere with test runs.
Pick-to: 6.8
Change-Id: I0398488c78b19a85ba527b780b264e0b915b6024
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
We are experimenting with various ways of running and packaging the
bootstrap agent. To support this, let's add the required permissions
to both a standalone bootstrap-agent executable, as well as an app
bundled version of it, if found.
In addition, add the permissions to sshd-keygen-wrapper, which is
the responsible process for the SSH server, and any ssh login
sessions spawned by that. This serves two purposes. Firstly, this
matches the permissions between a coin run (by the bootstrap agent)
and what a developer will see when SSH'ing into the CI machine to
debug an issue. Secondly, we might use ssh as an entrypoint to
run the bootstrap-agent, in which case we need the permissions
on sshd-keygen-wrapper anyways, so that they are inherited by
the bootstrap-agent.
Pick-to: 6.8
Change-Id: I576349e93ca19d98384490c99102966e8ffe2833
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Add Squish provisioning to linux on arm and windows on arm machines
also.
Pick-to: 6.8 6.7
Change-Id: I52f0e8fc4931efd7c7fcf36c555cbae76e2f347b
Reviewed-by: Simo Fält <simo.falt@qt.io>
Set test running to happen on non-developer static target
for modules upstream of QtDeclarative. Qtdeclarative tests
do not build with static flag, due to this only up to this.
Update VSB and VIP.
Change-Id: If7e016f11b5d3908dff584fc05bcc8985d471a94
Reviewed-by: Simo Fält <simo.falt@qt.io>
Currently any configuration tagged with the 'LicenseCheck' feature
uses the qtqa/master tst_licenses.pl script for license checking. The
exact instructions that are run are hard-coded in the Coin repository.
This is inflexible, and also confusing because qtqa has a dev and a
master branch, and people forget to cherry-pick changes to the master
branch.
Furthermore always using the qtqa/master branch for all qt5.git
branches is limiting, because no instruction changes can be made to
a specific qt5.git branch.
Using the new instructions added in qtbase commit
2a0e89981a52633c497f62bad0c7d26c466493cb
we can now tag configurations with the 'LicenseCheckV2' feature.
Integrations will then use the instructions from the active qtbase
SHA1 to run the license check.
Currently the qtbase instructions will always use the qtqa/dev branch
for the license check, for both the dev and 6.8 branches, but in the
near future we will likely want to create versioned branches for
the qtqa repo, just like the rest of our repositories, so that we
can have specific license check instructions for specific branches.
Pick-to: 6.8
Task-number: QTBUG-124453
Task-number: QTBUG-125211
Task-number: QTBUG-125569
Task-number: QTQAINFRA-3935
Change-Id: Ica024dec44a9581c49cdfb555ba93667f7b34780
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Lucie Gerard <lucie.gerard@qt.io>
Allows to join the resulting list using ',' or something more exotic
like ' -skip'.
Change-Id: Iafffe3eaa8c14cde81c0ce05c584b43144011a3a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
We have two builds we need to cover:
1. Documentation testing, aka 'DocTests' feature
This feature builds docs for every submodule during module
integration, using externally provisioned doc tools.
2. Offline documentation building, aka 'Documentation' feature
This feature builds documentation for use in e.g. Qt Creator
For both these builds we only need a single config to handle them.
The initial configs were based on Ubuntu 22.04, but with the addition
of Ubuntu 24.04, and splitting up X11 and Wayland testing, these configs
multiplied, which is not needed. The inclusion of 'documentation' in
the various test configs was also needlessly confusing when e.g.
looking at test failure results in Grafana.
The previously named 'documentation' configs for Ubuntu have been
renamed to 'developer-build', as this is the significant difference
to the non-developer-build config.
There's still two issues with these configuration:
1. The DocTests configuration also runs the Qt auto tests.
The DoNotRunTests and DisableTests feature flags would
seem to be relevant for skipping the auto-test step in
the coin test instructions, but these are hard coded in
coin to skip the entire test workitem.
2. The offline doc builder builds Qt and tools from scratch
A better approach would be to depend on another build
and just configure and build docs, but doing so requires
more investigation.
Change-Id: I5a041dec697424b85d3b1588cd6e77a80551d2eb
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Qt Graphs will be officially supported from Qt 6.8.0 ->
Task-number: QTBUG-125143
Pick-to: 6.8
Change-Id: I3dd57696188ef03b1ea67d15fce407fc48d333ec
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Qt HTTP Server will be officially supported from Qt 6.8.0 ->
Task-number: QTBUG-125155
Pick-to: 6.8
Change-Id: I3286b2b0bdfcb675774d67909d485e88d100c09d
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
It will be officially supported from Qt 6.8.0 ->
Task-number: QTBUG-125156
Pick-to: 6.8
Change-Id: Idd5d2851dfa9d4c04643b3385ee8b4da86226772
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
qtci-windows-10_22H2-x86_64-51 was copied as -52
In this new tier-1 image, the following services were disabled:
- backgroundDownload.exe (part of MSVC)
- Microsoft Edge update/installer and Onedrive
Also missing certification GlobalSign Root CA - R3 was added.
Pick-to: 6.8 6.7 6.5 6.2
Task-number: QTQAINFRA-6207
Task-number: QTQAINFRA-6490
Task-number: QTQAINFRA-6473
Change-Id: Ifd51d25a6c8d43b008ca65af22ebbd592cf57b85
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Packaging reported issue that python installation
without proxy didn't work - therefore enabling proxy
back was needed but with a fix to handle Py 3.10+ changes
Py 3.10+ pip 24.2 has moved to use system certifications
by default which caused issue when proxy is used
and if host didn't have one specific certification
GlobalSign Root CA - R3 for pypi.org.
Also noticed that sometimes Windows x64 images seemed to
have this missing certification, but after installing it
to Windows ARM (which was clearly missing it) - logs showed
they didn't have it - and direct check to both Win x64
Tier1 images showed that they didn't have that cert.
Not sure what steps in provisioning or proxy usage could have
affected to that, but missing certification is now added directly
to all of these new three Windows Tier 1 images:
- qtci-windows-10_22H2-x86_64-52 (via QTQAINFRA-6207)
- qtci-windows-11_23H2-x86_64-53
- qtci-windows-11_22H2-aarch64-53
Therefore --use-deprecated=legacy-certs flag is not needed
when system has correct certification available as Py 3.10+
has moved to use them by default.
Long-term improvements could still be added in future, in two ways:
1) Internal package cache (QTQAINFRA-6485 QTQAINFRA-5531), or
2) To update system certificates with Py 3.10+
But those will need more time to decide and implement.
Therefore this improved quick fix to get proxy back with Py 3.10+
was needed now and it removes previous quick fix to unset proxy.
Task-number: QTQAINFRA-6490
Task-number: QTQAINFRA-6473
Pick-to: 6.8 6.7 6.5 6.2
Change-Id: I0805a70cf1163012094505162d28640e9ea8e6bb
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
both x64 and arm64.
Don't have enough resource to make sure docker setup works fine
for new platform now.
Task-number: QTBUG-126410
Pick-to: 6.8
Change-Id: I58de4836af9d7589c1a1db5371c410099e671793
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Those will be provided by Coin.
Follow-up to 4e09a6db79 for macOS ARM.
Pick-to: 6.8 6.5 6.2
Change-Id: Iffe433b606e6fb28580b8d2a265ee82f4bda7eb8
Reviewed-by: Toni Saario <toni.saario@qt.io>
Update QDoc and qtattributionsscanner to the latest versions from
qttools/dev.
The QDoc binary is built against libClang v18.1.7. It supports new
commands introduced in Qt 6.7 and 6.8. It also ignores duplicate
warnings that QDoc issues for certain attribution files in CI only,
which have been known to block qt5.git integrations previously.
Fixes: QTBUG-126407
Pick-to: 6.8
Change-Id: I69aad04bbe73e1fdf1d6cb4ff797616a23abcdaf
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Update the version variable used to identify the correct libclang
package for download and cache sites.
* Add provisioning package locations for Ubuntu 24.04 ARM64.
* Update SHA1 for provisioning packages on all platforms.
Fixes: QTBUG-126412
Task-number: QTQAINFRA-6112
Pick-to: 6.8
Change-Id: Id30841efb29d78c9d2d54ffa6af9993b12734c0b
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Previously configurations with -make examples in their configure args
were building examples as part of the Qt library build. This has some
downsides:
- we don't build examples as a separate project, thus not ensuring
that we build examples as our users would
- qt cmake deployment api can't be used due to various limitations in
our tooling
Use the new qtbase instructions to instead build examples as a
separate project in a separate build directory, after Qt is built and
installed. This is similar to how we build standalone tests.
The new instructions are activated by the StandaloneExamples features.
It is opt-in as opposed to standalone tests, so we can disable the
feature in case any regressions happen.
Task-number: QTBUG-90820
Task-number: QTBUG-96232
Change-Id: I71b37b91ed09bcc0797841adf0df84cc0b111fd7
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
It used to be installed as a dependency of some other package, but
stopped doing lately, which causes qtbase to build without zstd
support.
This change explicitly installs the libzstd-dev package to prevent
this from happening again.
Pick-to: 6.7 6.8
Fixes: QTBUG-124787
Fixes: QTBUG-127644
Change-Id: I72793ed96ef39ec07244079c51efe17ae1f9af66
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
RHEL-8.8 targets are replaced by RHEL-8.10 targets in platform
configurations. [CI Platforms]
Task-number: QTQAINFRA-6366
Change-Id: I2dcf70b030d72261ec7bd130058a6062644813d6
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
'InsignificantTests' is removed from all RHEL-8.10 targets and
'Packaging' feature is added to packaging RHEL-8.10 targets. [CI
Platforms]
Task-number: QTQAINFRA-6366
Change-Id: I0a83ccf5b75c7f2c7c8de871c267d286cf3a9296
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
We still have one offscreen build(non-dev).
Pick-to: 6.8
Change-Id: Ib0a4314387bc4388e75cb6dc65c220e167980805
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
It's broken in the VMs in our CI.
This follows 94a4f06fb88ec6c7fa5e31dfd28af4e9b3cdbdd8 in qtbase.
Fixes: QTBUG-126250
Task-number: QTBUG-125446
Pick-to: 6.8
Change-Id: Id61f3d51cea33a8648aa99941c0dc77b9da5c498
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Downgrade patchelf version from 0.18.0 to 0.17.2 on MacOs, Linux and
Windows.
It looks like there is a problem with 0.18.0 version, when modyfing the
Android libs. It causes an unresolved dependencies error when loading a
changed library.
Fixes: QTBUG-126861
Pick-to: 6.8
Change-Id: I5a95daae0a78aadede009535b2813483afcbc99d
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
This patch prepare install-patchelf.sh script for use on MacOs
Pick-to: 6.8
Task-number: QTBUG-126861
Change-Id: Id16462a2819da748ecd0b04f1df57968e9d90c37
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Fixes CVE-2023-34095. Also includes minor API changes, and few feature
updates.
Change-Id: I700ba8c60929f5ad797fc7f031b74ca1fd33efea
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
RHEL-8.10 will be run in parallel with RHEL-8.8 in CI as non-blocking
until RHEL-8.10 is confirmed stable, then it will replace RHEL-8.8. [CI Platforms]
Task-number: QTQAINFRA-6366
Change-Id: I4b470754895a72be026e869eb4e4d273eb3801b4
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
There are no WoA versions of JDK builds available from Oracle but
Microsoft maintains a WoA compatible OpenJDK build.
This change also removes the registry edit to disable Java
auto-update as the auto-update function in Java no longer exists.
Task-number: QTQAINFRA-6109
Task-number: QTQAINFRA-6385
Pick-to: 6.8
Change-Id: I672ef4ac7cbca3d62ecd6a646fd769aff1cad4c5
Reviewed-by: Simo Fält <simo.falt@qt.io>
The flag was removed from qtgrpc repo and has no effect now. Clean it
up from all platform configs.
Pick-to: 6.8
Change-Id: I59e200c6bcd63e03cc7c7477d502e456af8c9b01
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Add the missing QT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR for qnx and
Android 14 platforms.
Pick-to: 6.8
Fixes: QTBUG-127272
Change-Id: I60caa0141aa2d8566311d30677891201b12c4ed6
Reviewed-by: Dennis Oberst <dennis.oberst@qt.io>
The pip3 install calls contained the word 'install' twice.
Starting with newer pip versions, this seems to fail with:
/Users/qt/.pyenv/versions/3.9.7/bin/pip3 install --user install
virtualenv wheel html5lib
ERROR: Could not find a version that satisfies the requirement
install (from versions: none)
ERROR: No matching distribution found for install
Make sure install only appears once.
Pick-to: 6.8
Change-Id: I1bfc784d4e3d6a1c34d112e72e2739678d2f07ae
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
New tool version corrects crashes in Analysis. New configuration
fixes git config in Axivion dashboard server.
Task-number: QTQAINFRA-5965
Task-number: QTQAINFRA-6348
Task-number: QTQAINFRA-6260
Change-Id: Ice7c9efd398236e1f5186f756f23c321aba0cf79
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Updates VSB and VIP. Adds newer updated QEMU for VxWorks.
Set to build and run tests on qtbase.
Change-Id: I1dc97a48ff67dedd79de3659d2af2768616c61ca
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Add provisioning scripts for Firebird 5.0.0 to be able to compile the
QSql within the CI.
Fixes: QTQAINFRA-6303
Change-Id: I58bf45b0e291700eb1d58158b8cfd37e335d2195
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Packaging targets were accidentally moved to c++20.
Amends bf633f08b7
Amends b4bcf1e6ca
Fixes: QTQAINFRA-6424
Pick-to: 6.8
Change-Id: Iad6f8202329b471733cc1bc8ddf22feb3ffadfb4
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
This enables blocking test building.
Pick-to: 6.7 6.8
Change-Id: I184bd16a1c6a0ec45bfd9ee9b96c478dd2cf7c33
Reviewed-by: Toni Saario <toni.saario@qt.io>
build on wayland and test offscreen and wayland
Task-number: QTQAINFRA-6112
Task-number: QTQAINFRA-6308
Change-Id: I31a57794d455316fc98f1d84d3d275fa6e934b8e
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
On systems that do not follow the Filesystem Hierarchy Standard, such as
guix, the hardcoded `/bin/pwd` will fail to be found so that the script
will fail.
Use `pwd`, instead, so that the command can be found through the normal
path search mechanism.
Change-Id: I519d535bcaf53119c8800cc5545da9a0e48e677a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
The signtool is dependent on dotnet version. This must be updated
after the dotnet has been updated.
Change-Id: I346acf6dfefc8e70e61ea05a569ebb5cfcf04c85
Reviewed-by: Simo Fält <simo.falt@qt.io>
Required on arm for installing azuresigntool.
Change-Id: Ia0b2a4476338d090bc79d6a6bae46d1f09dc8600
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
The version variable that is used to define the packages to download was
updated to reflect the new version.
A new case was added for the new "Debian11" on "arm64" package which was
not a provisioned package on older version but is now provided.
As "Debian11" was not currenly loading "libclang.sh", a new script that
performs this process was added to
"coin/provisioning/qtci-linux-Debian-11.6-aarch64".
The newly sourced "libclang.sh" includes
"coin/provisiong/common/unix/common.sourced.sh", which sets up certain
common variables such as the used architecture and the platform id.
When "common.sourced.sh" sets "PROVISION_ARCH", that contains the
current platform architecture, it fails if the platform architecture is
not supported.
For "Debian11" on "arm64", the architecture, as reported by "uname -m"
is "aarch64", which is equivalent to "arm64".
"aarch64" was not handled by the script, so that a platform with that
architecture would result in a fail when sourcing "common.sourced.sh".
To avoid the failure, the case that sets "PROVISIONING_ARCH" to "arm64"
will not trigger when the reported architecture is "aarch64".
The specialized RedHat case was update to work specifically for version
9, to use the new specifically built package for Rhel9.2.
The default case, previously using an "ubuntu20.04" package, was
modified to use a "Rhel8.8" package.
A package for "Ubuntu20.04" is not currently provided anymore as the
platform was removed from CI and the new "22.04" package is not
compatible with all the platforms that would use it.
In particular, the new packages are built on a too new glibc, which will
then fail to link, due to undefined symbols in the produced Clang
libraries, when used on older-glibc platforms such as "OpenSuse15" and
"Rhel8.8".
The "Rhel8.8" package was specifically used as the platform for the
default package as it ships the older glibc, "2.28", of the supported
platforms, which should ensure that it works on the older-version platforms.
The "sha1" variables for cached downloads was updated to reflect the new
packages.
For provisioning on windows, the version variable and the sha1 variables
were updated to reflect the new version and the new packages, respectively.
Pick-to: 6.8 6.7
Task-number: QTBUG-111580
Task-number: QTBUG-121548
Change-Id: Ie7c1a8d8fe9114912d53a87f70ebfa00341a9d8a
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Install the ARM sccache binary to fix
/usr/local/sccache/sccache: Bad CPU type in executable
Pick-to: 6.8 6.7
Change-Id: I033a7c8cf88d0d1ad35a4406a5d2a878da8d17a7
Reviewed-by: Toni Saario <toni.saario@qt.io>
Ensure the coma-separated argument is transformed to CMake list
properly.
Amends 7c8bab37bb
Pick-to: 6.8
Task-number: QTBUG-122954
Change-Id: I082ad2c9c964c66feee3a8deff55ae137adafe8b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Previously, iOS (where we mostly using static linking) was also using
FFmpeg built as static libs, now switch to dynamic libraries, as
it was already done for macOS. Requires changes in cmake file in
qtmultimedia in order to configure with -DQT_DEPLOY_FFMPEG=TRUE.
Pick-to: 6.8
Fixes: QTBUG-120991
Change-Id: I0b014f24db3127697b76c6d1774437faae64a7c8
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Updated Windows build configurations in qtsafenderer.yaml
and qtsaferenderer-runtime.yaml.
Change-Id: I010d6ffb02e09d1ab604ebc93a39c22b1c9be1b0
Reviewed-by: Toni Saario <toni.saario@qt.io>
Fix CMAKE_SYSTEM_PROCESSOR definition for armv7le. This is needed when
using Windows host to cross-compile Qt binaries for QNX.
Fixes: QTBUG-125450
Pick-to: 6.8 6.7 6.5
Change-Id: I19df2ef9d4cc988f5acf4f09fa46b7014fac80d2
Reviewed-by: Toni Saario <toni.saario@qt.io>
There's a certificate issue in Paho MQTT which should be fixed in
the latest paho.mqtt.testing branch.
Task-number: QTBUG-126364
Change-Id: I1550122939ea8e6172dba005752978fcf3232fcb
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Also make sure apparmor parses the new rule after installing it.
Pick-to: 6.8
Change-Id: I25d2e753594fa86be2151e8a8da73b15b31b1584
Reviewed-by: Robert Griebl <robert.griebl@qt.io>
Add a sbom_requirements.txt file and install it using the
various platform specific pip installations.
Partially restores b87b44168c but
without the wheel cache.
Pick-to: 6.8
Task-number: QTBUG-122899
Change-Id: I8002898866acbc226ffebb59dcf5b3a58237ea34
Reviewed-by: Toni Saario <toni.saario@qt.io>
Like regular Android we test QtAA in CI with the maximum and minimum
supported SDK levels - currently 10 and 13. This commit bumps the
maximum level to 14 starting from QtAA 6.8.
Pick-to: 6.8
Task-number: QAA-2410
Change-Id: I8ef645b2c7bb1ee2b1fd20980bad0f593d308df8
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Turn on dynamically linked ffmpeg on Android on all hosts (Linux,
Windows and macOS).
Pick-to: 6.8
Task-number: QTBUG-122010
Change-Id: Ib3739173bee209ce73e77b75d7b345208da002e4
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Prepare for turning on dynamically linked FFmpeg on macOS:
- install binutils (for readelf) on macOS;
- readelf need to be used with absolute path on macOS. Prepare
workaround solution for this system in
fix_ffmpeg_dependencies.sh script;
- install patchelf on macOS;
- ensuring compatibility of sed call on Linux and macOS;
Pick-to: 6.8
Task-number: QTBUG-122010
Change-Id: I810566786de4363b4383f29467c6ca4395f9f668
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Prepare install-ffmpeg.ps1 script for turning on dynamically
linked FFmpeg on Windows.
Script on Windows will use MSYS2 and run same bash script as Linux host.
To make it possible first need to install binutils (for readelf) and
patchelf. As patchelf is not available by pacman, it is compiled and
installed from sources.
Pick-to: 6.8
Task-number: QTBUG-122010
Change-Id: Ide1e7da82f73b1663a3c5d7657c53057281ebe94
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Move fix_ffmpeg_dependencies.sh script from "linux" to "shared"
directory.
The script will be used on macOS but also on Windows (using MSYS2)
Pick-to: 6.8
Task-number: QTBUG-122010
Change-Id: If63d5e3ba7562b230cce26c7bfba728a2ae0a382
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
The fix_ffmpeg_dependency.sh script should also take into account
libraries with a _3 suffix in their names. This suffix will not be
used in the stub name.
Additionally, Android libraries have a suffix specifying the
architecture (e.g. _x86_64 or _arm64-v8a). Add an additional parameter
to the script with stub_sufix.
Pick-to: 6.8
Task-number: QTBUG-122010
Change-Id: Ia844b7b1f73c2d5264384ef26b41a292ea70d749
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Patchelf is needed for fixing FFmpeg dependencies,
the previous CR reveals details.
Patchelf is not available in the standard package manager on RHEL,
let's install it from sources.
Pick-to: 6.8
Change-Id: I724ffed9c48b9811e10de89519d8271e2f82260d
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Amount of macOS x86_64 hw is limited, it is better to use arm64
Task-number: QTQAINFRA-6380
Change-Id: I56c5ffa424952d3880ebc0ad94cdb54e0a7c6453
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
FFmpeg provisioning script for Windows loads common configuration
options from a file and stores them in a global variable which is
modified per toolset (LLVM, MinGW, MSVC, Android). This results in
possible side effects when an installation for a certain toolset is
appending to the current state of the configuration.
Better approach would be to replace global variable usage with
additional parameter to InstallFfmpeg function and make each specific
installation pass complete set of configuration options that it
requires.
Fixes: QTBUG-125953
Pick-to: 6.8 6.7 6.5
Change-Id: I2484c8f65485d56efc5e02502fd31839ea14f164
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
When installing Mimer SQL only install the parts that we need for the
build. Avoid the Mimer SQL Server, DbVisuzlier, Java, documentation,
and replication support.
Pick-to: 6.8
Change-Id: I4cc3fb6f77469a2a566d35483034fe1eea9d6ffd
Reviewed-by: Simo Fält <simo.falt@qt.io>
Configuration windows-10_22H2-msvc2019-developer-build has been removed from CI.
Fixes: QTQAINFRA-6386
Change-Id: If2e5a2727101feb787d5e8bc3be7898156978c53
Reviewed-by: Toni Saario <toni.saario@qt.io>
RTA uses Ubuntu22.04 x64 in Android (linux) tests so java version needs
to be updated to 17 as it is on RHEL8.8 where the Android binaries are
compiled in CI.
Pick-to: 6.8
Change-Id: I1b0f0adfbedea58d3875b700d723db77163ab737
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
- We don't need msvc2019 builds; msvc2022 is used from Qt 6.8.0 ->
- Drop windows-10_22h2-msvc2019-developer-build and windows-11_23H2-msvc2022-developer-build will be added in separate change
- We have windows-11_23H2-llvm so windows-10_22h2-llvm ins't needed
- We have windows-11_23H2-mingw13-developer-build so windows-10_22h2-mingw13-developer-build isn't needed
Pick-to: 6.8
Change-Id: Id6c9637a70b7e3f5023c9397619621a27a83dc59
Reviewed-by: Liang Qi <liang.qi@qt.io>
The current way of using "cat <<EOB" works but then confuses
Gerrit's online editor and syntax highlighting after it becomes
wrong. using echo does the same and avoid this syntax highliting
confusion.
Pick-to: 6.8
Change-Id: Id97bf23f51dd9321cf7e02f263b957ed7655bfb5
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Smart app control(SAC) is a new feature in Windows 11 which
makes some installations extremely slow.
For example dotnet sdk takes 45 minutes to install with smart
app control and under a minute without it.
Reason why smart app control is so slow is that is tries to use
Windows defender and it is unable to connect to it as it is disabled.
At the moment it seems like it is not possible to disable the SAC
from shell effectively in provisioning. Registry edit does not
have immediate effect and forcing security service restarts cause
forced reboot. Only disabling it manually from settings will
have the desired effect.
Change-Id: I8c4ca7b87f31a13009ea02ab3186d9cdbc570272
Reviewed-by: Simo Fält <simo.falt@qt.io>
Update AGP, minSDK and androidx.core versions and qtbase
sha. This is needed after Gradle, AGP and minimum Android
version bumps done in:
* f22e9795d9a32fc4e9f4d6f2a70c2f831028342b (Gradle and AGP)
* 841bbbe8ec5eb9c822af4359278f73ae9a6599bb (Android 9 bump)
Pick-to: 6.8
Change-Id: I88d598ab1041847a995c37fc665467a2e9d12ab5
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This is required to create Qt for Python wheels for Android.
Pick-to: 6.8
Change-Id: Ifc4bab4ef90c81096d8d1c7026b6dead894439d2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Init repository logic eats the '-verbose' argument as the one that
is handled by internal init repository logic. The argument is also
a valid argument for configure script.
Introduce the 'COMMON' argument for of the qt_ir_commandline_option
macro. The argument indicates that the option is applicable for both
configure and init-repository scripts. This is implemented only for
boolean arguments. The '-verbose' argument adopted the new feature.
Pick-to: 6.7 6.8
Change-Id: I5cb76502c8ecccccf3546fd7f7f111fe25700d0a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Set the argument name but not it's value in SHORT_NAME condition.
It works currently since the argument is visible from upper scope.
Pick-to: 6.7 6.8
Change-Id: Ie470a256f4735aeac5f50f0e6e5d17e2bb274ba2
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Adding all builds Wayland which is the default display
server for Ubuntu. Testing each module in X11, and
testing Wayland client plugin for each module in
Qt Wayland integration. [CI Platforms]
TestDocs was removed, see also QTQAINFRA-6068.
Task-number: QTQAINFRA-6322
Task-number: QTQAINFRA-6098
Task-number: QTQAINFRA-6203
Change-Id: I8db0d861940bdd558384f1cc24243c6a84e133e2
Reviewed-by: Liang Qi <liang.qi@qt.io>
- Updates Visual studio 2022 to 17.10.0
- Disables smart app control to reduce provisioning
time from 1h+ to ~5min.
Fixes: QTBUG-125437
Task-number: QTQAINFRA-6109
Change-Id: I117b7a1f8e6e80c555dca3ba12d836223bcad7f5
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
The flag does nothing for ages and the standard is enforced by default.
Pick-to: 6.8
Task-number: QTBUG-125015
Change-Id: I901c0bf58d91cb795d63c4769fb054eee5c5788a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
The venv package is part of all other Ubuntu and Debian configurations
but was left out from the 24.04 one.
Pick-to: 6.8
Change-Id: I1daf2e78ca755cdeef0e6c6e17820badce65bbc3
Reviewed-by: Toni Saario <toni.saario@qt.io>
There is no arm64 version of it, let's just use the x86_64
binary for now and use the emulation.
Pick-to: 6.8
Change-Id: Ife46fe432ce9594d7e6adab8159318a5322e1cef
Reviewed-by: Toni Saario <toni.saario@qt.io>
Python 3.12.3 is causing issues with Nuitka
Pick-to: 6.8
Change-Id: I0b497671bb328c129e6a7b2a7a83a563a234f9ec
Reviewed-by: Toni Saario <toni.saario@qt.io>
Ubuntu 23.10 introduced new apparmor features and those prevent bwrap
to work correctly until a apparmor configuration file is installed.
Pick-to: 6.8
Change-Id: Ie02bd98adb9e55c930c399e5e209c0c612907233
Reviewed-by: Robert Griebl <robert.griebl@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
The current name starts with "rhel_8.8" which can be confused
with a target on RHEL tests. The new name follows the other
Android test targets and make it clear that it's a multi-abi
test target.
Pick-to: 6.8
Change-Id: Ie90978ffe949603b75e9a57ef13e26aaa7e033ba
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Introduce GetVsProperty helper function that allows to retrieve Visual
Studio installation property by providing required component (optional).
It also offers the ability to choose which version of Visual Studio to
use (the oldest or the newest). Also add GetVsInstallationPath helper
function which is a handy shortcut to retrieve installation path
property.
Pick-to: 6.8 6.7 6.5
Change-Id: I90afca74db9a6f87b622c7fafec2243e085e89e0
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
This allows us to run unit tests that require real-world codecs on
debian/ubuntu
Pick-to: 6.5 6.7 6.8
Change-Id: I99a73506610ea430948692f8a88045394e747750
Reviewed-by: Simo Fält <simo.falt@qt.io>
It fails to provision, and we don't need it anymore
Pick-to: 6.7
Change-Id: Ifa5446613d00cbc6fbe90fe93718387d86f67eac
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
The significance of these configs are now controlled by the logic in
qtbase/coin/instructions/cmake_regular_test_instructions.yaml and the
per-repo override of the TART_SIGNIFICANT_TARGET_OSVERSIONS.
Change-Id: I4310eeb59ade34ed7a305a9aa08f63b23d557c07
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Windows is most picky wrt exporting/symbol resolution,
so it is a good platform to do a build check without tests.
Pick-to: 6.6 6.7
Change-Id: I477e20f8c8bf16e1206082ae0c2b3960c902989a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
This isn't supported for a longer time now.
Pick-to: 6.6 6.7
Change-Id: Id10fb6c73459e5f10f854b417af6b14eec2e0f78
Reviewed-by: David Schulz <david.schulz@qt.io>
This reverts commit a9205624ea.
Reason for revert: "Fix" for signing issue is finally in and we need these WoA packages
Change-Id: I4e05e3be150c6f472f2088a4478c414f215deb80
Reviewed-by: Simo Fält <simo.falt@qt.io>
Added new QEMU configurations
Fixed compile error in Axivion build (prevents dev update)
Change-Id: Iec75f86b241584c4b48904a13fa8e0aad032973a
Reviewed-by: Tarja Sundqvist <tarja.sundqvist@qt.io>
Add QNX8 toolchain for linux host. Windows host not supported at the moment.
Change-Id: I6de2f408bba8e96fc5bc49afe43d84f7021885f4
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Gradle 8 and AGP 8+ require JDK version 17 to work properly, this is
needed for CI test runs of Android.
Pick-to: 6.7
Task-number: QTBUG-106907
Change-Id: I437ee6752fe12ce4d40fbfe1af2bfff1b4ca243b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Following Android minimum version criteria, Android 9 would be the
version matching 90% market share range.
Fixes: QTBUG-125022
Task-number: QTBUG-124890
Change-Id: I6e103532f7c558f0111c9f1582a1b80cd61c47e4
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Allows us to first see how macOS 12 tests in Tart on production works
before starting to move the blocking arm targets to Tart. Later configs
will be directly replaced and original ids will be used.
Change-Id: Ia4c64641af2dcdbe145e42f7aed97f5e98ef8fab
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Signing in windows-11_22h2-arm64-msvc2022 is broken so we need to remove
packaging flag temporarily to enable submodule updates
Fixes: COIN-1149
Change-Id: Ia4a3ab07f2204c18b0f54dbe24d1a95fd28cad18
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Add 'Packaging' flag for new Windows on Arm build.
Remove 'Packaging' flag from builds which aren't used in packaging side:
- vxworks build on linux
- msvc2019 builds
Change-Id: I8b56d4f087c59a4e841d3789d1c3acff5fdb7b09
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Allows us to first see how macOS 13 tests in Tart on production works before starting to
move the blocking arm targets to Tart. Later configs will be
directly replaced and original ids will be used.
Change-Id: I3e77d07f224bbfcb3b4673d83fb4684ad0de4887
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
The venv module is part of the default Python installations in most
Linux distributions except the Debian line. However, we had this already
installed on Debian images, but not on Ubuntu images. This is required
for Qt Interface Framework.
Change-Id: I255f27edf53acbb7ab258d5495636759bddc888b
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Visual Studio 2022 is the first msvc having natively support for
building and debugging ARM64 apps. [CI Platforms]
Provisioning needed to take new Get-CpuArchitecture
helpers.ps1 function into use in several installations.
Requirements for other branches
- Get-CpuArchitecture helpers.ps1 function
- Skip qtwebengine with Windows 11 ARM (QTBUG-124632)
List of excluded installations in Windows on ARM:
- Could be added later
- MinGW - QTQAINFRA-6079
- DirectX SDK for RTA
- libclang
- mcuexpresso
- fbx for msvc2022
- Ruby
- For python
- conan
- emsdk
- Not supported yet
- FFmpeg
- Msys2 (for FFmpeg QTBUG-124399)
- MySQL
- PostgreSQL
- Java JDK
- Strawberry Perl
Task-number: QTQAINFRA-6109
Task-number: QTQAINFRA-5855
Pick-to: 6.7
Change-Id: I4130e78add53f8a6e05eb41b7617b3f9ca802178
Reviewed-by: Simo Fält <simo.falt@qt.io>
When evaluating the arguments from the config.tl.opt file we need
to consider that arguments may contain the escaped semicolons for
the list arguments. The escaped semicolons '\;' needs to be converted
to a CMake brace escaped sequence to make sure that semicolon persist
when running the command.
Fixes: QTBUG-124265
Change-Id: I051f856b43f75b0bac17ae13bd8c7de540f8c794
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
No need to wrap the sed call in a shell, just invoke sed directly.
And reduce the two separate sed invocations to one with two file arguments.
This change is purely aesthetic, functionality should be identical.
Pick-to: 6.7 6.5
Change-Id: If841301077e1c21fe846b28b5f7f6af422d86b93
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
This also switches to building with Xcode 15, as that's the Xcode
currently provisioned on our macOS 14 VMs.
The gRPC provisioning has been disabled for macOS 14 on ARM
due to linking errors for OpenSSL due to a faulty CMake find
scripts or tests.
Change-Id: Ia99720c8f1813bb0baf2062e3488202a4191eaf0
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This reverts commit 0477a26495.
Reason for revert: This change breaks qtinterfaceframework mingw build
Change-Id: Ib0790c2bee99aa0133925b7663999e80906d882d
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Ubuntu 22.04 arm64 with minimal provision is added for RTA use only:
Git, Java and GCC are installed in 02-apt.sh script. Python 3.10.12
is found already in Ubuntu.
Task-number: QTQAINFRA-6212
Change-Id: Ib9931974179626afacdc7d6c03810a333ed3ae8e
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Having 'Packaging' feature in config will cause binary artifacts to be
exported for release. This config is not part of release content.
Task-number: QTBUG-124818
Change-Id: Ie3add012ddaeacc771713958b328af7d334be266
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
It seems that the existence of .bash_profile on Debian systems prevents
the .profile file from being read on login, which means some additions
to PATH that are essential for e.g. the Web Engine build are not made.
Pick-to: 6.7 6.6 6.5
Change-Id: Ib271ef49e573fc0588ffbaa9bebbfda4469b60f9
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
use '=' and '?' instead of '\=' and '\?' and wrap the curl URL
in quotes.
Amends 39517ef0d0.
Pick-to: 6.7
Task-number: QTQAINFRA-6166
Change-Id: I6e6333cdb94043d5476cac5bc631ea1ca16bab1f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Qt 6.7 has the minimum supported Android version as 8, this applies
that to the CI as well.
Pick-to: 6.7
Task-number: QTBUG-111919
Change-Id: Id4c9eda29f1b61bf739eae3624b07f44a893cfae
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Android 13 system image was still being downloaded and an emulator
created for it while it's not being used in CI, so it's just adds
unnecessary load to provisioning.
Pick-to: 6.7
Change-Id: Ie33c82fd578dcfe68a77426c8e5c0cf047938833
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Currently MySQL is enabled only for Windows 10 22h2 msvc2022 and it
uses deprecated MySQL Connector/C. This change updates MySQL client
library by replacing MySQL Connector/C with MySQL 8.0 Server package
which contains a newer client library that works in other
Windows targets.
This change also enables MySQL in other non-packaging
Windows 10/11 targets except ARM, as Windows on ARM still
lacks MySQL support.
Task-number: QTQAINFRA-4999
Fixes: QTBUG-106097
Change-Id: I4472d3e441668bada18268fc4486bbbeefc4afd6
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
For the addition of ARM64 to our checked packages, this helper function
will come in handy as it is more fine grained than Is64BitHost.
Change-Id: I8956c1ca6e445c0b783a39e4d42069199496f053
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Adding Git\usr\bin\ to path would make it possible to use vim and
compile in ssh session
Task-number: COIN-1060
Change-Id: Ic96d787de3cc71c685e09ae6fd00c35745e747a1
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Linux developer builds on QEMU (armv7 and arm 64) block CI for unknown
reasons.
The platforms host Ubuntu 22. Since Ubuntu is a platform of its own,
mark this insignificant in order to unblock CI.
Task-number: QTQAINFRA-6245
Change-Id: I95dacca73eb9f5ea004601611e654cd75a3d0bf4
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
22H2 is replaced by Windows 11 23H2.
Task-number: QTQAINFRA-6113
Task-number: QTQAINFRA-6075
Change-Id: Ifd960a4c18b19f91a2624a23eacffa59c2faefac
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This change removes 'InsignificantTests' feature from Windows 11 23H2
platform configurations as there has not been increased test fail
rates compared to 22h2 targets in the past 10 days.
Also add 'Packaging' to windows-11_23H2-msvc2022 target
Task-number: QTQAINFRA-6113
Task-number: QTQAINFRA-6075
Task-number: QTBUG-124244
Change-Id: I8ddb9dfa45199982511f46841d1be30757055b25
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
The 'headersclean' flag is not a "feature" anymore, so qtbase doesn't
propagate it for other repositories. CI no need to set either
INPUT_headersclean=ON or add -headersclean flag to the
qt-configure-module script command line.
Task-number: QTBUG-121722
Change-Id: I6970d6a04dd51ad4d3df114212f6410b80ddc6a1
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
If Gradle is not present in the system, it's downloaded from the URL
from the Gradle wrapper. Also, the same for AGP when an Android
project build is done. Currently, that's done on every integration,
and that can be unreliable due to networking flakiness. With this
patch, a Gradle build is done once during provisioning where the
downloads of Gradle and AGP dependencies are downloaded.
Fixes: QTQAINFRA-6166
Fixes: QTQAINFRA-4726
Fixes: QTBUG-117203
Fixes: QTBUG-114699
Change-Id: Ic9fd8aeea3379ca1d45ffeb4523a52e2846fcabb
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Update to latest (as of now) Android emulator version 34.1.19, which
might solve Vulkan crashes on some CI tests.
Pick-to: 6.7 6.6 6.5
Task-number: QTQAINFRA-5971
Change-Id: Ic81158f44ac5c922bfdbe6f5c04900234e063615
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Was previously only added for 8.4 and 9.0
Pick-to: 6.7 6.5
Change-Id: Ifa22b6836818ad59b6f3dcfd6b1a6dbc1293782b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Windows 11 23H2 version which will replace Windows 11 22H2 once the new version is deemed as stable. Until then, 23h2 tests will be set as insignificant.
Task-number: QTQAINFRA-6075
Task-number: QTQAINFRA-6113
Change-Id: I15054813896210fadf14da815ad5a7b3e402e800
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Update tool from version 7.7.1 into version 7.7.4. License file
is also updated.
Change-Id: Ia38ed9d58bd4b5e5c1efdacca866faf4bfe95a09
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
And bail out with proper warning if cmake is missing
Change-Id: I39a9e340f873f8de05264d57b2a80fb754b30fbe
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Updated:
Visual Studio Professional 2022
Visual Studio Build Tools 2022
CL new version 19.39.33523
BackgroundDownloader.exe disabled to reduce CPU usage during idle.
Task-number: QTQAINFRA-6204
Task-number: QTQAINFRA-6190
Task-number: QTQAINFRA-6206
Change-Id: I25dfc393a4b320cbaddefda2c8ff4b1738a776d8
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
The actual tests run in a special setup which takes care the tests are
build and run accordingly. The 'DisableTests' feature should make sure
the standard test build is skipped.
Change-Id: I7889c86b19a0f049fd3f682c9f70ed8acf5aeabe
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Robert Griebl <robert.griebl@qt.io>
If either -skip <module> or BUILD_<module>=OFF is set from command line
we should avoid processing the module dependencies and exclude it from
the list of modules that needs to be build.
Pick-to: 6.7
Change-Id: Ieec8db085221cc4abd5d8ac83c06ecce25d5d4b0
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
qtbase/45fd36f1480a6229879a4e59236ffa1d1d22dfbf triggers internal
compiler errors in MSVC2019 when configuring Qt with -c++std c++20.
Move the build-testing of the C++20 standard to
windows-11_22h2-msvc2022.
Change-Id: I7591223ae391471c61a80883f305c73e43945714
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Debian arm only has Wayland, and there is no QtWayland QPA plugin
available yet during the integration of each module. We can run
offscreen mode for now. And enable tests on Wayland in qtwayland
and qt5 integration.
Pick-to: 6.7 6.6 6.5
Task-number: QTQAINFRA-5594
Change-Id: Ie06d0b88509f9e55c96ce3b05b18ff8cec672f6b
Reviewed-by: Liang Qi <liang.qi@qt.io>
WebDriverManager will be used to install correct version of
chromedriver for WebAssembly Selenium testing.
Task-number: QTBUG-122729
Change-Id: I49b61da3d8dd20b36ec6965c258a6a608ac33a63
Reviewed-by: Simo Fält <simo.falt@qt.io>
The bootstrap-agent is the 'responsible process' in TCC terms when
it comes to whether a test should be allowed to access the microphone.
https://www.qt.io/blog/the-curious-case-of-the-responsible-process
By giving this process the permission explicitly, by modifying the
TCC database, we ensure that all tests run as child processes also
get this permission.
Change-Id: Ia03084ac89f0717ac6457b0035769f4a9863495b
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
The -help option was parsed by init-repository and not passed along
to configure. Make sure to pass it.
Currently this means a developer won't be able to see the
init-repository help when using the configure script.
Task-number: QTBUG-120030
Change-Id: I5d8c0f9147e1fcd5522ab98ad9ab0947a8411d1a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Make sure that -submodules argument is processed when we assume that
the top-level Qt meta repository is already initialized.
Amends 2c9664ca33
Fixes: QTBUG-122954
Change-Id: Id7a325c2dd670667e8b0fdcd607b52080b118f4f
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Calling configure will now implicitly run init-repository when
appropriate. See further down below for what "appropriate" means.
All supported init-repository options can be passed to configure as
except for -mirror, -oslo, -berlin.
This includes useful options like -submodules, -no-resolve-deps and
-no-optional-deps.
When running configure on a qt5.git clone without any submodules
cloned, configure will exit with a helpful error message suggesting to
pass -init-submodules, so it automatically clones missing repositories.
This means cloning is opt-in, so that internet access is not done
implicitly.
The error message also suggests passing the -submodules option.
This will affect which submodules will be cloned by init-repository
and which submodules will be configured by configure.
In this case -submodules is effectively an alias of
init-repository's -module-subset for cloning purposes.
When calling configure a second time, without -init-submodules, on an
already configured repo, init-repository behavior is entirely skipped.
-submodules now accepts init-repository-style special values like
"essential", "addon", "all", "existing", "-deprecated" for the purpose
of cloning submodules. The values are then translated into actual repos
that should also be configured or skipped by configure.
The default subset of cloned submodules is currently the same one as
init-repository, "default", which clones 44 actively maintained
repositories as well as deprecated submodules.
If configure is called a second time WITH -init-submodules, it's the
same as calling init-repository --force to re-initialize submodules.
In this case passing something like
--submodules existing,<additional-submodules>
might make sense to add or remove submodules.
As a drive-by this also fixes the bug where you couldn't pass a
configure -- -DFOO=0
parameter to configure, because it got treated as '0>', redirecting
from a different stream than stdout, leading to empty content in the
file.
[ChangeLog][General][Build System] The configure script now implicitly
calls init-repository when appropriate and accepts init-repository
command line options.
Fixes: QTBUG-120030
Task-number: QTBUG-122622
Change-Id: Iedbfcbf0a87c8ee89e40d00b6377b68296a65a62
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
The new test uses the recently introduced upstream cmake test
infrastructure module, to ensure the execution log output is identical
between the old perl script and new the cmake script for a few basic
use cases. It is not an exhaustive test of all features. It should
work on Windows, macOS, Linux (assuming perl is installed).
There are also a few tests that only apply to the cmake-script
version for features that exist only in the latter (like the 'existing'
module-subset key).
The test is a 'manual' test instead of an 'auto' test because we don't
really want to clone so many submodules as part of every qt5.git
integration in Coin.
In the future, we could potentially add a nightly Jenkins job to run
the tests.
Task-number: QTBUG-120030
Change-Id: I4201d734c2877109102518b073dec24bb63edc24
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
It will be used to write some manual tests for init-repository to
ensure there are no big regressions between the perl and cmake
scripts.
It is only used for the manual tests and is not shipped or installed
as part of the Qt installation.
The code is licensed under BSD-3.
The files were renamed to be more inline with Qt's naming.
The contents of QtIRTestHelpers.cmake is one function from
<cmake-upstream>/Tests/RunCMake/CMakeLists.txt
The contents of QtIRRunCMake.cmake is the whole file
<cmake-upstream>/Tests/RunCMake/RunCMake.cmake
Task-number: QTBUG-120030
Change-Id: Ia3f459fe25b9b8c683a69b5dded2019e03eebdb9
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
init-repository is now implemented using CMake + .sh / .bat scripts.
The intent behind the change is not to require Perl to checkout and
build Qt, because it can be troublesome to acquire on Windows and it
can also lead to issues during builds due to CMake picking up a Perl
distribution-shipped compiler.
All previous options were ported over like
- module-subset
- alternates
- etc.
A few new options were added:
- --resolve-deps / --no-resolve-deps
- --optional-deps / --no-optional-deps
- --verbose
and some other internal ones for testing reasons.
The new script does automatic resolving of dependencies
based on the depends / recommends keys in .gitmodules unless
--no-resolve-deps is passed.
So if you configure with --module-subset=qtsvg, the script will also
initialize qtbase.
If --no-optional-deps is passed, only required dependencies ('depends'
ky) will be included and optional dependencies ('recommends' key) will
be excluded.
The new script now has a new default behavior when calling
init-repository a second time with --force, without specifying a
--module-subset option. Instead of initializing all submodules, it
will just update the existing / previously initialized submodules.
It also understands a new module-subset keyword "existing", which
expands to the previously initialized submodules, so someone can
initialize an additional submodule by calling
init-repository -f --module-subset=existing,qtsvg
Implementation notes:
The overall code flow is init-repository -> cmake/QtIRScript.cmake
-> qt_ir_run_main_script -> qt_ir_run_after_args_parsed ->
qt_ir_handle_init_submodules (recursive) -> qt_ir_clone_one_submodule
with some bells and whistles on the side.
The command line parsing is an adapted copy of the functions
in qtbase/cmake/QtProcessConfigureArgs.cmake. We can't use those exact
functions because qtbase is not available when init-repository is
initially called, and force cloning qtbase was deemed undesirable.
We also have a new mechanism to detect whether init-repository was
previously called. The perl script used the existence of the qtbase
submodule as the check. In the cmake script, we instead set a custom
marker into the local repo config file.
Otherwise the code logic should be a faithful reimplementation of
init-repository.pl aside from some small things like logging and
progress reporting.
The pre-existing git cloning logic in QtTopLevelHelpers was not used
because it would not be compatible with the alternates option and I
didn't want to accidentally break the pre-existing code. Plus
init-repository is a bit opinionated about how it clones and checks
out repos.
The dependency collection and sorting logic uses the pre-existing code
though.
See follow up commit about implicitly calling init-repository when
qt5/configure is called and the repo was not initialized before.
[ChangeLog][General] init-repository was rewritten using CMake. Perl
is no longer required to initialize the qt5.git super repo.
Task-number: QTBUG-120030
Task-number: QTBUG-122622
Change-Id: Ibc38ab79d3fdedd62111ebbec496eabd64c20d2b
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
If the installed ca-certificates on tier1 is something that doesn't
exist in the repo anymore, re-install will fail. So just try to install
and expect update if a more recent version is available.
Pick-to: 6.7
Change-Id: Ib6e610f4908fcae6af7e79ecc37ffe600c6ee7af
Reviewed-by: Toni Saario <toni.saario@qt.io>
This upgrade is needed because msys2 20220319 fails to install
diffutils. Its url is broken. Diffutils was first added on 6.5
Fixes: QTBUG-122465
Pick-to: 6.7 6.6 6.5
Change-Id: If94cafed68f3400557e01365e743155e9b732dac
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
QtLite allows user to select subset of Qt features.
This combined with static linking and link time optimization
produces up to 80% smaller QML application
Change-Id: Ied98a564cca39901091e751303341f83b672a631
Task-number: QTBUG-117638
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
With new CI policy to always update packages when provisioning changes,
but system & packages are tied to a specific RHEL release i.e. --set=9.2
This could reduce unwanted upgrades and make provisioning more stable.
Task-number: QTQAINFRA-5658
Pick-to: 6.7
Change-Id: I898a793acf152ebb6e1f31c9b26a98f47145bd5a
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Update qdoc and qtattributionsscanner to the latest versions from
qttools/dev.
The qdoc binary is now built against libClang v17.0.1. It also supports
the new \compares and \compareswith commands introduced in Qt 6.7.
Pick-to: 6.7
Task-number: QTBUG-111580
Change-Id: I7d91226a89870968ecf3c9938ffcb451b1ea5c68
Reviewed-by: Luca Di Sera <luca.disera@qt.io>
This is required for macOS ARM target in license service
Task-number: QLS-455
Change-Id: I7029e58e84e54818e11f90540f6c830bf79b4d63
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
In n6.1, the target cpu is supposed to be x86-64 instead of x86_64.
Task-number: QTBUG-121343
Pick-to: 6.7 6.6 6.5
Change-Id: Id87a6eaaf73f093bbac66f245998cda6a3e992fc
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
This reverts commit cd515c6b07.
Reason for revert: Axivion licensing issue in dev provisioning has been fixed. Remove the insignificant flags from these Axivion builds for Qt Safe Renderer.
Change-Id: I0fb42fa1ed61a9044e5d53160481eeddbad87555
Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
Allows us to first see tart on production load before starting to
move the blocking arm targets to tart. Later configs will be
directly replaced and original ids will be used.
Change-Id: I865e6fe46b61828b6123b69973a2a4d209697c5f
Reviewed-by: Toni Saario <toni.saario@qt.io>
Saving symlinks is important when we build dynamic libs,
it will be needed for building QtMM + dynamic ffmpeg.
Task-number: QTBUG-120989
Pick-to: 6.7 6.6 6.5
Change-Id: I58c040a81f1fa6a3b316ace864fda0687415fd0a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Add -DBUILD_<repo>=OFF suggestion for the cases when configuring Qt
using CMake and the repo dependecies are missing.
Change-Id: Iaa370b49e8fd634bebb7c8300d076165c51dec5e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This amends commit c66f8407a8 by running
the script on the remaining Linux configurations where gdb stacktraces
were already working, in order to avoid breakage in the future.
Change-Id: Ic069ed5369f761dcc3557b2ea7e09de703ebc142
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
packagekit service can't be disabled (it's missing an [install]
section), and sometimes it gets activated by other means before
PackageKit uninstalled.
So mask the unit, and try to stop the service repeatedly in case it
resists.
Fixes: QTQAINFRA-6078
Change-Id: I2c93b548007f24f7d7f632410d146eb472e2b4fb
Reviewed-by: Simo Fält <simo.falt@qt.io>
This reverts commit c15fb88b1a.
The problems have been fixed in both modules.
Change-Id: I4ac395f1f6604eade7f42f64bdd5938ace6fc1e4
Reviewed-by: Robert Griebl <robert.griebl@qt.io>
For WebAssembly selenium tests we need a newer
version of Python (>3.7), so install 3.11 instead
of default 3.6.
Selenium and Netifaces pip packages are also required.
Change-Id: I9e3b317b359e8775d90bd143ff9692fc2a90cf42
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
We have to replace static linkage with dynamic one due to
licensing issues.
The related patch in QtMM
codereview.qt-project.org/c/qt/qtmultimedia/+/523405
introduces cmake var QT_DEPLOY_FFMPEG that enables deployment
of ffmpeg shared libs to the installation lib dir or
the build lib dir (for dev builds).
These are build/tests results for the current CR
together with the patch in QtMM
testresults.qt.io/coin/integration/qt/qtmultimedia/tasks/web_rescheduled_qt_qtmultimedia_1703082976669
The related patch
codereview.qt-project.org/c/qt/qtbase/+/525100
fixes the deployment tool on Windows.
The plan is to have the set of changes for Windows in
6.5.4, 6.6.2, 6.7.0.
It was agreed that we want to backport shared ffmpeg to 6.6 and 6.5.
Pick-to: 6.7 6.6 6.5
Change-Id: Ie4d8621a98fb93715c32e49c830bfd715ed0e8a5
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
The update will go tohether with dynamic ffmpeg build on Windows.
Pick-to: 6.7 6.6 6.5
Change-Id: I7a72d4009c8a8e4030899b526bad9cfedd6f45a7
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
FFmpeg version was between n6.0 and n6.1 due to some hot fix
for having it compilable on CI. Since n6.1 has been release,
we should update.
Pick-to: 6.7 6.6 6.5
Change-Id: I0d88599be53748eeb038287abe8aad6c0f189933
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
On Linux, this requires that gdb can be found in PATH, and that no
kernel security settings like yama.ptrace_scope prevent it.
Patch contains also a drive-by architecture detection fix for Debian arm64.
Fixes: QTQAINFRA-6029
Fixes: QTQAINFRA-5940
Fixes: QTQAINFRA-6030
Fixes: QTQAINFRA-6046
Fixes: QTQAINFRA-6012
Fixes: QTQAINFRA-5930
Task-number: QTQAINFRA-5933
Change-Id: Ie6debde94c1cc5783161ffa7354b58734c372702
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Currently CI doesn't cache specific Android Emulator version,
so after an update was availabe 33.1.23 is broke RHI tests on
Android 13 emulator. The last known emulator version to to work
was 32.1.15, so as a workaround we install this specific version.
Fixes: QTBUG-119884
Pick-to: 6.7
Change-Id: Iec56207b6142d97a9dfabc0fb07a920c868e58b1
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
(cherry picked from commit 481825822b)
Reviewed-by: Zoltan Gera <zoltan.gera@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
When the catch all is hit the exit statement only returns from
the case statement. Remove the exit statement.
Check that some sha was returned, otherwise empty input
sha will result in empty calculated sha, which causes
false positive sha check.
Pick-to: 6.7
Change-Id: Iddb9562cf7e12f695e21ca63b302c9217fc98aab
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Updating axvion bauhaus-suite tool into version 7.7.1 and
license file.
Task-number: QTQAINFRA-5992
Change-Id: I614211cd67457a2a725ffffa7dbab8d9764d752d
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Drop macOS 11 out from dev (6.8) branch as it is EOL or very near it. This removes macOS 11 test configurations and bumps macOS targets to
12 in provision scripts.
Task-number: QTQAINFRA-6009
Change-Id: I2ea2764fb4a14eb508e39330acfc0947b94343fc
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
There is no sccache binary for arm mac so in case of failure the fail
parser reports failing sccache command as a reason.
Pick-to: 6.7
Change-Id: I3bfd6152d5be2cd00fd19762ed89ae0bc4f7ebcc
Reviewed-by: Toni Saario <toni.saario@qt.io>
macOS 11 is at its end-of-life and should be dropped from Qt dev (6.8).
Task-number: QTQAINFRA-6009
Change-Id: I76325a0ae540568085c803925d28c88f99e41d3c
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Add Insignificant to Axivion analysis builds for QSR-runtime. If the
Axivion analysis fails to run for QSR dev-branch, it should not block
the build.
Change-Id: I72240121eb33a742edbafd08ccf10f72efe6b96e
Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
Using the same solution as all the other Windows VMs
Pick-to: 5.15 6.2 6.5 6.7
Change-Id: I643f332c99e62ba8037e2db60fa69298a585b306
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
This reverts commit a3c489b272.
Reason for revert: Mistakenly replaced 'set -e' => 'set -x' just hides the problem on macOS 11 and 12. The patch needs to be investigated again
Pick-to: 6.7
Change-Id: I238395fd2ae1fc362a0c9af02e2d48acce22e0dc
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
qtgrpc was the only module left because of QTBUG-120227.
After resolving that, enable in all of qt5 repository.
Task-number: QTBUG-120227
Fixes: QTQAINFRA-5375
Change-Id: I44782990eb54e4e3955141f999dcb1f93d5f7bf3
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Saving symlinks is important when we build dynamic libs,
it will be needed for building QtMM + dynamic ffmpeg.
Pick-to: 6.7 6.6 6.5
Change-Id: Ic356a9c3df727a1afe14e8553728952d3b106ba3
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Currently does not pass on these modules and blocks CI.
Task-number: QTBUG-120326
Change-Id: Ia6d3987112cb29757e668b69757166e896abbe70
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Windows recognizes newer qemu as different display, which needs
to be handled as well.
Pick-to: 5.15 6.2 6.5 6.7
Task-number: QTQAINFRA-5987
Change-Id: I6819bfa6dd90a3f54cfcb0b5b885ba909052d375
Reviewed-by: Simo Fält <simo.falt@qt.io>
Making emulator errors and warnings available directly in the ci run
logs makes it easier to debug issues.
Amends 1c27f95d01.
Task-number: QTQAINFRA-5596
Pick-to: 6.7
Change-Id: I2388dcf9fcdcf18803ff03266493584216f92fdc
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
We support Xcode 14 (SDK 13) as the minimum, documented on
https://doc-snapshots.qt.io/qt6-dev/macos.html
Bump our macos static tests and ios tests platforms to build on macOS
13, just like all other macos configs, and to also follow what we
document.
We can then enforce the minimum SDK version as a build time error
when building qtbase.
Change-Id: I7ce223983a31c14f8997d2e6f9b061909e326f6d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Bump mingw version from 11 to 13 for SafeRenderer tooling. Mingw version
was updated with the following task, but only QSR runtime was updated.
Task-number: QTQAINFRA-5045
Change-Id: I385aedcd55112c3e5732189173bcdd62e777d02e
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
We switched to spdx/reuse a while ago. That transition is now almost
complete, so let's remove the old files. The new ones are in the
LICENSES directory:
LICENSES/GPL-2.0-only.txt
LICENSES/GPL-3.0-only.txt
LICENSES/LGPL-3.0-only.txt
LICENSES/LicenseRef-Qt-Commercial.txt
LICENSES/Qt-GPL-exception-1.0.txt
Pick-to: 6.7
Task-number: QTBUG-67283
Change-Id: Ie42673e28071dbfcb4df6022d15a0eb545305f7a
Reviewed-by: Lucie Gerard <lucie.gerard@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
The truemotion1 decoder depends on a truemotion1data.h file which is
part of FFmpeg. This header file has a reference to GPL licensing, and
although the header provides a rationale for why the decoder tables are
not copyrightable, we prefer to not distribute this decoder as part of
the online Qt installer.
Users who need ability to decode truemotion1 format video files can do
so by recompiling the QtMultimedia FFmpeg media plugin against a custom
build of FFmpeg.
Task-number: QTBUG-118204
Pick-to: 6.7 6.6 6.5
Change-Id: Ia195ef9ce576d18047e7b38bbc5019648ba42b4c
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
- Add a custom triplets for building dynamic android libraries
- Set `ANDROID_NDK_HOME` environment variable, as it is needed when
vcpkg builds for Android.
- Install `perl-IPC-Cmd` when necessary, requirement for OpenSSL.
- Install openSSL for x64-linux-qt, x86-android-qt, and
x86_64-android-qt. The latter android triplet has been renamed from
vcpkg's official `x64-android.cmake` triplet to further clarify the
android abi.
- Adjusted version.txt to account for the existence of two OpenSSL. The
system OpenSSL now shows up as `System's OpenSSL` in `version.txt`.
Task-number: QTBUG-115715
Change-Id: I6cf9b808d26bbea97ebeeadac58cef5ede25ee50
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- Add a custom triplets for building dynamic android libraries
- Set `ANDROID_NDK_HOME` environment variable, as it is needed when
vcpkg builds for Android.
- Install openSSL for x64-windows, arm64-windows, and
armeabi-v7a-android-qt. The android triplet has been renamed from
vcpkg's official `arm-neon-android.cmake` triplet to further clarify
the android abi.
- The version of the libraries installed via vcpkg is being written to
versions.txt as `vpckg <library-name> = <library-version>`
Task-number: QTBUG-115715
Change-Id: I4a17bf00e59c3c90968941be6a21c1d961ba3d97
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- Building the vcpkg executable
- Cloning an internal mirror of the vcpkg's official repository, and
setting the VCPKG_ROOT to its path. The mirror is under my personal
namespace in `git.qt.io` and will be replaced by official qt mirror
in the future.
- Adding an empty `vcpkg.json` for Linux.
- Setting environment variables for Binary and Asset cache
- Run `install-vcpkg.sh` on all active Linux hosts
Task-number: QTBUG-115715
Change-Id: I9a4249a2fc265e4dc4c3083d1b411dffb84bfdf3
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
- Downloading the vcpkg executable
- Cloning an internal mirror of the vcpkg's official repository, and
setting the VCPKG_ROOT to its path. The mirror is under my personal
namespace in `git.qt.io` and will be replaced by official qt mirror
in the future.
- Adding an empty `vcpkg.json` for Windows
- Adding a `vcpkg-configuration.json`
- Setting environment variables for Binary and Asset cache
- Run `install-vcpkg.sh` on all active Windows hosts
Task-number: QTBUG-115715
Change-Id: I7a8a883a1523f27506ff31757f5aad5221de0698
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Vcpkg needs zip for compressing the build artifacts, etc. for caching.
Task-number: QTBUG-115715
Change-Id: I1f0c056ca44a94ddfc181e6ce0213790e616e431
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
jq is used during the provisioning of vcpkg ports to extract the version
string of packages from vcpkg.json file.
Task-number: QTBUG-115715
Change-Id: I73d95b8d8399b25a9aa58855b9d65cac968618fc
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Use the latest Android 14 image in CI Android emulator. Build ID:
UE1A.230829.036. This should reduce tests crashing with Android.
Task-number: QTQAINFRA-5971
Pick-to: 6.7
Change-Id: Id9c221118163feef722e402d9e412381809b6b72
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Many users push Qt contributions to the Github repository mirror(s), however we cannot accept these contributions. This file directs users
to Qt's contributing guidelines wiki page.
A .github/pull_request_template.md file has also been created for Qt
project.
Fixes: QTBUG-116663
Pick-to: 6.7 6.6 6.5
Change-Id: Iea4cba8e6cb90859bd364ae4480be0e000f9bae6
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
We are planning to add llvm based mingw build in the online installer
from Qt 6.7.0 ->
Task-number: QTBUG-119386
Change-Id: I4603e1492e54b7b05e67e0f2f422cc668bf7d822
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
This is required for macOS ARM target in license service
Task-number: QLS-455
Change-Id: Id424853f228f7105b9da56c3968ffa90df18ac61
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
The FFmpeg library should use dynamically linked OpenSSL. To make it
possible --enable-openssl flag need to be set. Additionally correct path
for OpenSSL need to be passed to FFmpeg configuration script.
Task-number: QTBUG-110805
Task-number: QTBUG-114954
Task-number: QTBUG-113980
Pick-to: 6.6 6.5
Change-Id: Id887c2c4083663a674123a0f0003b44661149116
Reviewed-by: Samuel Mira <samuel.mira@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
In order to avoid installing packages to one version of python and then
trying to use them from another version, stop installing python 3.8 and
simply install Python 3.11, along with pip.
Change-Id: Id2f63a6d1aff0d3fd3a5934887fe82a642f6ab92
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
Reviewed-by: Zoltan Gera <zoltan.gera@qt.io>
ICU packages has been compiled in LoA. This script will install
it into Debian.
Task-number: QTBUG-118676
Change-Id: Ic3ffa6881815d6017e7a855e62859b9104f49fae
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
The same wasm binary is used in every hosts so it doesn't matter in which
host the build is done. That's why move the build from intel mac to linux
to save limited intel mac resources
Change-Id: I13212fc3950e90b6da4298a7cf8b67c7fa96cfb8
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Our x86_64 pool is overloaded, so we need to reduce jobs.
As we're testing our packaging (universal) builds (both the one built
on x86_64 and the one built on arm64) on x86_64 for all macOS platforms
we support, it should be fine to remove the x86_64 tests of the
developer builds. These developer builds are still tested on arm64,
so the only test coverage we're losing on x86_64 are the subset of
tests that depend on QT_BUILD_INTERNAL.
Change-Id: Ia83964cc77d04ba796e3a59389ce000a51dcac93
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
We want access to the debugger, and also to be in sync with the CMake
shipped with the Qt SDK.
Task-number: QTBUG-118138
Change-Id: I4b43b9543e8e6ef23c9608a8e1c623ee16edfbd5
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Adds VxWorks VSB, VIP and libs. Exports VSB and work dir for
VxWorks qemu. Places VxWorks qemu launcher in home.
Use 8 cores on VxWorks target as qemu is run on 4 cores and
those 4 cores will be run at 100% all time due to RTOS nature
of VxWorks.
Task-number: COIN-297
Change-Id: If1ae42109a5a1ab7164f09a9eabf9fd9064fd0d9
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Jarno Lämsä <jarno.lamsa@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Add few targets that can be used to do speculative builds that may fail
without causing integrations to fail.
Change-Id: I44b1afcf4db22be2f930e31e2a5d39fb3697d2fe
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
They are green on all modules now.
Fixes: QTBUG-115945
Change-Id: I63838b6aa4e033938303bb13d0881f59004275c2
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
This reverts commit 50aa0031a4.
Reason for revert: Change replaces PATH and causes some built-in
commands to be replaced with breaking Git equivalents.
Change-Id: I9e25238c8f84cfc5ad44e1cdfb0a0fe33a60dcfe
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Add minimum set of libraries needed for running qtmultimedia autotests.
QNX qemu doesn't support graphics which limits the amount of runnable
multimedia autotests for QNX.
Task-number: QTBUG-92226
Pick-to: 6.6 6.5
Change-Id: I72973d5582389877dc112f98f5a62a7aaa07d23a
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
Add CMAKE_SYSTEM PROCESSOR definition and use that for finding processor specific binaries from QNX SDP.
Task-number: QTBUG-116082
Pick-to: 6.6 6.5
Change-Id: I893cac45058d8e0ac6228159e9b97bc59307ff35
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
On qtci-macos-13-x86_64 host CI tries to build and run the test on
Android (arm64) while we still haven't managed to install FFmpeg for it.
The same situation happened with qtci-linux-RHEL-8.8-x86_64 and Android
x86.
Task-number: QTBUG-110805
Task-number: QTBUG-114954
Task-number: QTBUG-113980
Pick-to: 6.6 6.5
Change-Id: If953221b104d5bb8fce9d48f8ecd977c2e80c41d
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
There is a specialized script to install FFmpeg for Android. Use it
instead of common install-ffmpeg.sh (which does not work for "android"
parameter).
Task-number: QTBUG-110805
Task-number: QTBUG-114954
Task-number: QTBUG-113980
Pick-to: 6.6 6.5
Change-Id: I2409e0f8ffe0f8b28eadce4738c2551fe00a7fbf
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Icu packages overwritten in ci-files01-hki, and file hash
changed.
Change-Id: I4755e13409cd4af008919ae3905fdb21fb893795
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Our self-built libclang cannot be used in this platform configuration as
it causes linker errors in Qttools. Disabling clangcpp also disables
QDoc.
Task-number: QTBUG-113649
Change-Id: I80ac05c173397bfc573740bbf7b02cc0acc7fadf
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Android Automotive should follow the lead for Q4A and regularly test
changes with both the minimum and then maximum supported SDK levels.
These are Android 10 and 13, of which 13 is already active on the CI.
This commit adds a Configuration for Android 10 and support for
creating an avd for that image.
Task-number: QAA-2073
Change-Id: I6d22c68f10a5da4b46664c67cf1369cbc7f5a537
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Without specifying tags for logcat output, the flag -logcat-output does
not actually write anything to file. Looks like -logcat-output is
designed to take any logcat output that would be written to the
emulator output and write it to a file instead, so if there is no
logcat output in the emulator output, there will be no output to file.
Task-number: QTQAINFRA-5908
Change-Id: If44265c858f8cb6854659fed6dd15d02cbf1d7ab
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Increase Ubuntu 20.04 disk size to 1 TB to fix webos build.
Change-Id: Id1290bf7745f500097341bd8476dc5be45b69b0d
Task-number: QTQAINFRA-5898
Reviewed-by: Toni Saario <toni.saario@qt.io>
We're running out of capacity for macOS 11 nodes, so let's reduce the
test coverage, now that macOS 11 is no longer a primary platform.
It's still supported, so we keep one x86_64 and one arm64 config.
Change-Id: I3fc4c3a12967b937ef59fd190074dac30dedd2be
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Also, axivion_config changed to correspond new release. Common
part of the configuration has been removed from all submodules
and added into common configuration.
Change-Id: I724f020e4299077068d0d623efb63700848e6bf4
Reviewed-by: Toni Saario <toni.saario@qt.io>
After Oct 4th Google Android 14 release, few cases started to fail.
Cases did not fail earlier. Earlier system images were downloaded.
This change introduces system image storage to CI-files.
Task-number: QTBUG-117994
Change-Id: I143691f6d87f8c9b40b1f5744164cb0d22c219c3
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Version points to commit:
c5039e158d20e85d4d8a2dee3160533d627b839a
This commit is the latest one in 6.0 branch. This way we'll get
fix also for https://fftrac-bg.ffmpeg.org/ticket/10405
Version should be changed to official release
when the next official release is available.
Pick-to: 6.6
Task-number: QTQAINFRA-5912
Change-Id: I4e7acea5a54ce692334c7fe22ba074791c94cf03
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This change updates macOS 14 from beta version to released version 14.0
Change-Id: I6e87ee51efcce5edcdc853048c67598c02b3defe
Reviewed-by: Toni Saario <toni.saario@qt.io>
Update qdoc and qtattributionsscanner to the latest version from
qttools/dev.
qtattributionsscanner is updated to a version that supports multiline
copyright entries as a string array.
Task-number: QTBUG-111873
Pick-to: 6.6 6.5
Change-Id: I7dccdd431015610dcead220fa4cf3b5640049ece
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
This fixes ctest --stop-on-failure.
The minimal CMake version is tested separately on a non-ASAN config,
no need to test it again.
Pick-to: 6.6 6.5
Change-Id: I71e0158fca0d1ef19449b034faa119f8cf2d3519
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Unpacking the Mimer SQL universal binary package fails on macOS 14-arm.
Do not unpack directly to /usr/local and use sudo. Verify that all
directories exist.
Fixes: QTBUG-111219
Pick-to: 6.6
Change-Id: I5f1bf3413103c07a94a47b5421c41b8b1234ca22
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Ninja has issues if path exceeds 260 chars. The issue
is reported here https://github.com/ninja-build/ninja/issues/1900
and can be easily fixed by doing correct setting in
manifest file. Unfortunately the author still did not make
release with the fix.
QtWebEngine/QtPdf build generated file paths can exceed 260 chars
especially if build is done on android platform, which leads to
issues when running ninja as it get wrong 'dirty' and
'missing' nodes info.
Add workaround and patch manifest during installation.
Task-number: COIN-1077
Change-Id: I89166de73400de63bc3d1116b87c0f0754f36a2e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Do not use the Mimer SQL installer on macOS since it is not universal.
Instead, use an archive with the needed library and include files.
Use a universal binary on all macOS version from 11 and up.
Fixes: QTBUG-111219
Pick-to: 6.6
Change-Id: I4a3716b1207ee966f36e977fe5f9d1016fb9efcb
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Cross-platform VLC provides a cmd-line interface for creating media
streams, we use it in QtMultimedia integration tests.
In the future, vlc might be replaced with something more light-weight,
but for now let's just start running the streaming tests at least on
these platform.
Pick-to: 6.5 6.6
Change-Id: I887a98a1ee8f4a9f0a08d16124303bd10fa5a6ba
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Since commit 1764bc86cdfc22154a (qtspeech.git), Qt Multimedia is a
dependency for all of qtspeech. So let's also mark this as required
for top-level builds.
Change-Id: Iddc47fe7b57afeaf13c0ba36aa1517bf81794f75
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Removing RHEL 8.6 from yaml configurations at first
and scripts will be kept for some time, until removed later.
Task-number: QTQAINFRA-5768
Change-Id: I687f96de35b4bfa28d5a520717f29f059c4925c3
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
We need to use older chroot to build debian packages.
Task-number: QTBUG-117120
Change-Id: I044e398324c380716b309dad5b087e97bc6688ab
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit 43e1a3d2f5)
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
SLES 15 SP4 scripts from pre-provisioning and provisioning
will be removed later.
Pick-to: 6.6
Task-number: QTQAINFRA-5667
Change-Id: Idb49075800e5c3a23804b6df8dd283af3fcbf000
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Update nodejs to fix flacky webengine builds on windows due
to uv console init race condition.
Leave LTS nodejs release on other platforms.
Fixes: QTQAINFRA-5437
Pick-to: 6.6 6.5
Change-Id: Id066d29c819afe8e7de168a8d35d078c5408acef
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
The script produces the list of Qt submodules that are required to
build the submodules listed in the QT_BUILD_SUBMODULES variable.
Also the script supports the "collect all but skip repos" mode.
The repos that needs to be skipped should be specified by setting
BUILD_<repo>=FALSE.
The resulting list preserves the required build order.
Change-Id: Ia1cfe0ce013f80dc2793a0ba863a18789657e5a1
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io>
SLES 15.5 is added as parallel with SLES 15.4 until packaging
site gives green light to remove the older version.
This is following the new CI process to introduce new platforms in
parallel with Insignificant flags in use. Flags removed now after
flakiness has been monitored enough to give green for OS replacing.
Pick-to: 6.6
Task-number: QTQAINFRA-5667
Change-Id: Icdb4ed3be8590f85c22c8b73ba6ff0543e2b6e09
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Add Axivion MISRA-C++ analysis target for QtSafeRenderer runtime
on INTEGRITY. The results will be posted in the qtsaferenderer/integrity
target in the Axivion dashboard.
Task-number: QSR-2186
Change-Id: Ice8115dbe8dc1dacfbfca493c77d95eb95088439
Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
There are many Qt submodules, and it would be beneficial to users if
there was a standard README template that will enable them to understand
and access the submodule content better. Currently many of the
submodules do not have README documents, or if they do, each submodule
varies vastly regarding what content is in the document. This proposed
README template is based on the Git ReadMe structure.
Task-number: QTBUG-114809
Pick-to: 6.5 6.6
Change-Id: I3d1d1da27ed665e76ee6d1df8a93c3e5a920b0a3
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io>
We permanently accept C++17-isms that cause warnings (or, on Clang,
sometimes hard errors) in C++20 builds, because this configuration
(unlike the MSVC C++20 build) disables -Werror.
Enable -Werror for dev C++20 Linux builds, at least, going forward.
Change-Id: I2334f87e7c88f263af89bdd029bdf469f242d297
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
It's somewhat painful to do changes in the top-level CMakeLists.txt
in regards to calling qtbase commands, because the file needs to be
compatible with different qtbase sha1s while the submodule update
catches up with a new qtbase to be used for qt5.git.
Use the commands defined in the new QtBaseTopLevelHelpers.cmake file to
to move some responsibility back to qtbase.
This way we can hopefully avoid some churn and do direct changes in
qtbase instead.
Pick-to: 6.6
Task-number: QTBUG-112957
Change-Id: Id897a9f7da366b00a0780a2475b1fb5772bbe8bc
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io>
Helps build vulkan support in qtbase, and vaapi support in qtwebengine
Pick-to: 6.6 6.6.0
Task-number: QTBUG-115722
Change-Id: If51bc6a91c69829313991bfa9172026ce54476f7
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Previously the dedicated documentation config was removed in favor of including
ubuntu-22.04-documentation.
Since then, that configuration lost the TestDocs flag. It now comes with
ubuntu-22.04-documentation-x11-tests instead, so this change adds that
configuration.
Pick-to: 6.6 6.6.0 6.5
Change-Id: I046f79aa8810ded6aa6dd07814ff43dd3fa2bbe8
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
SLES 15.5 will be added as parallel with SLES 15.4 until
packaging site gives green light to remove the older version.
Upgrade nodejs to commonly used 18.16.0 version
This is following the new CI process to introduce new platforms in
parallel with Insignificant flags in use. Flags removed later after
flakiness has been monitored enough to give green for OS replacing.
Pick-to: 6.6
Task-number: QTQAINFRA-5667
Change-Id: I66d325f0e20f536b8e8b61ce3eb9f1dbc6a9f204
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
The missing files were downloaded from their external source and placed in their directories of the cache URLs. Files: FFmpeg-n6.0.tar.gz, Postgres-2.5-14.dmg, protobuf-all-21.9.zip, MimerSQLInstaller_x64_1107b.exe, FFmpeg-n6.0.zip, msys2-base-x86_64-20220319.tar.xz, python-3.10.0-amd64.exe, python-2.7.13.msi, mimersqlsrv_11.0_amd64-openssl3.deb, mimersqlsrv-11.0.x86_64-openssl3.rpm, MinGW-w64-x86_64-11.2.0-release-posix-seh-rt_v9-rev3.7z
Task-number: QTQAINFRA-5766
Change-Id: Ieacdc9138b71969397d900096956f54faff45918
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Before RHEL 8.6 can be removed, newer RHEL 8.8 needs to be
monitored that there is no flakiness and cleared from all
InsignificantTests flags after that.
This is following the new CI process to introduce new platforms.
No flakiness visible, therefore removing Insignificant flag.
Task-number: QTQAINFRA-5768
Change-Id: Iec4b741cd896ce73ba3804c2a971e36eef93b966
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Also adds executable attributes to shell scripts that were missing it.
Change-Id: Id52ef495147fdbfb5cb1a1f711fac530e0e85f3b
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
PackageKit is sometimes locked when trying to remove it, causing an error in provisioning. Scripts now wait until it is free for removal.
Task-number: QTQAINFRA-5577
Change-Id: I15d6bf5d72ec61517cc42a1dc51012ad60a806e9
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
These are required to successfully build debian packages for
Ubuntu Focal.
Change-Id: I708f3716ba8d1251bfae22da325e8e27f0fb80fe
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit 5b30b2f432)
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Use the Google format with 4 indents.
Change-Id: I852fabc07e16c19ac5555e4b34400a1c94a9d1d3
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
Reviewed-by: Konrad Kujawa <konrad.kujawa@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
We need ffmpeg+openssl to enable multimedia networking.
We kept it disabled on linux since we had linking dependency.
The related patch in QtMM resolves openssl symbols dynamicaly
and address the mandatory dependency.
Pick-to: 6.5 6.6
Change-Id: Idad0618a5320ae32d50fe1f3866c4ffd1bf8f542
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
I can see why de8a8879bd added
-no-warnings-are-errors (QtWayland tests were full of [=] implicitly
capturing *this), but I've fixed those now, so re-add -Werror.
Pick-to: 6.6 6.5
Change-Id: I48db4cee08bd766b2b00949cdb09a4dd97214298
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Add Android 14 to CI and keep 13 as maximum supported version, to allow
significant testing for both Android 13 and 14.
Android 13 is not yet removed, because Android 14 is still in beta
phase, so the plan is to fully replace Android 13 with Android 14 once
it's publicly released, and for now test Android 14, to avoid any
potential fails that might come before the final release.
[*] Android 14 is expected to be released late August 2023.
Task-number: QTQAINFRA-5609
Task-number: QTQAINFRA-5557
Change-Id: Ied5c560aa7d60f00948482fb1d7091b3139c6f0c
Reviewed-by: Simo Fält <simo.falt@qt.io>
The SHA-1 hash was not properly updated after upgrading Emscripten
from version 3.1.25 to 3.1.37.
Pick-to: 6.6
Change-Id: Iad2a8603ce6163545de432a35940c91ee47ffea8
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Add Axivion MISRA-C++ analysis target for QtSafeRenderer runtime
on qnx. The results will be posted in the qtsaferenderer-qnx target
in the Axivion dashboard.
Task-number: QSR-2070
Change-Id: Icea1dcaaecb505545f63c518e2dce49865a26505
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
The KDE window manager kwin launches window overview, when the mouse
remains in the top left for about 1 second. This causes flakiness in
autotests, if they move the mouse to the top left.
=> Disable the overview function, which is enabled by default.
Change-Id: I43925d15db99f5d40b6cc0cdba39203513e8c59f
Reviewed-by: Toni Saario <toni.saario@qt.io>
Point to the location of the host well-known .proto files using
the QT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR CMake cache variable.
Pick-to: 6.6
Change-Id: I53c6a76f28736c60d22a9d52e6ae79079b64772a
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
OpenSUSE 15.5 will replace 15.4 in yaml configurations
at first and OpenSUSE 15.4 scripts are still kept for some time.
OpenSUSE 15.4 scripts will be removed later.
Task-number: QTQAINFRA-5666
Change-Id: Ic04dee5935b2d0ea9b99dd103f796d38ea90ba2d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
The patch enables nvidia hardware encoders/decoders.
It doesn't add new package dependencies, ffmpeg loads
required functionality in runtime if nvidia drivers have been
installed.
The change is coming together with implementation of hw devices precheck
in qtmultimedia.
Pick-to: 6.5 6.6
Change-Id: Id54a95b2bacf433950c7b50a42ff99136a143d98
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
simple git grep-ing shows more uses of _with_ space than without
Change-Id: I0b2d94aa6312dd6856a2b886bc7ec028978dc0cf
Reviewed-by: Ievgenii Meshcheriakov <ievgenii.meshcheriakov@qt.io>
RHEL 9.2 will replace RHEL 9.0 in yaml configurations
at first and RHEL 9.0 scripts are still kept for some time.
RHEL 9.0 scripts will be removed later.
Task-number: QTQAINFRA-5608
Change-Id: Iff463f26ba6bcb7962b4f8bafbf88aa7c13392c1
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Vulkan:
FFmpeg has a very draft support of vulkan in n5.x and n6.0,
it's promised to be introduced with some working functionality in n6.1.
We'll wait for 6.1, then test it. For now, let's get rid of the extra
dependency.
v4l2m2m:
It's a prospective hw acceleration on linux, especially on embeddded
platforms, but currently, in my experiments, it's not working with
both QtMM and ffmpeg cmd line.
Let's get rid of the not working codec. Hopefully, it'll be fixed
in the future.
Pick-to: 6.6 6.5
Change-Id: I2468f84ae2ec54043d2db83f1a9c08be8e4f509d
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Jenkins dropped Java 8 support and Windows x86 is still used in
packaging and RTA.
Pick-to: 6.6 6.5 6.4 6.2
Change-Id: I001aacd38147a21944ecaa7223414226a6c500ff
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
When building on Windows in the CI environment the Mimer SQL libraries
where not found. The updated script set an environment variable that is
is when building the QtSql Mimer SQL plugin
Fixes: QTBUG-111219
Pick-to: 6.6
Change-Id: Id486a5a3b37d90cd19180f7900456eeae910d1de
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
We need to provide hw acceleration in qtmultimedia linux packages,
vaapi interface is already integrated to the module.
To be described in QtMM documentation.
Pick-to: 6.6 6.5
Change-Id: I60fcc0b43e5800b7dc5621bfb835c72237fd9b02
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Vcpkg needs a newer 7zip, and although it can automatically download,
install and use a newer version, it is better and safer if we can
provide the newer 7zip, and satisfy this requirement.
Change-Id: If9eda0cb6e2a884647a41572e18f9814cb48e0a0
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
The platform has already been renamed to `qtci-macos-11-x86_64`, and
this is most likely a leftover.
Change-Id: I431a4c05104788d9b4221de8bafcf122a97eee14
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Id has since changed to 8.6. Coin now detects faulty includes and
bails out if some includes are not found.
Change-Id: I2a07931c80b0878d5ace26c7ad8c444d11678a0e
Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
Pkg Jenkins wants to use tqtc-qtsdk repository to get machines
from Coin.
Task-number: QTQAINFRA-5501
Pick-to: 6.6 6.5 6.4 6.2
Change-Id: Ief782a4808b7484e456c6e7ca3d156aba8dabdd9
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
This reverts commit 82327bfc4d.
Reason for revert: There are two hosts up and running
Change-Id: I388110f581e5040019448b410ea93747154e0efd
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Specify QT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR that points to the
host protobuf include directory, to grab the required .proto files.
Task-number: QTBUG-115582
Pick-to: 6.6
Change-Id: I4e8b3043b105b05799921ac9a943f414718c1d09
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Specify QT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR that points to the
host protobuf include directory, to grab the required .proto files.
Task-number: QTBUG-115582
Pick-to: 6.6
Change-Id: I3184439d92c8b79c9dc78a117584f7cf56b9eb97
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Konrad Kujawa <konrad.kujawa@qt.io>
The californium docker container was based on californium 1.0.0, which
is a very old release. This results in some SSL-related errors when
running the Qt CoAP tests in the CI.
This patch updates the docker container. Instead of a custom fork of
a californium server, we use 3.8.0 release tag, and apply a custom
patch locally.
A similar docker container is already uploaded to DockerHub and used
in Qt CoAP examples.
Task-number: QTBUG-114798
Pick-to: 6.6 6.5
Change-Id: I07346f69a6790b4ae648e073440d68f28668cdd0
Reviewed-by: Sona Kurazyan <kurazyan.sona@gmail.com>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
The Multi-ABI targets run a subset of Android tests but the target
doesn't explicitly set the name of the Android emulator to run, so it
was defaulting to Android 6 because the CI Android emulator runner
script defaults to that. The latter is going change to be more explicit,
so this needs to be explicit also.
Pick-to: 6.6 6.5
Change-Id: Ifd5ddd5b5cf3b7a1b275f5a7b1252a21ae3165bc
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
* Don't fail silently if the AVD name is not provided.
* Add the following flags to the emulator:
* -no-window: since we don't really interact with emulator is CI
* -no-boot-anim: no need to run the boot animation
* -no-snapshot-load: removed because it serves nothing
* -detect-image-hang -restart-when-stalled: helps recover the
emulator from freezes during execution
* Disable warning dialog about nested virtualization.
* Terminate the emulator instance if the script expects it to not be
running, i.e. save time by attempting to terminate and move on with the
script execution instead of simply failing and doing nothing.
* Add a timeout to the blocking call 'adb wait-for-device'
* Save logcat output to a file for quick access to the logs,
and put both emulator and logcat files under testresults folder,
which would them available in cases of failure without needing to
create a VM for debugging to get the logs.
Task-number: QTQAINFRA-5596
Fixes: QTQAINFRA-4628
Change-Id: I751bbec14980a452e02066f4e79d76fe6f3c018f
Reviewed-by: Simo Fält <simo.falt@qt.io>
Using -avd emulator param saves us from using the '@' character
at the start of the name (which I didn't do few times, and was
faced with an unresponsive emulator and not immediately seeing
the problem in a debug vm).
Task-number: QTQAINFRA-5596
Change-Id: I3863dc312fd33dae78eeb3dd02f5fb16ca79d72b
Reviewed-by: Simo Fält <simo.falt@qt.io>
This reverts commit c0cf9e7b28.
Reason for revert: Chromium update is done in qtwebenigne.
Change-Id: Ic8d9b0f5aadbaa8be3d89e08a770c5824a7a4da4
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Now that we ignore the libraries shipped within the strawberry perl
distribution, we can remove the explicit FEATURE_system_foo flags
because we'll default to using the qt provided libraries by default.
Pick-to: 6.5 6.6
Task-number: QTBUG-113726
Change-Id: I0ef7ae2afd489107a4d5b2c4f859e1e3590ca5e9
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Because we have strawberry perl's bin dir in the PATH, CMake considers
that a find_package prefix, and thus finds includes and libraries
that are shipped with strawberry perl.
That causes problems because the 3rd party runtime libraries are not
installed by the Qt installer, so any Qt modules / plugins that depend
on the 3rd party libraries will fail to load.
Use CMake 3.23's CMAKE_IGNORE_PREFIX_PATH option to tell it to ignore
strawberry headers and libraries.
We need to repeat it both for qtbase and non-qtbase args, to ensure
the libraries are not picked up for all of Qt.
This is a more general fix for problems like the one fixed by
a97bdde4d4
Pick-to: 6.5 6.6
Task-number: QTBUG-113726
Change-Id: I706bf9ac945a47dc809bbb6eb9eda4ca93f84695
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Android's sdkmanager seems to fail with openjdk 11 version 11.0.20.0.8.
The previous version 11.0.19.0.7 seems to work. the error is failure to
find /usr/lib/jvm/java-11-openjdk-11.0.20.0.8-2.el8.x86_64/lib/tzdb.dat.
This is more of a workaround for now to unblock provisioning.
Change-Id: Ib50b497c6e8b6bffd0739bf665ab1deb5bd51666
Reviewed-by: Simo Fält <simo.falt@qt.io>
Will be needed in Qt 6.6 for VA-API
Pick-to: 6.6
Change-Id: I4389ee03eb85a05f9bce37a0eb4629d30e1aefd1
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
... and the targets that depend on it, to deal with a cyclic dependency
in qtwebengine chromium update.
Change-Id: If5f64aed4d5e6ce34b8c6e58b3657fc3a438cb8c
Reviewed-by: Simo Fält <simo.falt@qt.io>
The android emulator launcher script is mainly used in CI and thus
makes sense to be moved there. This also makes it easier to make changes
without having to wait for submodule updates.
The env var ANDROID_EMULATOR_RUNNER points to the path of the runner
script, and can be used by qtbase.
qt5.git part of the change.
Task-number: QTQAINFRA-5596
Change-Id: If253e0a5f14d67526995561b1859312e61efdfff
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Install missing 'dataclasses' module for python.
It is required for licenses generation for webengine.
Make pip call after pip 'upgrade'.
Change-Id: Iedced50fe644c1711ee42d4940f70a24a070c4df
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
It should be replaced with a global pip cache in the long run.
Removing it should make the maintenance of the required packages easier
as it can be done within the modules instead of in the global
provisioing scripts.
Pick-to: 6.6
Change-Id: Ief9832a8a640ce98325cda015d0a9e89d6cb16af
Reviewed-by: Simo Fält <simo.falt@qt.io>
The config is currently blocking CI.
Task-number: QTQAINFRA-5606
Change-Id: Iebe1e11cbae0405fa1d1acd05581d62058ee8a06
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
This reverts commit 6f3ff63da5.
Unity builds have not been properly tested. In particular, they have
not been tested with an "infinite" batch-size (e.g. 100,000) to
reasonably ensure that any batch-size will work and any _new_ .cpp
files being added to SOURCES will break unity-build only in a way
that's fixable by changes in _that_ .cpp file.
The CI is not a lab for experiments. A unity-related failure has
brought the branch:dev CI to a screeching halt for a day on
2023-07-20, so we're disabling the use of it on the CI until it has
been properly tested in nightly builds and locally.
Task-number: QTBUG-109394
Change-Id: Ib1605c02bc088942acc7dfe90b3b0e39f46a41e3
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
This reverts commit 7b7dd85ca6.
Unity builds have not been properly tested. In particular, they have
not been tested with an "infinite" batch-size (e.g. 100,000) to
reasonably ensure that any batch-size will work and any _new_ .cpp
files being added to SOURCES will break unity-build only in a way
that's fixable by changes in _that_ .cpp file.
The CI is not a lab for experiments. A unity-related failure has
brought the branch:dev CI to a screeching halt for a day on
2023-07-20, so we're disabling the use of it on the CI until it has
been properly tested in nightly builds and locally.
Task-number: QTBUG-109394
Change-Id: I0933d912215e8303e982c8649bc448103568ea65
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
This reverts commit d1496ac752.
Unity builds have not been properly tested. In particular, they have
not been tested with an "infinite" batch-size (e.g. 100,000) to
reasonably ensure that any batch-size will work and any _new_ .cpp
files being added to SOURCES will break unity-build only in a way
that's fixable by changes in _that_ .cpp file.
The CI is not a lab for experiments. A unity-related failure has
brought the branch:dev CI to a screeching halt for a day on
2023-07-20, so we're disabling the use of it on the CI until it has
been properly tested in nightly builds and locally.
Task-number: QTBUG-109394
Change-Id: I935879b6b8a9602fcfbfcaa1d38b0b08254e0f59
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Native gRPC channels rely on the reference gRPC implementation that
doesn't guarantee the ABI compatibility between different versions. We
shouldn't link libQt6GRPC to any 3rdparty libraries that are not
delivered as part of Qt when make packaging builds in CI.
Task-number: QTBUG-115055
Task-number: QTBUG-110107
Pick-to: 6.6 6.5
Change-Id: Ie099b0af833d87308179d3b4eecc47738078010c
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This changes the -unity-build-batch-size of the platforms that we are
experimenting with from 32 to 16.
Change-Id: Iefc70b482ae86313d2b2d10ff1adb862eb7e2138
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Add missing OPENSSL_ROOT_DIR to macos-12-arm64-developer-build
CMAKE_ARGS.
OPENSSL_ROOT_DIR is required to run QtGRPC auto tests.
Add missing provisioning script to macOS 13 x86_64.
Fixes: QTBUG-115077
Change-Id: Ia51d6820037e93d5eddb06a2fdedfcfa87ee094e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Last update only touched RHEL 8.6 and 9.0
Pick-to: 6.6
Change-Id: I0c084edc08f3c833daa25c393674bd51eac4ea6e
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Commit 204ea530 disabled documentation testing, as 'TestDocs'
is a testing-only step, and it was combined with 'DoNotRunTests'.
Move the feature under the new test-only configurations.
Pick-to: 6.6 6.5
Change-Id: Ie458495904b102fa50bc18ea39167ecc89b7c03b
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
We don't load it for qtbase standalone tests, we shouldn't for
top-level builds as well.
This brings us one step closer to fixing top-level standalone tests.
Pick-to: 6.5 6.6
Change-Id: I7c2710e61951f6789fea63422bc575a1ac611cdc
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Enable unity build for LLVM, and the last MinGW platforms on Windows.
Change-Id: I9f36ca8b0268f13886e319ea3211744fc377bc69
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
In order to monitor, and compare the performance of unity build, this
patch enables the unity build on `macos-12-arm64-developer-build`
and `macos-12-arm64-developer-build` platforms.
Change-Id: I4d8f864a821cf4cefcc10015950d0e994c7ba8a4
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
The provisioning scripts for Mimer SQL is missing in RHEL 8.6 and
RHEL 8.8 and therefore the Mimer SQL QtSql plugin is not built
Fixes: QTBUG-111219
Pick-to: 6.6
Change-Id: I9c12b7d94ab7b047ed08b46043ad16586968ecfd
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
This commit enables tests in CI for Wasm platform.
Fixes: QTBUG-109786
Change-Id: Ia44ab6ce3d5092fc90b07759d4d1a2c57edbf512
Reviewed-by: Mikołaj Boc <Mikolaj.Boc@qt.io>
To avoid warnings accumulating without being noticed.
Change-Id: I9979560a708c08f21966036b37d32a976fb75f8d
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
There are many details, as documented by the online documentation.
Task-number: QTBUG-114869
Pick-to: 6.6
Change-Id: I3b5b6679264a7cb0f5deddad3385af9bd46693f8
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
RHEL 8.8 will be added as parallel with RHEL 8.6 until packaging
site gives green light to remove the older Red Hat version.
Removing also some obsolete package installations.
Task-number: QTQAINFRA-5600
Change-Id: Ie77500a805a89db9019b5347539e662bc016af59
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Enabling the -unity-build for qtbase for INTEGRITY, Windows 10/11 MinGW.
For now, we need to explicitly disable it for other modules, as
QT_UNITY_BUILD is being propagated by `QtBuildInternalsExtra` to other
modules.
Task-number: QTBUG-109394
Change-Id: I38525706149eadba91bdebc78d502fd5f42f69aa
Reviewed-by: Alexandru Croitor (OOO) <alexandru.croitor@qt.io>
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
To simplify testing modifications to the FFMPEG library, it is nice to
be able to rebuild FFMPEG without having to manually delete lib files
first. This change makes this possible because it uses powershell
Move-Item instead of Rename-Item to rename .o files to .lib files.
Move-Item's -Force argument allows renaming files to destination that
already exists.
Pick-to: 6.5 6.6
Change-Id: I0a56776d38c37d38d1cd74b5186881fc955d51f0
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
macOS 12 x86_64 will be replace with macOS 13. Tests will be still run
on macOS 12
Let's keep same Xcode version (14.2) than older macOS (12) has
Task-number: QTBUG-104210
Change-Id: If3e06834156196917001f83ca391a66a6c78e84a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
The conan experiment has ended, and the files are only bitrotting
nowadays.
Pick-to: 6.5 6.6
Change-Id: Iefdc6fa1a48bb4062b15cf035f372a2d44bddda9
Reviewed-by: Toni Saario <toni.saario@qt.io>
Use the same prebuilt pacakges for all platforms since the prebuilt libs
are going to be used for the target and they are not tied to the host.
Pick-to: 6.6 6.5
Task-number: QTBUG-110025
Change-Id: I2c79722989902b16883b31cbc6e140855239fcc8
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Needs to be at least 14.19 for Qt WebEngine 6.6
Pick-to: 6.6 6.5
Change-Id: I1d4b8b241d18eeeffa1b2a9eed0e85cbf54e49ba
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
The only host is down for now.
Pick-to: 6.6 6.5
Change-Id: I82cc9461a16d054da6611f2e2ee0be6426755660
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
qtgrpc recommends qtdeclarative; add that one in .gitmodules as well;
the dependency were added in the module in
681d104f0d03f97681536d3691d170d7c06aab2b
Pick-to: 6.6 6.5
Change-Id: I325abc8453d26cf0d75425e806e3e0e7b182070a
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Unmounting fails sometimes which cause provisoning failure.
Let's ignore the result
Task-number: QTQAINFRA-3709
Pick-to: 6.6 6.5 6.2 5.15
Change-Id: Ifc321c8ef9942f9f51ec622370aadbbbb862d262
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
Remove handling of QDOC_USE_STATIC_LIBCLANG environment
variable. The variable is not used by the Qt 6 build
system.
Change-Id: I8af68382caea2864543a3d6e6ed2922823a2e71d
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
License files are organized under LICENSES directory.
Pick-to: 6.5 6.6
Task-number: QTBUG-67283
Task-number: QTBUG-108364
Change-Id: If26e4d35c780db4a7982bb84872b251dad24716e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Android 12 is the desired platform for most users, need to run our tests
on it instead of A11.
Task-number: QAA-1739
Change-Id: Iadfdfcbc97b062baa1c4ef6eb46e9e1af6e3478a
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
The cloned submodules had a wrong origin remote URL if the origin remote
of the local qt5.git repository had a trailing slash.
Fix this by stripping the trailing slash when stripping the trailing
".git" from qt5.git's remote.
Pick-to: 6.5 6.6
Fixes: QTBUG-113793
Change-Id: I199b6e1915f67558ecfe69f7300d0f9ef0d4b232
Reviewed-by: Alexandru Croitor (OOO) <alexandru.croitor@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
The CMakeUserPresets.json file can be used to simplify configuring Qt,
particularly with tools such as Visual Studio and Visual Studio Code.
As opposed to the CMakePresets.json, the CMakeUserPresets.json should
only contain user specific configurations, and should never be checked
into source code management system. Therefore it makes sense to ignore
it globally.
Pick-to: 6.5 6.6
Change-Id: I971d4505b302dc40e3dd33b6d4680c2067047c27
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
It's hasn't been .intra.qt.io for quite some time, it
has worked through an alias we have on the DNS server.
Change-Id: I0bc17668dacfea64c276bb553e75e4be16e97659
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Stop the configuration and show an error if one of the submodules is
missing, or misspelled in `-submodules` option.
Pick-to: 6.5 6.6
Fixes: QTBUG-114133
Change-Id: I890d4f5f0614288a2be422f839e04a0086a58403
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Alexandru Croitor (OOO) <alexandru.croitor@qt.io>
Openssl library causes backward compatibility issues. We need to disable
it to make ffmpegmediaplugin work on all supported linux platforms.
Fixes: QTBUG-113324
Pick-to: 6.5 6.5.1
Change-Id: Ib266e2cf67e9336fb206735b8b2418fccd8f7b00
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Auto upgrade can lock apt which cause provisoning failure
Task-number: QTQAINFRA-3054
Pick-to: 6.5 6.2
Change-Id: I7d8b8b9baf8b48f00d62dba2f810bf12aaa3c8a0
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
This reverts commit dbbcf2fa3a.
Reason for revert: Host config should be ok again.
Change-Id: Iaf5d54f1ea16055f00b072bc18c5da1605be42a1
Reviewed-by: Toni Saario <toni.saario@qt.io>
Android 13 replaces Android 12 as max version in CI.
Android 6 kept as minimum version of Android in CI.
Task-number: QTQAINFRA-5392
Task-number: QTQAINFRA-5431
Change-Id: If85c6f63d52055e2ba95f92c154b20a6b809c7dc
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
We pick the oldest build tools we can find because there is lower
chance that the produced binaries will be incomaptible with the newer
version of MSVC.
With the current provisioning design we also cannot change the MSVC
version for the each package on demand. Once Enter-VsDevShell is called
it litters the powershell environment and blocks the use of
Enter-VsDevShell second time. It could be better to run each .ps1 file
in own instance of powershell to avoid mixing build environment.
Amends f58afd5476
Pick-to: 6.5
Change-Id: Ie752cfc8b69ed985e61ec16209007dd586611866
Reviewed-by: Samuel Mira <samuel.mira@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
This also includes support for OpenSSL 3 for RHEL 8.6.
Task-number: QTQAINFRA-5368
Change-Id: Ifeb87f840eaa0df227ae2b8c20a58c126f654d2e
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
New commits have been added to the cpdb-libs git repository. The commit
cannot be checked out anymore. Fixed by taking a full clone.
Change-Id: I69d5e77233a21c1e1c36b386e0dc25a26fadfce1
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
Added install-ffmpeg-android script for the android cross-compile
Removed android stuff from install-ffmpeg
Changed the yaml variables to include the target arch
Added the arm64 target arch
Task-number: QTQAINFRA-5476
Pick-to: 6.5
Change-Id: Id9609ed0427f2fc42f7f27e7787a81ad145f59be
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Since Qt 6.5 doesn't support anything earlier
Pick-to: 6.5
Change-Id: Ia5c5b011c774c34311d1cdc2afda914d53d16429
Reviewed-by: David Schulz <david.schulz@qt.io>
nuitka needs the dependency walker to create standalone binaries. For
that nuitka downloads the dependency walker into its cache location.
If we copy our installation to this cache folder first, we don't need
to download it again.
Change-Id: Ib55e5ddc7cb6b482e9db0723fd015b36da01e555
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Checked the basic functionality on macOS, linux, and windows.
To be tested in detail.
Pick-to: 6.5
Change-Id: I109f52ab33d58088332a3885c83d622815edd22e
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
qtbase was last insignificant module. When below "needed to"
are in, qtbase can be mark as significant.
Needed to
- increase emulator RAM to 16GB
- RAM increase to 16GB fixed tst_QByteArrayLarge cases
- SKIP tst_QRhi::tessellation(Vulkan)
- SKIP tst_QOpenGLWidget::reparentHidden
- SKIP tst_qvulkan cases
Above SKIP bugs to be fixed later in Qt 6.5 as bugs.
Task-number: QTQAINFRA-4733
Task-number: QTQAINFRA-5391
Task-number: QTBUG-108832
Task-number: QTBUG-108844
Task-number: QTBUG-111235
Task-number: QTBUG-111236
Pick-to: 6.5
Change-Id: I5d3e99ad144dbcf192873458dedd0300ed622beb
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
The Common Print Dialog Backends (CPDB) concept has
GUI-toolkit-independent backends for each print technology (CUPS, Print
to File, cloud printing services, ...) and each print dialog (GTK, Qt,
Chromium, Firefox, ...) is supposed to use this backend, so that changes
in print technologies can be centrally and quickly covered by changing
the backends and everything new gets available in all print dialogs.
This commit provides provisioning script for CPDB frontend (cpdb-libs)
for Ubuntu 22.04 x86-64.
Change-Id: Ic97c41979040adb6e9ffab540c09edadb6b5de3e
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Valgrind is needed for testlib benchlibcallgrind selftest. Valgrind is
installed on Red Hat by default but needs to be separately installed on
Ubuntu and openSUSE.
Change-Id: I4cdfca512fe3efe9338a75cadc20454ff989fcae
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Update qtattributionsscanner to the latest version from dev branch,
b3630c56. This includes support for SecurityCritical and Comments
fields. It also fails the build on incorrect input files, ensuring
no incorrect content can integrate.
Update qdoc to the same version from qttools, bringing multiple
improvements.
Pick-to: 6.5
Fixes: QTQAINFRA-5450
Change-Id: I7caa59ed982d9c41efcbe3d2381d47c7d037e9c6
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
The photosurface demo uses a custom shader and the PDF image plugin.
The document viewer also needs QtPDF.
Pick-to: 6.5
Task-number: QTBUG-108924
Change-Id: I1236e6b679dc512874299747921407384ce29a67
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
It will run all auto tests in dependency modules, such as qtbase,
qtdeclarative and etc, with QtWayland QPA plugin, but insignificant
for now.
So the time for testing will be similar like qtbase, about 1-2 hours.
Pick-to: 6.5
Task-number: QTBUG-66335
Change-Id: I66259f975e102aed90af516885fcf6b1cbddb5f6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This patch configures FFmpeg with network support. This enables QtMM
to handle network source such as HTTP, HTTPS, or RTSP.
Details:
- on macOS and windows ffmpeg uses native security backend so we don't
include openssl to the build. Additional patch for linking
with the security backend is in QtMM commit under the same task.
- on linux we add openssl; for all CI linux platforms libssl-dev is
installed.
Task-number: QTBUG-110708
Pick-to: 6.5
Change-Id: I80a7dfda702c4d554df3a7380aac642890a28b94
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
vswhere tool is included since Visual Studio 2017 and is always located
at the same path thus making it a more convenient way to find Visual
Studio install directory.
Pick-to: 6.5
Change-Id: I680af8f88779841108b436223b4667f8a7c91aba
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Unclear why that didn't get added when this set of provisioing scripts
was set up.
Pick-to: 6.5
Change-Id: I70cc347f2a6109fdde773c647cbe9a5b4819517e
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Need to build protobuf and gRPC libraries with PIC/PIE to make them
compatible with Qt libraries and executables that are build with
PIC PIE.
Change-Id: Ie830f359e9e0fa15af65b96330edbf7f3f52df9b
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Konrad Kujawa <konrad.kujawa@qt.io>
Only reference the existing targets without fully duplicating them.
Change-Id: I55ee4a4272956331150ed5c6098ab1d51a556f1a
Reviewed-by: Toni Saario <toni.saario@qt.io>
Needed for RTA, for better coverage RTA uses Ubuntu as a host in Android
RTA tests.
Pick-to: 6.5
Change-Id: I4670102bc865847f07dccc47ba56d09734e269cd
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
To be able to build the Mimer SQL Qt Sql plugin the Mimer SQL RDBMS needs
to be installed in the CI environment.
Add CI scripts for Mimer SQL
Task-number: QTBUG-111219
Change-Id: Iff900d49ef5b26d97f4f326b0c0e0bc584c416f9
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
The qdoc binary was originally built against libclang from LLVM 15, and
that version has problems parsing source code when C++20 support is
enabled.
Update to a version that is built against libclang from LLVM 12.
Pick-to: 6.5
Fixes: QTBUG-111186
Change-Id: I068b3e6d4d006ba6e55e2144c0fdeaeada931b73
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
glibc has a system where, if it fails to perform Happy Eyeballs host
name resolution in parallel, it will do it sequentially.
We triggered this because our docker setup was not responding to
systemd-resolved's AAAA queries over IPv6.
The bug in glibc was then that it would poll for 4999ms after sending
the first of the two queries. __Every time__ we do mdns host lookup.
In tst_QTcpSocket this happens multiple times in ::initTestCase for the
proxy global-datatags. That means we would be stuck polling for
4999ms*5 (number of proxy addresses to look up) before every test-case
that would use proxy (even if the test just does a return in the
proxy-case). Plus another 4999ms for any mdns lookup we would need to
perform during the test.
This led to the test severely slowing down and timing out quite often.
Work around this by doing full mDNS before trying DNS.
This will let us resolve multi-label mDNS addresses.
Pick-to: 6.5
Fixes: QTBUG-107696
Change-Id: I26c6b356b4c9712f4ac6d3613998ee448c0ca504
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Ubuntu 22.04 landed to dev and 6.5 branches
Change-Id: I673f9eb0a40101d3323fdd5b9b9be333b3756e2c
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Needed in yocto builds:
/usr/bin/env: ‘python’: No such file or directory
Pick-to: 6.5
Change-Id: I39cd0c507ba0bd8dd349ffdfffdb53d78a048955
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
After ffmpeg was removed on Android targets following QTBUG-110172,
this patch enables it after fixing the failing test.
Task-number: QTBUG-110453
Pick-to: 6.4 6.5
Change-Id: I5598a9b72d06af6664455e933129a08192afac15
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Libclang version is built with Ubuntu 22.04 on it, others still
keep old one which is built with Ubuntu 20.04.
Pick-to: 6.5
Task-number: QTQAINFRA-4926
Change-Id: I47bb49c1efecab6863ae52d3acf7eb47bdc47c35
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
This change will upgrade docker-compose version to v2.15.1
Also 'containerd', 'docker-ce' and 'docker-ce-cli' versions will be
upgraded to support newer Ubuntu version (20.04)
Pick-to: 6.5 6.4 6.2 5.15
Task-number: QTQAINFRA-5396
Change-Id: I282a1cbc5870db765409985983d29f57936d1798
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Gives more CI coverage against build failures.
Task-number: QTQAINFRA-4117
Task-number: QTQAINFRA-4242
Pick-to: 6.5
Change-Id: I64e476cbbb74bde861fa85c677bcdc7ca91dac2d
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
We need to verify build with C++17. Let's use Ubuntu 20.04 for this.
It should be enough to do this in nightly run
Change-Id: Id355e4978720210f69e80e0fc3c65bafe03c9a48
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
We need to keep Red Hat 8.4 or 8.6 for packaging target and for
Android targets at the moment. If we switch to use RHEL 9
it will cause problems with GLIBC with older distros.
Let's add additional target for Red Hat 9 without packaging flag
to catch the issues
Pick-to: 6.5
Task-number: QTQAINFRA-5111
Change-Id: I3056a820cfdf61fc307cbd07f561afe31ad689f7
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Developers that use a top-level qt5.git can use git submodule foreach
to run commands for each submodule. That is not available to
developers that maintain their own non-submodule based top-level
checkout using git worktrees.
Extend the QtSynchronizeRepo.cmake script that allows to sync
submodules / worktrees to also allow running foreach commands.
The CMake invocation to run a foreach would look like
cmake -DQT_FOREACH=TRUE "-DARGS=git pull -r" -P
cmake/QtSynchronizeRepo.cmake
But it's nicer to create a git-qt-foreach script in
/usr/local/bin/git-qt-foreach with the following contents
cmake -DQT_FOREACH=TRUE "-DARGS=$*" -P cmake/QtSynchronizeRepo.cmake
Make sure to chmod a+x it and invoke like
git qt-foreach git pull -r
Change-Id: I0ccd67facbfe702c6a872165cdfd9f9e6eae9043
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
When qtrepotools is absent from --module-subset, Git hooks cannot be
installed. Emit a warning in this case.
Change-Id: I7c53b8c2817f72dbdc2b813dd18c8f63061a00c8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Reviewed-by: Daniel Smith <Daniel.Smith@qt.io>
What's done:
- ffmpeg build added to OpenSuse platforms
- installing of yasm moved to packages install file in
order to get rid of OS checkings
Pick-to: 6.5
Change-Id: I256f19a03e7f01d27923b083b63d9a6b6a5f29b4
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
This is causing autotest failures in multimedia.
Task-number: QTBUG-110453
Change-Id: I1eacd8eec72d4f17f7f18df9f70c07bbecc0d48b
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 7051182f20)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
RHEL-9 is causing problems in QtApplicationmanager when using
RHEL-8.4 as a host build: It can't load libcrypto in Android
build phase
Task-number: QTBUG-110172
Change-Id: I6d5ef4684fb11e384eb54f9a37bd30e4ef8d145b
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 7ac39979ce)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Use latest platform and build tools to be able to build for Android 13.
Pick-to: 6.5
Change-Id: I00bd9948f528d398d471e91de1d22954d786be29
Reviewed-by: Juha Vuolle <juha.vuolle@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
RHEL 9 is causing glibc issue with older linux distros.
Let's revert back to use the older RHEL version.
For Android targets we can still use RHEL 9
Task-number: QTBUG-110172
Change-Id: I6d61a550fceaab4946e27bd8806263ccfa38a6e6
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 1759420acc)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
MacOS 13 intel Hosts have some strange kernel panic issues. Hosts
randomly reboots and currently the root cause is unknown.
Also there's a flaky provisioning issue which don't give
any error output to provisioning log. It looks like the connection
between VM and Coin suddenly breaks.
Let's run this Intel mac in Nightly run so that we can observe
the severity of these issues and same time observe other issues
we might have with macOS 13.
Change-Id: Ida449771cc1310e27460041d4ba68fec8de917f6
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Some issues have been fixed in ffmpeg 5.1, e.g, with videotoolbox.
So the update at least fixes our playback
of some video formats on macos, e.g. provided in the related bug.
After the update I tested the basic functionality on windows,
linux, macOS, and run CI tests, which are OK.
Task-number: QTBUG-98102
Pick-to: 6.5 6.4
Change-Id: I72f45780e1c3983d6a1941db2b833b78784b90de
Reviewed-by: Samuel Mira <samuel.mira@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Current id won't work when including cmake_platforms_target_android.yaml
Pick-to: 6.5 6.4
Change-Id: I6dc488e5bf683608f567dcc2871e3c1861990e32
Reviewed-by: Toni Saario <toni.saario@qt.io>
All targets should have ID. This way it's easier to refer to needed
target
Pick-to: 6.4 6.5 6.3 6.2
Change-Id: I0af8399c3a4c436ab1e778ab4396c65ccd3a373b
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
We are seeing ~200 000 compiler warnings coming from Integrity compiler
not seen on other compilers. Suppress these as a hotfix reduce the
load on CI.
Change-Id: Ibd0a47b1c5f2b6ce2612fc1c466096a032cc9a65
Reviewed-by: Kimmo Ollila <kimmo.ollila@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Removing python3.6 and replacing it with more recent versions.
Pick-to: 6.4 6.5
Change-Id: If8cd4c369e4fc9ff8dc7d53865b80b588f278091
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
FindBin.pm was moved from perl-intepreter package to separate package.
Change-Id: I6e889555f573a7dc9ae3d736d9b1c014eb6da656
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
This will replace RHEL 8
Task-number: QTQAINFRA-5111
Change-Id: Ib65e9b7a2afa85418d5113261bc83ba915b2bce0
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Remove explicit references to sccache and use more basic
configure options.
Change-Id: If046b003fff1bd6c1bb7b120fba11ca067b0eb86
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
qtquick3dphysics will be officially supported module form Qt 6.5 ->
so change the status in .gitmodules from preview to addon
Task-number: QTBUG-107387
Pick-to: 6.5
Change-Id: Ic117f4cf3e99e4a2f59bd84aa14979419a3533b9
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
They are no longer used by any configuration for 6.5
Change-Id: I14c41f0b66b52670dfe86f5bb975bc3665bb5a98
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2022-12-13 10:26:13 +01:00
2862 changed files with 38749 additions and 24365 deletions
Note that we cannot accept pull requests on GitHub. All contributions to the Qt project are exclusively handled through the [Gerrit code review system](https://codereview.qt-project.org).
Read the
[Qt Contribution Guidelines](https://wiki.qt.io/Qt_Contribution_Guidelines) to learn more.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.