Commit Graph

96 Commits

Author SHA1 Message Date
Samuli Piippo
563baf6e0f qtdoc: add module recipe
Part of the example sources are now built as Qt module. Add recipe
and dependency in qtdoc-examples.

Fixes: QTBUG-142244
Change-Id: I1df2290d36201aaa5f37cdbdfec96866e5506d12
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2025-12-03 12:53:32 +00:00
Khem Raj
7f5b84fd74 qtwebengine: Disable building on musl targets
Chromium needs lot of patches to build with musl
e.g. see meta-browser [1] for patches

Until there is interest to port qtwebengine to musl
mark it incompatible

[1] https://github.com/OSSystems/meta-browser/tree/master/meta-chromium/recipes-browser/chromium/files/musl

Change-Id: Icb862000b957f89bf793b2cda4fada23c38bfe01
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
(cherry picked from commit 8827bfefbc)
2025-12-03 07:26:19 +00:00
Samuli Piippo
23095adb40 qtcanvaspainter: add examples recipe
Add recipe to build the qtcanvaspainter examples.

Task-number: QTBUG-141976
Change-Id: Ic49c3189e4eb5b929dc806b644253cd1d3ca0bae
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
2025-11-25 16:00:46 +00:00
Samuli Piippo
aa8c472c80 qttasktree: add examples recipe
Add recipe to build the qttasktree examples.

Task-number: QTBUG-141685
Change-Id: I56c5fc87f248089bb2baf7da3ef20948a29c3d11
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2025-11-25 10:53:37 +00:00
Samuli Piippo
f419c3f943 Add recipe for Qt Canvas Painter
Qt Canvas Painter is an accelerated 2D painting solution for Qt Quick and
QRhi-based render targets.

Fixes: QTBUG-141976
Change-Id: I40f00c68d6334e2bbb7e4f35fc4bf12bb394e65e
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2025-11-21 12:32:53 +00:00
Samuli Piippo
ee50a715dc Add recipe for QtTaskTree
Task tree is a generic framework for automatic management of
asynchronous tasks.

Fixes: QTBUG-141685
Change-Id: Id975efb2320648d688a9aa80ea538fb688fef5c3
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2025-11-05 13:03:22 +00:00
Samuli Piippo
fbaed93d8b Add separate recipes for Qt module examples
Building Qt examples as part of the module build is no longer
recommended and results in missing files in some of the examples.
Add separate recipes for each Qt module that has examples.

Don't package sources with the examples, but set debug mapping
to the module's source path.

Qt module examples are mainly available with BSD-3-Clause license,
regardless of licenses that the modules themselves are using.

Since qtdoc module has only examples, remove the module recipe.

Fixes: QTBUG-136651
Change-Id: Ic8f8c579a28b9a1369f8463f725574b0c67a896a
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
2025-08-27 12:04:04 +00:00
Samuli Piippo
b5de66d6c3 qtlottie: add support for lottietoqml tool
lottietoqml tool converts from Lottie files to QML files using the
VectorImage generator.

Pick-to: 6.10
Change-Id: I4ca699372300dcfef771b75e7f4c30fdfad182dd
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2025-06-27 10:32:15 +00:00
Samuli Piippo
313ce6e26f Adapt to QtWayland client move to QtBase
QtWayland client and tools were moved to qtbase. Add new PACKAGECONFIG
for qtwaylandscanner and enable it on native(sdk) builds. Remove the
now obsolete native(sdk) qtwayland builds and dependencies to it.

Change-Id: I2dc351d5b81d586bb768a0b09953eaa213fd556c
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2025-06-02 06:47:34 +00:00
Samuli Piippo
7a740e66fe Add qttools tools package
QtTools tool package has few misc runtime tools that may be
useful during development.

Pick-to: 6.9 6.8
Change-Id: I35f88c4f98d64d2aa761c19e39ec4a985f5bd1c5
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
2025-01-31 09:47:45 +00:00
Samuli Piippo
8abb0e74a2 qtpdf: use opengl DISTRO_FEATURE for dependencies
QtPdf requires opengl DISTRO_FEATURE, but it can be built independently
from the webengine.

Pick-to: 6.9 6.8
Task-number: QTBUG-129718
Change-Id: I6707a34494babf298d964fa1092c7aa126031db3
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
2025-01-31 09:47:37 +00:00
Samuli Piippo
edce4936b4 qtopcua: add opcua tools to sdk
QtOpcua has host tools that need to be included in the SDK.
Add additional PACKAGECONFIG for open62541 which has openssl
dependency. Mingw32 does not support this in nativesdk builds,
but it's also not necessary for either native or nativesdk builds.

Pick-to: 6.9 6.8
Fixes: QTBUG-132822
Change-Id: Ib0c9f7634ac578882ca5585be430312736f61470
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2025-01-17 11:12:09 +00:00
Samuli Piippo
0892d298bc sdk: always include build tools
Include cmake and ninja always to sdk since mingw
can build both starting in kirkstone.

Pick-to: 6.8
Task-number: QTBUG-131438
Change-Id: Ie5ab5320d412a11526682d15fa4fa15abb4ebd91
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2024-11-26 07:03:28 +00:00
Ari Parkkila
d2241c2842 qtpdf: Add dependency to webengine
QtWebengine depends on mesa-dev packages so opengl or vulkan
must be enabled on DISTRO_FEATURES to pass its config check.
Qtpdf is implemented within webengine so instead of forcing
support for opengl or vulkan make qtpdf depend on webengine.
This omits config where qtpdf is wanted without webengine.

Change-Id: I4e94201d3c2c3a1ef97549ec330f7c4c4408b3a9
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2024-09-23 08:12:16 +03:00
Khem Raj
96af7a74c9 nativesdk-packagegroup-qt6-toolchain-host-addons: Add wayland dependent packages conditionally
This ensures that these packages are added only when wayland is
enabled in DISTRO_FEATURES, since now these packages do check for
this distro feature themselves, this fixes the SDK builds for eglfs
distros

Pick-to: 6.7
Change-Id: If4f231ee8999b6a7499d63d4b0bd104ab1ff510d
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2024-05-14 05:28:04 +00:00
Samuli Piippo
a18047ef52 packagegroup: add Qt modules only on supported archs
QtQuick3dPhysics, QtPdf and QtWebengine have limited
architecture support.

Pick-to: 6.7 6.6 6.5
Change-Id: Icf1d7628de5365825c79030462f019b15d9ae9a0
Reviewed-by: Alex Bu <alex.bu@qt.io>
2024-02-12 09:10:47 +00:00
Samuli Piippo
8d3758ce9e packagegroup: fix warning caused by inherit_defer
Yocto scarthgap is now using inherit_defer which causes allarch
to be inherited last, when nativesdk wants to always be the last one.
Workaround this by setting PACKAGE_ARCH to empty, which causes the
allarch inherit to be skipped. PACKAGE_ARCH will still end up being
the same value, as packagegroup will set it correctly.

Fixes QA Issue: nativesdk-packagegroup-qt6-toolchain-host: native/nativesdk
class is not inherited last, this can result in unexpected behaviour.

Pick-to: 6.7 6.6 6.5
Change-Id: I0457a62333d88b14c3330e3349f585dc6c3eec35
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2024-01-31 09:59:45 +00:00
Samuli Piippo
d457a6e717 Add recipe for QtDoc
QtDoc does not have any libraries, but it provides set of nicer
demos.

Pick-to: 6.7
Change-Id: I17c229c0a37f6e86bef5914cf5a2824fadfe73cd
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2024-01-26 05:27:15 +00:00
Samuli Piippo
511db28072 Workaround too eager packagegroup sanity check
Amend 95fa269ffa and add same workaround
also for the commercial packagegroup to prevent QA error: "An allarch
packagegroup shouldn't depend on packages which are dynamically renamed."

Pick-to: 6.6 6.5
Change-Id: I6eaee9aa74681cfb70fb738d966cd7381f4bcdb0
Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
2023-10-19 05:25:43 +00:00
Samuli Piippo
bc1179c5a3 Remove checks for required meta layers
Since meta-openembedded and meta-python are now dependencies,
we can simplify some of the recipes that were checking if the
layers were available. Now always use the features available
from those layers.

Pick-to: 6.6 6.5
Change-Id: Ia70658e0c64b916c9d36ad9aca4c40172b86b5b6
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2023-10-18 12:39:59 +00:00
Samuli Piippo
3df4dfb2e2 qtgraphs: remove opengl requirement
QtGraphs no longer requires opengl to work.

Pick-to: 6.6
Change-Id: I03e166dc2d4265b74156f17d56ba4e20bc180bfd
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2023-10-17 11:45:51 +00:00
Samuli Piippo
5b387fd78d packagegroups: enable workaround for allarch packagegroup
Enable workaround for the sanity check of allarch packagegroups
which caused
ERROR: nativesdk-packagegroup-qt6-toolchain-host-essentials-1.0-r0
  do_package_write_rpm: An allarch packagegroup shouldn't depend on
  packages which are dynamically renamed (nativesdk-qttools-dev
  to nativesdk-libqt6uitools-dev)

Nativesdk changes the PACKAGE_ARCH correctly, but it cannot be
inherited first because that would throw another sanity warning.

Pick-to: 6.5 6.2
Fixes: QTBUG-113178
Change-Id: Ifd77ef76f37b9fe39ef38adcc28c87130bf6d6d4
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2023-04-28 06:47:18 +00:00
Samuli Piippo
a938dbc6c5 qtgraphs: include only when opengl is available
QtGraphs has hard dependency to opengl, don't include it in packagegroup
unless DISTRO_FEATURE is enabled.

Change-Id: I86ea98c7dd70d25ba20b348681e3c17e782c9576
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2023-04-20 18:46:33 +00:00
Samuli Piippo
4d5ed9e090 Add recipe for Qt Graphs
Qt Graphs for data visualization will be replacement for Qt Datavis 3D.

Fixes: QTBUG-112806
Change-Id: I63e5c746a1e79c14a7e203800d60401497e5bb0d
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2023-04-19 10:20:30 +00:00
Martin Jansa
f26b62e29e packagegroup-qt6-commercial-modules: include qt6-commercial.inc
* all rdepends are skipped without Commercial Qt, make sure the
  packagegroup is skipped as well

* fixes:
  ERROR: Nothing RPROVIDES 'qmlcompilerplus' (but meta-qt6/recipes-qt/packagegroups/packagegroup-qt6-commercial-modules.bb RDEPENDS on or otherwise requires it)
  qmlcompilerplus was skipped: Available only with Commercial Qt
  NOTE: Runtime target 'qmlcompilerplus' is unbuildable, removing...
  Missing or unbuildable dependency chain was: ['qmlcompilerplus']
  ERROR: Nothing RPROVIDES 'qtvncserver' (but meta-qt6/recipes-qt/packagegroups/packagegroup-qt6-commercial-modules.bb RDEPENDS on or otherwise requires it)
  qtvncserver was skipped: Available only with Commercial Qt
  NOTE: Runtime target 'qtvncserver' is unbuildable, removing...
  Missing or unbuildable dependency chain was: ['qtvncserver']

Pick-to: 6.5 6.4
Change-Id: I373c034989a643b5e95f84deb5130580201eddea
Reviewed-by: Martin Jansa <Martin.Jansa@gmail.com>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2023-04-17 10:29:07 +02:00
Samuli Piippo
e54ee19bfa Make python-html5lib optional
Add python-html5lib to the SDK only if openembedded layer is available.

Pick-to: 6.5
Change-Id: I381382c355e2834c2aadd5976e59007be0549ac9
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2023-03-27 10:39:43 +00:00
Michal Klocek
aec03e788c Add python3-html5lib to sdk
This is required by qtwebenigne to be compiled with sdk.

Pick-to: 6.5
Change-Id: I0053ca241c1b60b60edbc99f0830434a1d95f92d
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2023-03-15 13:55:52 +01:00
Samuli Piippo
8c17fb058a qtgrpc: include host tools in the toolchain
Add fix for protobuf so that we can build and include nativesdk-qtgrpc
in the toolchain. The protobuf fix has been merged in meta-openembedded
master, but not in langdale.

Pick-to: 6.5
Change-Id: I37a90e1a79d64a8154ab6fb510a9d8d5cf6d26c5
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
2023-01-27 10:39:06 +00:00
Samuli Piippo
56710e8724 Add recipe for QtInsightTracker
QtInsightTracker is a commercial-only module.

Task-number: ANALYTICS-237
Task-number: QTBUG-108568
Pick-to: 6.5
Change-Id: I30412dec8552898b76865402c2e2ccfcae8d1904
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
2023-01-16 16:12:21 +00:00
Samuli Piippo
6db104bd29 Add recipe for QtgRPC
QtgRPC module is Providing protobuf and gRPC support for Qt.

Cannot include nativesdk-qtgrpc in the sdk yet, since it requires
fix to protobuf recipe in meta-openembedded.

Task-number: QTBUG-107921
Change-Id: Ie5ef1b493b1b5550c7b7f308a638c9855342dfa5
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-11-24 12:20:31 +00:00
Samuli Piippo
fb725ebed9 Add recipe for QtLocation
QtLocation is back in Qt 6.5.

Task-number: QTBUG-108731
Change-Id: Id86ade02040d626ecadb6c35f173b3be25f02e97
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
2022-11-24 05:53:33 +00:00
Samuli Piippo
c48b6f8890 Use *-tools package only for tools
Some of the modules have executables that are necessary for the
module to work properly. Don't put them into the *-tools package
which is not installed by default.

Task-number: QTBUG-99702
Change-Id: I7a9e8532862644574bd2bfb729e6efe466dac070
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-11-14 08:06:30 +00:00
Samuli Piippo
444b6cc7ad qtquick3dphysics: include the new cooker tool to images
QtQuick3DPhysics has a new runtime tool that should be included
in the images.

Pick-to: 6.4
Change-Id: Ib6dd643217b1dea76ff42a48183f78427cc2eadf
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-10-20 07:18:58 +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
f389ceaa95 packagegroup: limit modules based on architecture
Not all modules are compatible with all architectures.

Change-Id: If44be478ff6cde47e4ad70ee31eb5059058307e5
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2022-05-25 09:06:08 +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
cba320e7bf qtserialbus: add tools to the image
QtSerialBus has canbusutil runtime tool that is useful to have
in the device.

Change-Id: Ib751cbb153d122ef6e2a58e3f7a455a58d668265
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2022-04-08 09:59:41 +00:00
Samuli Piippo
b24db734ac qtserialbus: remove native and nativesdk support
The tool provided by qtserialbus is a runtime tool and there no needed
to support either native or nativesdk builds.

Pick-to: 6.3 6.2
Change-Id: If1292680ec8f9afd1085b9a12b1976087cafe71f
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2022-04-05 08:14:02 +00:00
Samuli Piippo
bc0717a20b qtinterfaceframework: remove workaround
Kirkstone has been updated with working nativesdk-python3
builds and qtinterfacewramework can now be included in the SDK.

Pick-to: 6.3 6.3.0 6.2
Change-Id: Ibcaf520688a56f9607db89993aa9ec9e2d667844
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2022-03-23 07:06:58 +00:00
Samuli Piippo
c3d4a5722f qtdeclarative: include tools in packagegroup
qtdeclarative-tools has runtime tools, such as qmlscene,
that can be useful in the image.

Pick-to: 6.3 6.3.0 6.2
Change-Id: I359611f8a3e575d8b18b63c4f8a034ad5ab705a1
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2022-03-22 11:08:30 +02:00
Samuli Piippo
b32b7f2774 qtinterfaceframework: update workaround for kirkstone
Skip qtinterfaceframework also with kirkstone now that master
branch is using kirkstone as DISTRO_CODENAME.

Pick-to: 6.3 6.2
Change-Id: I8ff7c9c3289d4f2c8864c14a6abcf61fe34250a6
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-03-16 08:09:47 +00:00
Samuli Piippo
b2ccd0bd60 sdk: workaround failing nativesdk-python3-qface build
meta-openembedded/master has issues building certain python3
modules for nativesdk. For python3-qface, failure is from dependency
chain: nativesdk-python3-qface
 -> nativesdk-python3-watchdog
  -> nativesdk-python3-requests
   -> nativesdk-python3-pyopenssl
    -> nativesdk-python3-cryptography

Don't include qtinterfaceframework to sdk when using master branch
with poky until all modules can be built correctly.

Pick-to: 6.3 6.2
Change-Id: Id2837f1363a22cb28e45c1165631cfa3f37756a7
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-02-14 07:17:15 +00:00
Samuli Piippo
6a6937d2a9 qttranslations: remove qtquickcontrols2
Translations for qtquickcontrols2 were merged to qtdeclarative.

Change-Id: I287253d23fbd6c22eb68145f0ed94de0338a48e8
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 0d2f6465e0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2022-01-31 06:52:20 +00:00
Samuli Piippo
a03cfa981d sdk: don't filter nativesdk packages with DISTRO_FEATURES
The nativesdk builds have different set of DISTRO_FEATURES, which
by default don't include wayland, even if it's used for target builds.
Instead of filtering wayland packages based on the DISTRO_FEATUREs,
always include them. The nativesdk packages builds correctly, even if
wayland is not supported for the target.

Pick-to: 6.3 6.2 6.2.3
Fixes: QTBUG-99787
Change-Id: I9e00b5e4eacc340a985d0617911c02144ec3e6ed
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2022-01-18 09:52:34 +02:00
Samuli Piippo
dc6a7797e0 Add QtPDF
Add support for QtPDF, which is build from same sources as QtWebEngine.
The qemu wrapper needs adjustment to work in both webengine and pdf
builds.

Pick-to: 6.3
Task-number: QTBUG-99205
Change-Id: I985c7dac5e61b2c87b3a7ddeba3efcfd71f35e3f
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
2021-12-30 09:51:43 +02:00
Samuli Piippo
a59b72141a sdk: include nativesdk-qtserialbus-tools
QtSerialBus has canbusutil that is expected to be available in the sdk:

CMake Error at usr/lib/cmake/Qt6SerialBusTools/Qt6SerialBusToolsTargets.cmake:85 (message):
  The imported target "Qt6::canbusutil" references the file

     "usr/bin/canbusutil"

  but this file does not exist.

Pick-to: 6.3 6.2
Change-Id: I59dedc2767c47b6dcbfbed318ff8e698accba30c
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2021-12-13 17:37:38 +00:00
Samuli Piippo
d809311a65 qmlcompiler: add all needed packages to host SDK
Need to include -dev and -tools packages for Qml Compiler.

Change-Id: I573f835f7166cf3adde7ffc4ef477769b4b4f566
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 503ff87af5)
2021-11-25 14:12:22 +02:00