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.8
Change-Id: Id66b560e6a1d4300a54017e9c3366720dc291944
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 61046109cf)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 14dcdd32d7)
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>
(cherry picked from commit a9b7487138)
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@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.8 6.5
Change-Id: I01663e60baa44ab828d8880ab8b346034a50b60e
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit a64f150422)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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.8 6.5
Change-Id: I38f4bb5ca59255870dc6dbbb69e9ab339c679ddc
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
(cherry picked from commit 75b7834370)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 582a05fab0)
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: 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.8
Task-number: QTBUG-137909
Change-Id: I058c5d9c5e67bbea4a5ea88a915270ef00110d7a
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
(cherry picked from commit e9687ee42e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit feabc0fdcf)
Targets
- windows-11_23h2-arm64-msvc2022-minimal-static-test
This doesn't have previous version so it's left out in 6.9
- Windows-MSVC2022-arm64_Static-23H2
Task-number: QTQAINFRA-7273
Task-number: QTQAINFRA-6973
Change-Id: I1e2110973d0ad0645c1f5b62c420655c94235eab
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit acb1eb656a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 91627c3294)
Will also make glibc versions visible in Tools and Versions pages.
Task-number: QTQAINFRA-7333
Pick-to: 6.8 6.5
Change-Id: Ic0274822f326e4b23ed423d8da20002bc6d4f20a
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 3ba1fb95be)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 763fb46b70)
Stable is debian codename and the script was ran in Ubuntu, so it makes
me wonder how did this warm in the first place.
Pick-to: 6.8
Change-Id: I6d907ce11d53aa498ea93522539891f38e7c8388
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 77eb380ac0)
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit cbc5c3405b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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_23H2-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 (new in 6.9)
- 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.
Note:
- In 6.9 there is no Win 11 24h2 x64 like in dev and 6.10
- Therefore 6.9 uses Win 11 23h2 x64 for cross-compile target
Task-number: QTQAINFRA-6973
Task-number: QTQAINFRA-6109
Task-number: QTBUG-126030
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>
(cherry picked from commit d48682bcdf)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit db339574e2)
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.
Change-Id: Ie159ec48f83a7b7d10671d2200f7eb4fbcf93db3
Reviewed-by: Lars Sutterud <lars.sutterud@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit c52c9ef8b8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 2b1b4fdb37)
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.
Task-number: QTBUG-138859
Change-Id: I8270731a4afef7ab9af8df63326fb838e02968e8
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
(cherry picked from commit 9254959ace)
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit b04f1bb9fa)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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".
Change-Id: I117f6c4a8431058b9af22390942539a49c632d6a
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit c3f303b50b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 804108b9e3)
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
This makes configuring nightlies more simple and its results more
readable.
Pick-to: 6.8 6.5
Task-number: QTQAINFRA-5945
Task-number: QTQAINFRA-7069
Change-Id: I89ca6b65fbdfcd52dd607c008174e446dc6925f4
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 737eb7aa6d)
(cherry picked from commit 8a76f815cc)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Bullseye-backports has reached end-of-life and is no longer
supported or updated.
Pick-to: 6.8
Change-Id: If154155507e159333c0d0b638fc6910b1814665a
Reviewed-by: Patrik Teivonen <patrik.teivonen@qt.io>
(cherry picked from commit 8882c8cac4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit ab6e833690)
New target:
- windows-11_23h2-arm64-msvc2022
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
This target has no match in 6.9 (skipped):
- windows-11-x86_64-arm64-tests-23H2 (cross-compiled)
Task-number: QTQAINFRA-6973
Change-Id: I049f84ad7df91cd62e7f40044d8ef40705ac34e1
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 657ac0bcbb)
(cherry picked from commit ad7ab32f44)
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.
Task-number: COIN-1211
Change-Id: Ib7d3eca7045598825f7a5ad774f60d2bc9db2458
Reviewed-by: Alexandru Croitor <alexandru.croitor@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>
(cherry picked from commit 56e326ae31)
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.8
Change-Id: I3458984aa22f8c82ed4d0bfac8ac8e71356e8789
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit d72ace1a0d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 2f2c8bf347)
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.8
Change-Id: If31922e931db19ab189850b975ce0131a64321b4
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 708548742b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 298d280d64)
The flite plugin for QtSpeech wasn't tested on CI as the development
files weren't installed.
Pick-to: 6.8
Change-Id: Ieefe42f67009b99cc95f54567f224972d12c1538
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Reviewed-by: Tim Blechmann <tim.blechmann@qt.io>
(cherry picked from commit fb878af9e7)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 37880472c7)
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
Change-Id: Id8859c29da08144c60ed3d6301d2c65c8d602d1f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit 9c39ae1424)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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>
(cherry picked from commit c9423aea6c)
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.8 6.5
Task-number: QTQAINFRA-6761
Change-Id: Ie676f94b81e7281ec84d9fbbfa2fd7f1d28dfbca
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 066371f7cd)
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
(cherry picked from commit 00d2f82e35)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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.8 6.5
Task-number: QTQAINFRA-7236
Change-Id: I243632d958007142792df0cbd9a341fb2b86df69
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
(cherry picked from commit 4aaba78cb4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 2fe0aec0da)
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.8
Change-Id: I7c781264ad67508d19fd44556a9caf0f201638d4
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 0706273c76)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 532005d760)
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.8
Change-Id: I0cfb99187f303b22dbdd46a7a848b85dbf571aad
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit 0583292728)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 64ee2cb321)
We already have two tests on u2404.
Replace the usage of ubuntu-22.04-developer-build-x11-tests with u2404
one.
Pick-to: 6.8
Task-number: QTQAINFRA-7146
Change-Id: Ib3b1888e1bbb70637432ac70f6116b723e71320d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
(cherry picked from commit e2e25e8a66)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit e4cc5bd5c1)