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>
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>
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>
- 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>
- 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>
'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>
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>
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>
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>