Commit Graph

49 Commits

Author SHA1 Message Date
Samuli Piippo
85d9d71e27 Coin: enable examples for qtapplicationmanager
Pick-to: 6.4 6.3 6.2
Change-Id: If4065a9b309fafd8e05d018495dedd22be956aa7
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-08-09 10:36:34 +00:00
Samuli Piippo
28f932dda7 Add support for QtQuick3DPhysics
QtQuick3D physics engine using NVIDIA PhysX SDK.
PhysX is only supported on x86 and arm architectures.

Task-number: QTBUG-103253
Change-Id: I933f584d7a327da28d9c443ef809b0745af88a47
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-05-27 06:02:14 +00:00
Samuli Piippo
bde1e30b30 Add support for QtVNCServer
QtVNCServer is a commercial-only module and the source code
is only available for commercial Qt license holders and
requires SSH access to Qt Gerrit.

Task-number: QTBUG-103254
Change-Id: I8b1decb08651e54f59a6b05d3d8f480354cb04df
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2022-05-24 04:45:59 +00:00
Samuli Piippo
4b59ef89b5 Add support for QtSpeech
QtSpeech is again supported in Qt 6.4.

Task-number: QTBUG-102978
Change-Id: I71234246fc10086be9fa0fdb2f20f00a14674951
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-05-23 09:50:57 +00:00
Samuli Piippo
94e666417b Add support for QtHttpServer
Task-number: QTBUG-103254
Change-Id: I54e1b0d8d6f6c0dca1bebd220a577824f4dc8b63
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-05-23 09:50:44 +00:00
Samuli Piippo
7b0817669a Update handling of commercial modules
Add new packagegroup for all commercial-only Qt addon modules and add
new variable QT_COMMERCIAL_MODULES which can be used to control if the
modules are included in the build. The same variable also turns on the
use of Qt QML Compiler. Use common include file for the commercial modules.

Pick-to: 6.3 6.2
Change-Id: I673a06685b44a5f0f5518ae51bc45956432739a4
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-05-20 13:21:38 +03:00
Samuli Piippo
6a5ae1effb Coin: build examples for all modules
Add example build for the missing modules.
Skip qtapplicationmanager due to QTBUG-101508.

Pick-to: 6.3 6.2
Change-Id: Ib01935ac4314f3b97583f032e09fda2966f17549
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-05-05 11:29:51 +03:00
Samuli Piippo
a0e53e01e0 coin: use correct domain for yocto-cache
Pick-to: 6.3 6.2
Change-Id: I830bf9bcaabf954c4f25b380731781e557a134b6
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-05-03 10:29:53 +03:00
Samuli Piippo
e6fba93482 coin: rename the shared sstate-cache
Use DISTRO variable in the sstate-cache directory. This lets use
reused the ci configuration in other distro builds as well.

Pick-to: 6.3 6.2
Change-Id: I51ef6cca7fd938046e5b6510087fc4d62f2a4eb3
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-05-03 10:29:48 +03:00
Samuli Piippo
670a077467 Coin: add CI build for kirkstone
Add CI build using Yocto kirkstone branches and retire hardknott build
in favor of it. Hardknott is EOL on April 2022. Only dev branch will
continue to be tested against Yocto master.

Change-Id: I9aad0e14c1a5054b2e9eab85ec8a2f2d603f6427
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-04-26 08:09:56 +03:00
Samuli Piippo
9ee589de19 coin: use shared Hash Equivalence server
Use shared Hash Equivalence server together with sstate cache.
The Hash Equivalence server can further improve sstate re-use.

Pick-to: 6.3 6.2
Change-Id: I037b565344942cf99c4992e4ff9769fd47d9c77d
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-04-07 10:55:04 +00:00
Samuli Piippo
ab0d93e29e Coin: add static test build
Build Qt staticially with examples enabled but tests disabled.
We don't want to remove ptest from DISTRO_FEATURE, because that
would cause rebuild of most system components as well.

Pick-to: 6.3 6.2
Change-Id: Ic1181d09951ee5d50b08182600f0664b8859afcc
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-03-15 11:19:57 +02:00
Samuli Piippo
2d4825f309 Coin: adapt to variable renaming
In kirkstone, some of the variable have been renamed to
use inclusive language.

Pick-to: 6.3 6.2
Change-Id: Ic03fc3a748ea6a4e3e510040b9cd6b5e038d4662
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-02-24 09:36:41 +00:00
Samuli Piippo
0708a33ea6 Coin: use include files for configuration
Restructure the Coin build configs so that all configurations
are already in .inc files that can be easily included.

Pick-to: 6.3 6.2
Change-Id: I93d74254804b7d17106a3f08af2973464e669928
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-02-24 09:36:33 +00:00
Samuli Piippo
688791f03d Coin: use manifest to fetch meta layers
Use manifests to fetch meta layer repositories. This enables
us to easily pin the upstream layers to specific revision if
and when the latest revision gets broken.

Build again against master branch, the manifest is pinned to
working meta-openembedded revision.

Pick-to: 6.3 6.2
Change-Id: I5d217f6932aaf5eaacae8ccbc790ea31aaa27f37
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-02-01 19:18:25 +02:00
Samuli Piippo
3da9ed068a Coin: disable CI build against upstream master
meta-openebedded is currently broken due to nativesdk-python3-cryptography.

Pick-to: 6.3 6.2 6.2.3
Change-Id: I99fa9313c1c8d1196bc09a8755269ecffe75ce56
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-01-20 10:00:19 +02:00
Samuli Piippo
57b22c6ea0 qtwebengine: update to 94-based chromium
QtWebEngine based on 94 chromium can be build with python3.
Remove all references to python2 and its meta layer.

Latest oe-core has version of ICU, freetype, harfbuzz and ffmpeg
that are not compatible with Chromium. Disable those PACKAGECONFIGs
by default.

Change-Id: Ie2e38db14df0f51aaa87ecde7e0487b31be0bddd
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-12-31 09:29:05 +00:00
Samuli Piippo
7c192d68dc Revert "Coin: add required zstd"
This reverts commit a77f474aba.
Zstd is now available in the provisioning.

Pick-to: 6.3 6.2
Change-Id: Id66a3a8797e0c893318974a6fe2dd4e032d563b4
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-12-15 17:01:08 +02:00
Samuli Piippo
16be6131ae Use correct domain for yocto-cache
Pick-to: 6.2
Change-Id: I669912271b14cc35c09e390fe26b2da4a6cdb8b3
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-11-24 10:32:31 +02:00
Samuli Piippo
f7fd11bfce qtspeech: remove recipe
QtSpeech is not officially supported on Qt6. It has been compiling
until now, so it has been kept here, but since it now fails with
Qt 6.3, remove the recipe.

Change-Id: I2b0cce68b8bec82e0a5a434d0b3634ffb84eb6d8
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-11-15 10:16:19 +02:00
Samuli Piippo
d0e7002304 Add QML Script Compiler
The QML Script Compiler is a commercial drop-in replacement
for the cachegen tool to compile your QML script expressions
and functions to C++ ahead of time.

It is available only for commercial customers and source code
fetch needs proper ssh keys available for accessing the repository
at codereview.qt-project.org.

Usage of QML Script Compiler is not enabled by default, but if
enabled globally using ENABLE_QMLCOMPILER variable, all Qt modules
that have dependency to qtdeclarative are compiled using Qt QML Compiler.
Its usage can also be enabled or disabled by each individual recipe.

Task-number: QTBUG-95475
Change-Id: Iee8539ee8ddc17c70e9ed81ab3b4f242f9386586
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2021-11-05 14:58:29 +02:00
Samuli Piippo
3cc53e8e7f coin: use openembedded from the upstream source
Github won't be supporting git protocol anymore, switch to using
layer from openembedded.org.

Pick-to: 6.2
Change-Id: Id711fe7818d37650b0643c17bd3386ca1a344f9a
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-11-03 17:52:33 +02:00
Samuli Piippo
178142ee57 Coin: add builds against Honister
Honister is now released, add it to the CI test builds.

Pick-to: 6.2
Change-Id: Ice5813836d8a4edb435db71017d231468993edcf
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-11-03 09:53:21 +02:00
Samuli Piippo
673457878e Coin: build Qt packagegroups in CI integrations
Current CI build using the toolchain recipe is a bit limited as the
package_qa tasks were never ran for the Qt recipes. Also the rm_work
was not done which lead to disk space running out in CI builds. Add
both native and target packagegroup recipes to the target builds that
will ensure that both of the above mentioned tasks are now run.

Pick-to: 6.2
Change-Id: Ifb73b807f4f9f551836bfa20003aaf88bc758d78
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2021-10-29 12:40:52 +03:00
Samuli Piippo
8b7aa7dd6f Add recipe for QtWebView
Task-number: QTBUG-97001
Pick-to: 6.2
Change-Id: Id8f7dbfc242baaec11c07f7137e72b429f64cfee
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-10-06 15:19:39 +03:00
Samuli Piippo
a1a2a0b048 Coin: extend CI coverage to older yocto branches
Add dunfell and hardknott to the CI build. Skip building QtWebEngine
in dunfell, since it required newer cmake than dunfell can offer.
As Gatesgarth is already EOL, do not add it to testing although
it is still listed as compatible version.

Task-number: QTBUG-97065
Change-Id: I3538d756294043fae119c78d018c61be766f2538
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-10-06 10:17:00 +03:00
Samuli Piippo
4f46daa9e2 Add QtWebEngine
Build QtWebEngine using CMake. Include helper files (chromium-gn.inc and
gn-utils.inc) from meta-browser. QtWebEngine build no longer requires
additional support in the host system, instead the build time tools
are run using QEMU.

WebEngine requires python2, available from meta-python2 layer, and
at least CMake 3.19. Only oe-core/hardknott provides recent enough CMake.
CI builds of webengine are limited to hardknott for this reason.

To use system ICU, QtWebEngine requires ICU 68 or up. This is also
available starting from oe-core/hardnott.

spellchecker feature doesn't work properly, since it requires
a native util to be built.

Task-number: QTBUG-93825
Change-Id: Id150275f5adfedd8f1acdc5f92c46a437da84f2e
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
(cherry picked from commit 403ab76764)
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-09-30 13:23:25 +03:00
Pasi Petäjäjärvi
ce7a39b78b QtIF: Use qface from 3rd party repo
With newer yocto old qface recipe using our internal repo
suddenly preferred pypi own repository for qface. So
use external version of qface instead and try to get that
added to meta-python also.

Fixes: QTBUG-96727
Change-Id: Ia6fae613f6d8ced531dad2bda4f1abc18cbf7eba
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2021-09-24 07:46:29 +00:00
Samuli Piippo
170ca88bcd Coin: increase CPU count for CI builds
For Coin builds, ask for 16 core build machine, but limit the maximum
number of bitbake tasks to 8. Try to speed up the builds, but to avoid
OOM which can occur when several Qt modules start to build in parallel
after dependency to qtdeclarative is satisfied.

Pick-to: 6.2
Change-Id: I3a0d646f4204fb0269bba2356543589a5620ed3e
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-09-16 15:08:07 +03:00
Samuli Piippo
bc1d2a0fff Coin: give CI build more time to complete
Raise max build to 12 hours, but lower time without output to 2 hours.

Pick-to: 6.2
Change-Id: I866bf07324793fce4ce88189053216abd8b4302f
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-09-09 22:11:07 +03:00
Samuli Piippo
6886bebec1 Coin: allow yocto version specific configurations
Add easy way to have different configuration for the CI builds
based on the current Yocto version.

Change-Id: Idfda5d2e9079864e210382fa0e928b969fae311d
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 70dff380b2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2021-09-05 19:43:49 +00:00
Samuli Piippo
a7720008b6 Coin: use toolchain for the CI test
Build the toolchain recipe for CI test, which allows us the limit
what recipes are included.

Change-Id: I9c532dcc97979bf40a0ca094850d7a0602f2f9d0
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit d4232d5a71)
2021-09-02 08:48:17 +03:00
Samuli Piippo
3bcc10f225 Remove QtQuickControls2
QtQuickControls2 was merged into QtDeclarative, no need for separate
recipe anymore.

Change-Id: I0bc860c7140c98f920b9811498491644245c7e0b
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-09-02 08:47:45 +03:00
Samuli Piippo
fdda14cfbc Coin: remove uninative overrides
Upstream has more recent versions already.

Pick-to: 6.2 6.1
Change-Id: Idc64576ddbdb2549e2b4af802cc8b8b5b62f704e
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-08-24 14:37:40 +03:00
Samuli Piippo
a77f474aba Coin: add required zstd
Bitbake now requires zstd, which is not yet available in the provisioning
of the CI machines.

Change-Id: I9f75219a686580ae228384c4fb4a6222a0e6fd09
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-08-24 14:37:36 +03:00
Samuli Piippo
d242882342 Coin: update CI build to use only master branches
Cannot test with older yocto releases anymore.

Task-number: QTBUG-95705¶
Change-Id: Ibc2d07c2a40461971085ff80ee3f946824f0c4f8
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2021-08-24 14:37:31 +03:00
Samuli Piippo
7e83f2fc76 Convert to new override syntax
This is the result of automated script (0.9.1) conversion:

oe-core/scripts/contrib/convert-overrides.py .

converting the metadata to use ":" as the override character instead of "_".

Task-number: QTBUG-95705
Change-Id: Ieb57084e2cea47eb3407960ebfce404cee1ddc36
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-08-24 14:37:21 +03:00
Samuli Piippo
29999c4ffb qtgraphicaleffect: remove recipe
QtGraphicalEffects has been moved to be part of qt5compat
module for compatibility with Qt 5 code. This can be accessed
by importing "Qt5Compat.GraphicalEffects

Pick-to: 6.1
Change-Id: Ia3478e300938a9c612472bf98256d0f521489c33
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2021-06-11 06:40:34 +03:00
Samuli Piippo
89475754d3 Add recipe for Qt Multimedia
Qt Multimedia is still in WIP status.

Task-number: QTBUG-91411
Change-Id: I8e06e44ef58e260fb8cf6dd25f694cb405018d2a
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2021-04-08 13:05:32 +03:00
Samuli Piippo
c9da0eaec3 Update CI build
Hardknott Yocto version is now available, add it to the CI builds.
Only dev branch remains tested against Yocto master.

Change-Id: Iec1227d616ff95b8406217f4d18ebfba80a0300a
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-04-07 13:34:18 +02:00
Samuli Piippo
2eecf07106 coin: enable examples for all Qt modules
Pick-to: 6.1
Change-Id: I9ea4d3a639c53040eb412f1f90aa91560f6a9879
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-03-25 09:16:12 +02:00
Samuli Piippo
876480f7ce coin: use unique hostname in CI machines
NFS uses hostname as the client id and doesn't work properly
if more than one VM is using the same hostname. Change to unique
hostname before mounting the cache.

Pick-to: 6.0
Change-Id: I58791d8eecc22589dc39a9e21a3b3a40afdfd905
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2020-12-31 13:45:59 +02:00
Samuli Piippo
ecc126ed6e qtimageformats: add PACKAGECONFIGs for all imagetypes
Support for mng cannot be enabled, default to formats available from oe-core.

Change-Id: I9ed3e8b9e173f13a67fef4832aa6ef42681f7285
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2020-11-27 07:27:06 +02:00
Samuli Piippo
181b94d709 qtbase: update PACKAGECONFIGs
Add configuration for odbc and brotli, and use system sqlite
if enabled.

Change-Id: I7065bb00be3aa60e438a55c78a8361d102262e0e
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2020-11-27 07:26:59 +02:00
Samuli Piippo
d48f680374 coin: update CI builds
Expand CI builds to multiple yocto versions. In addition to current
dunfell builds, test also against gatesgarth and master branches.

Use different sstate-cache than other yocto builds to make
cache cleanups simpler.

Task-number: QTBUG-88313
Change-Id: I75ff327850c65a75aeead41564aa516dabf05c8e
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2020-11-11 18:04:24 +02:00
Samuli Piippo
ab7a701fec qtwayland: support building for mingw
Remove restrictions from qtwayland so the qtwaylandscanner can be
built for mingw nativesdk target. Add wayland to DISTRO_FEATURES
in CI builds so that the mingw build is also tested.

Change-Id: If46f1310318fbfc59f141dd2895b7b2ff708223c
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2020-09-22 14:24:09 +03:00
Samuli Piippo
06be05c249 coin: add ci build for mingw
Also move to using HEAD of dunfell branch for all
upstream meta layers.

Task-number: QTBUG-86431
Change-Id: I62ba53237fb763ba2676f8c9d030ce5d6b157989
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2020-09-22 07:31:57 +03:00
Samuli Piippo
f02fda42eb Update modules
Change-Id: Ifdd2095ebf7d64ab530258e989a85671de058ab9
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2020-09-07 14:58:14 +03:00
Samuli Piippo
a43c7553b9 Coin: add CI build instructions
CI build has 4 targets:
 - qemuarm64 w/o x11
 - qemux86 w/o x11
 - qemuarm w/ x11
 - qemux86-64 w/ x11

and it builds all recipes found in the layer.

Change-Id: I1b4861cb776c67710b16fcb6cac150f092925440
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2020-09-04 08:38:58 +03:00