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