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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
This reverts commit 0477a26495.
Reason for revert: This change breaks qtinterfaceframework mingw build
Change-Id: Ib0790c2bee99aa0133925b7663999e80906d882d
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>
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>
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>