Commit Graph

52 Commits

Author SHA1 Message Date
Artem Dyomin
e5cf7b2d58 Fix missing ffmpeg for desktop Linux CI platforms
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>
2023-01-24 09:22:06 +00:00
Konrad Kujawa
63d72293b7 Add provisioning for gRPC
Add provisioning scripts to install gRPC.
gRPC is requirement to build QtGrpc

Task-number: QTBUG-105492
Change-Id: I1a6d008a1d2c1616000909aacdb721401f706168
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2022-12-07 07:57:21 +01:00
Allan Sandfeld Jensen
bb89b5ca77 Add optional dependencies for QtWebEngine
To better use system libraries and reduce the size of webengine libs

Change-Id: I626327e123ee93bc25f5b40d5adbdffa6dfb772d
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2022-11-24 22:27:26 +01:00
Heikki Halmet
fae885e9c1 Provisioning: Make bootstrap autostart run without terminal
Terminal in UI might cause issues with Autotest
This patch makes bootstrap-agent run in a background shell wrapper.

The wrapper waits 20secs for the VM's network to come up and exits
with an error if it doesn't.
After that it waits for 20secs for the context image to be mounted.
If no context image is mounted after that, it waits for one minute
and makes one mounting attempt, before launching bootstrap-agent with
or without context.

Pick-to: 6.4 6.2
Task-number: COIN-966
Change-Id: I9a3e490325d1fd7c0583b6d5db5eb2023e042571
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2022-11-24 21:18:53 +00:00
Topi Reinio
31c4ad1686 coin: Update provisioned qdoc, qtattributionsscanner binaries
Update qdoc to a version that queries system include paths from the
compiler, avoiding spurious documentation warnings in some environments.

Update qtattributionsscanner to a version that fails the documentation
build on incorrect input, i.e. incorrectly formatted qt_attribution.json
files.

Pick-to: 6.4
Fixes: QTBUG-108353
Change-Id: I3a64f7810cddafcbf9de66bd1d848c18f5677ad0
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
2022-11-17 19:20:31 +00:00
Johanna Äijälä
db68763094 Provisioning: Add Java 11 to Ubuntu20.04
Needed by RTA when compiling Android applications, minimum required
Java is 11.

Pick-to: 6.4
Pick-to: 6.3
Pick-to: 6.2
Change-Id: I9a64e8de322a576d5d94593b5666d72afea8744f
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2022-09-24 11:10:25 +03:00
Liang Qi
7e7c23669c provisioning: fix mdns to support both docker and network tests
Network tests require the system resolver to resolve IP addresses
back to host names, but "mdns4" seems to be unable to do that, and
instead prevents "dns" from doing its job. So we place it after "dns".

Done-with: Dimitrios Apostolou <jimis@qt.io>
Done-with: Thiago Macieira <thiago.macieira@intel.com>
Fixes: QTBUG-106013
Change-Id: If0379cf5f42b41964cf156cdf8691dbcfcc0275b
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2022-09-23 06:23:55 +00:00
Topi Reinio
505eb9e3a8 coin: Update provisioned qdoc, qtattributionsscanner binaries
Latest qdoc introduced a new command (\modulestatus) as well as other
fixes and improvements.

Pick-to: 6.4
Change-Id: Idcbd96bc1ec17c81d51c2413f6435ee1b7e12946
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2022-09-12 10:14:34 +02:00
Alexey Edelev
134c07923c Rename protobuf provisioning scripts
Use correct protobuf project name for provisioning scripts.
This also should trigger provisioning for all the involved platforms.

Change-Id: I4cfa74c1d41f497db528ee3ae152db1d51de821a
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
2022-09-08 10:27:57 +02:00
Alexey Edelev
ad84c5cb8a Update protobuf provisioning scripts
Enable protobuf provisioning for all linux platforms, since it's
required to build qtbase with protobuf support.

Delete install_protobuff for macos 10.14 since it's not used and
wouldn't build without special casing.

Change-Id: I9c7dea876c45dbcbfc3110b106ae683bbe9179ec
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-09-08 10:27:54 +02:00
Piotr Srebrny
51c663d171 Build static FFmpeg library on macOS
This patch modifies linux/ffmpeg-install.sh to work also for macOS.
The FFmpeg libraries are installed under /usr/local both for Linux
and macOS.

Since macOS x64 does not have the lzma lib for arm64 architecture
installed by default, I disable this libraries for FFmpeg. This
only affects the TIFF image decoder that we do not use.

Added the execute permission to the ubuntu scripts.

Change-Id: Ib8623c6a9bcdd24c89045ede0494839fb9cd2ecc
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-07-28 09:56:16 +02:00
Axel Spoerl
aa9095d4cd Harden cache delete script and extend to all Linux CI platforms
Log script activities and deleted toplevel cache files/directories.
Use sudo to override permissions in cache.
Remove legacy single file based cache if it exists by error.
Create cache directory with appropriate permissions if missing.

Pick-to: 6.4 6.3 6.2 5.15
Change-Id: Id6ad930bf8ba9233eeea8a7602d25c98d0058409
Reviewed-by: Simo Fält <simo.falt@qt.io>
2022-07-20 16:23:58 +00:00
Piotr Srebrny
a273e9f11c Provision FFmpeg library for QtMultimedia plugin
One of the QtMultimedia backends is implemented using FFmpeg.
This provisioning enables building and testing of this backend.

Change-Id: Ia196c2ae4b457aa6b8e3ee8e0f367197aadfe0d9
Reviewed-by: Simo Fält <simo.falt@qt.io>
2022-06-13 09:56:56 +02:00
Toni Saario
a2393b5882 Update git
Older git version does not allow fetching single specific sha1.

Pick-to: 6.2 6.3
Change-Id: Ib795659a597042876a5c7b6fab3875fe1e39873d
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2022-02-22 08:16:45 +02:00
Topi Reinio
69b329a55f coin: Update provisioned qdoc, qtattributionsscanner binaries
Latest qdoc introduced a new command (\qmlvaluetype) used in
qtdeclarative documentation, as well as other fixes and
improvements.

Pick-to: 6.3
Change-Id: I6453468fb36dbe38d62f5eb9de74beffd568673b
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2022-02-10 23:59:49 +01:00
Kai Köhne
becb423e80 Replace LGPL2.1 only header with LGPL3 one
This is in line with e.g. qtbase. Also remove outdated/unreferenced
license files.

Pick-to: 6.3
Change-Id: I5d3370ab453610f9c8165ff9e57db7ad4a785370
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-12-19 19:47:15 +00:00
Samuli Piippo
54c3a77fdf QEMU: update toolchains
Update qemu toolchains to include needed dependencies for QtWebEngine.

Pick-to: 6.2
Change-Id: Ia5cf09b3f94fe75d16304e717a9da04cb120ea79
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-11-26 14:21:09 +00:00
Allan Sandfeld Jensen
83b4afd584 Add python3 html5lib
Needed for qtwebengine in 6.3

Change-Id: I6dc941fabe4e28e3dce19db8f7812be034be8586
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-11-20 11:13:09 +01:00
Pasi Petäjäjärvi
b580128093 Provisioning: Install NFS support required by QNX QEMU
Task-number: QTBUG-87628
Pick-to: 6.2
Change-Id: I9100dd7eda11a9a6ebf35aa6100c6bf983402b64
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2021-10-27 10:12:03 +03:00
Pasi Petäjäjärvi
ffc3ef20a3 CI: Add NFS export
Export work directory via NFS for QNX qemu

Task-number: QTBUG-87628
Pick-to: 6.2
Change-Id: I57a2f612cf268bef4582726c9b0a1b953e74034b
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2021-10-27 07:11:55 +00:00
Topi Reinio
134a8546c6 coin: Update provisioned qdoc, qtattributionsscanner binaries
Latest qdoc has fixes that enables us to enforce zero warnings on
all qtbase modules.

Change-Id: Ie47011fa524fb869fb1e8856fd8c377e14be7e69
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-10-22 11:12:29 +02:00
Heikki Halmet
2aa8303236 Provisioning: Add OpenSSL for Android to macOS
Task-number: QTBUG-97243
Pick-to: 6.2
Change-Id: Ibf67b7d713904edb9f8ee83b35eb096e2d3f1eb1
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2021-10-18 14:22:16 +03:00
Heikki Halmet
3b09730b44 Provisioning: Re-install ca-certificates for Ubuntu 20.04
This makes sure that needed ca-certificates are installed during
provisioning

Pick-to: 6.2
Change-Id: I39289f237a54ca0805b1d9116ee899aecf02e72f
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2021-10-05 11:24:16 +03:00
Topi Reinio
74bc9ea94d coin: Ensure provisioned qdoc has proper permissions
The testing steps are done with the 'qt' user, so modify the ownership
and permissions when extracting the binaries.

Also update the version of the package itself.

Task-number: QTBUG-83851
Change-Id: I6d5318572e34c99637421e527d1e07286e55bfab
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-09-27 12:47:20 +00:00
Topi Reinio
f0b4d1c8f5 coin: Update provisioned binaries for qdoc, qtattributionsscanner
Also, change the install directory - attempting to install directly
to Qt's installdir won't work as it gets overwritten by modules'
binary packages.

Task-number: QTBUG-83851
Change-Id: I96cd95f99322d1278d066d22965e54cf3c7701b4
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-09-24 10:50:11 +02:00
Samuli Piippo
663ebcb102 Add zstd to Ubuntu 20.04
Needed for bitbake.

Change-Id: Ib7be3a971b970311adca25f46238d3fae838cba9
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-09-10 10:57:27 +03:00
Heikki Halmet
8dcbfc526e Set ulimit also for grapchical login
Graphical login requires DefaultLimitNOFILE=4096
to be set in user.conf.

Task-number: COIN-699
Pick-to: 6.2
Change-Id: Ia07e834ebcffa2ed24a7c211255a4c4c5a10ca10
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-08-26 21:17:07 +03:00
Allan Sandfeld Jensen
c4b8c908b6 Update node.js to 12
For Ubuntu it means using an alternative packages, for
openSUSE not using an alternative package.

Pick-to: 6.2
Change-Id: I09085428db083adc1ff1d68f384cd19c83605bfd
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-08-18 11:31:42 +02:00
Topi Reinio
e8a86ab6c8 Provision qdoc and qtattributionsscanner
Provision documentation generators for Ubuntu 20.04, and add 'TestDocs'
feature to the configuration already used for generating documentation.

This is to allow building docs during the testing cycle to block
integrations that introduce new documentation warnings, without the
need to add a dependency to qttools.

Pick-to: 6.2
Fixes: QTBUG-83851
Change-Id: I74d7daeb7abb49403e97af41b0521f903607ce55
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-08-16 11:21:31 +02:00
Heikki Halmet
8fa865b37b Update Yocto toolchains
Task-number: QTQAINFRA-4459
Change-Id: I0a6144db1ca1ceb35791749bf5b056ced2307ab9
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
(cherry picked from commit 34d0ca0f39)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2021-07-08 09:01:53 +00:00
Allan Sandfeld Jensen
3f551fedd6 Add qtwebengine dependencies to provisioning
Pick-to: 6.2
Change-Id: If2cc949ce0669281d65995175480ac7cbd9fad74
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
2021-07-06 09:32:23 +02:00
Tony Sarajärvi
e0eb04ecf8 Add execution attribute to provisioning scripts
Change-Id: Ia241a4211d24d2788f0f0ef9af55b23a6b227624
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-07-01 15:40:33 +03:00
Dominik Holland
92f423c06d Provisioning: Install libdlt-dev
Fixes: COIN-217
Change-Id: I3ce5da4d6b8e79a766ad90715462a9c8b7c50294
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-06-08 11:18:57 +02:00
Heikki Halmet
ba869e1975 Add Integrity target for QtBase including provisioning changes
At this point let's add only target for QtBase. Target for
QtDeclarative, QtQuick3d and QtQuickcontrols2 will be
added later when we have all required fixes.

Task-number: QTQAINFRA-3555
Task-number: QTQAINFRA-4285
Change-Id: I59ef76079e98ba428cdb7abcb2560f434c37f517
Reviewed-by: Kimmo Ollila <kimmo.ollila@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-06-04 11:25:05 +03:00
Heikki Halmet
a4b61379ca Provisioning: Resize ulimit value for open files
Linker for Qt Webengine builds needs to open multiple files.
Without this it will hit the limit

Pick-to: 6.1
Pick-to: 6.1.0
Pick-to: 6.0
Task-number: COIN-699
Change-Id: I53b8c38a4f719714971ca6a4b65349716a873170
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-04-19 13:01:22 +03:00
Heikki Halmet
027f8ccb08 Provisioning: Add Vulkan installation for Ubuntu 20.04
Vulkan is needed by examples

Pick-to: 6.1
Pick-to: 6.1.0
Pick-to: 6.0
Task-number: QTBUG-92545
Change-Id: I2f814e452c88c04919b26eb42e90bac18356bbe7
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
2021-04-13 10:02:22 +00:00
Toni Saario
32579bc3c4 Add conan to path
Pick-to: 6.1
Change-Id: I90e028409f606a703fd9b567a221f3f946f11d61
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-04-12 06:49:25 +00:00
Samuli Piippo
5fba592288 Remove old QNX provisionings
QNX 6.6 and 7.0 are not needed since they don't support Qt6.

Change-Id: I56d71bbebf421d1a5d952815878217b0bfdc85b2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-04-08 07:18:50 +02:00
Heikki Halmet
b64b4b169e Add Ubuntu 18.04 for Qt6 binary packages
We need to start using Ubuntu 18.04 with Qt6 binary package
targets. Ubuntu 18.04 includes older GLIBC version which
shouldn't cause any problems with linux distributions supported
by Qt6

Tests will be executed with Ubuntu 20.04.

Task-number: QTQAINFRA-4193
Change-Id: Icb189c509351ff080a2c6431299cc0be6ba8adc1
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-02-16 08:18:52 +01:00
Marianne Yrjänä
036729ed05 Add QNX7.1 to CI
Task-number: QTQAINFRA-3768
Change-Id: I9c0aa78fad9c6a1263e75b06fa954c335f4b6ec2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-02-08 19:32:25 +02:00
Toni Saario
db7926c715 Disable network LSO/TSO on linux and macOS VMs
LSO/TSO causes problems handling network packets and deteriorates the
network speed to below 1MB/s.

Task-number: QTQAINFRA-4241
Change-Id: Ib999035668eefe51d59715c9a18f42c9e3dfdf21
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-02-05 17:49:51 +00:00
Heikki Halmet
e67fa087db Provisioning: Install Conan package manager
Conan package manager is need for addtional libraries

Task-number: QTQAINFRA-4190
Change-Id: I5cb07a137505f15d536989c6d5127f607735a17e
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-01-26 14:15:15 +02:00
Samuli Piippo
ca8a34f687 QEMU: update toolchains
Update yocto toolchains and use qemu from the toolchain.
Using GCC 10.2.0 and QEMU 5.1.0

Task-number: QTQAINFRA-3836
Task-number: QTQAINFRA-3741
Task-number: QTBUG-84167
Change-Id: I5bfa2c67100299c1c910cae2453b93dbc37cbb55
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2021-01-18 11:26:11 +02:00
Simo Fält
b792fd56db Provisioning: Install libClang 10 with dynamic libs
As Qt uses only static archives of libclang, we have to install
dynamic version as an additional package. Libclang is required
for example QtForPython.

Pick-to: 5.15
Pick-to: 6.0
Change-Id: Ic9d70398113defe3561f261aee369b423c18686a
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-12-23 08:02:32 +02:00
Heikki Halmet
4aa14ea9d7 Provisioning: Fix GCC installation for linux
Pre-built package was missing from cache and source package
was named as pre-built package

Pick-to: 6.0
Change-Id: I6d14b198ab7e3795e5f70986c9a50662225ac666
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2020-12-11 10:35:20 +02:00
Ville-Pekka Karhu
dac8188d90 Provisioning: Install QEMU Guest Agent to Linux
Task-number: QTQAINFRA-2462
Change-Id: I1d74a886a3056d3d8b7ca7bce676701c15e67c6f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-11-16 15:13:21 +02:00
Heikki Halmet
c7b4e6a19a Provisioning: Print system OpenSSL version to versions.txt
Task-number: QTQAINFRA-3971
Change-Id: I6b2c616be39d893963a9dab51f3635d65799cf60
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-10-21 08:36:15 +03:00
Heikki Halmet
6ec71c345a Provisioning: Use system OpenSSL in linux instead of self built version
Task-number: QTQAINFRA-3863
Change-Id: I98fc2d787956bb23d2e50b618fdae0a094e4eeed
Reviewed-by: Toni Saario <toni.saario@qt.io>
2020-10-16 15:57:07 +03:00
Dimitrios Apostolou
1dd03fc165 Ubuntu 20.04 now resolves test dockers like vsftpd.test-net.qt.local
Task-number: QTBUG-86187
Change-Id: I050a915cb72f91374f40d3db5ee2d417181eda8a
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-10-16 12:46:49 +02:00
Samuli Piippo
be4e07e534 provisioning: add diffstat for yocto builds in Ubuntu 20.04
Change-Id: I912021e4533fcad0ac45a86bb31f8cf01e176172
Reviewed-by: Toni Saario <toni.saario@qt.io>
2020-09-02 17:28:06 +03:00