ptest build had a subtle problem with qtbase where it was using
Qt6BuildInternals package from native sysroot instead of the target
install path. This could add compiler flags that were not supported
for the target architecture:
cc1plus: error: '-fcf-protection=full' is not supported for this target
QT_ADDITIONAL_PACKAGES_PREFIX_PATH is not used in qtbase/CMakeLists.txt:
find_package(Qt6 REQUIRED COMPONENTS BuildInternals CMAKE_FIND_ROOT_PATH_BOTH)
so the current approach for using Qt from the install path was not working.
Change the ptest build from using QT_ADDITIONAL_PACKAGES_PREFIX_PATHs
to using separate cmake toolchain file that prepends the install path
to CMAKE_FIND_ROOT_PATH, which makes CMake find the target Qt packages
correctly.
Change-Id: Idc99a26577886208b85bafe811f61538bb38d5bc
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit b6a93fbdb6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
__qt_toolchain_initial_qt_host_path is assigned to QT_HOST_PATH and then
to CMAKE_FIND_ROOT_PATH. Problems occurs if that path is relative.
CMake doesn't do relative path resolving by default in find_package,
when doing sub-prefix checking between find root path and prefix path.
Patch the qt.toochain.cmake so that it always uses absolute path for
__qt_toolchain_initial_qt_host_path, but make it still based on its
own location.
Fixes: QTBUG-103818
Change-Id: I1cce126c243c017b1cecd14a0fd616cb0328fe6d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit ea541e308f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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.
Change-Id: I673a06685b44a5f0f5518ae51bc45956432739a4
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 7b0817669a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Building Qt modules uses extra CMake instructions that try to be clever
about which CMAKE_PREFIX_PATH to use. With SDK, these instructions end
up using the SDK host paths in the device instead of the actual device
paths. Add CMake option to prevent Qt from changing the default prefix.
Fixes: QTBUG-103577
Change-Id: Ia933c843d811e6adb2ed4ede4708f55a6f0e8f0c
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit ec7e50bbaf)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
QT_BUILD_TOOLS_WHEN_CROSSCOMPILING has been deprecated in 6.4,
and cross-compiling compile time tools from sdk doesn't make
sense, all runtime tools are still being compiled.
Change-Id: Ia35255e3b84c38342be58b11461a4ee908fba1f9
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 73e88c5848)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Developer_build will include all tests, including private tests,
enabling verification of Qt functionality on target platform.
Change-Id: Icd477958fc7e8144194c5cae3f5b94eebfee6045
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
(cherry picked from commit 9036696107)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Add example build for the missing modules.
Skip qtapplicationmanager due to QTBUG-101508.
Change-Id: Ib01935ac4314f3b97583f032e09fda2966f17549
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 6a5ae1effb)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Use DISTRO variable in the sstate-cache directory. This lets use
reused the ci configuration in other distro builds as well.
Change-Id: I51ef6cca7fd938046e5b6510087fc4d62f2a4eb3
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit e6fba93482)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Multiple examples provide the same library which causes packaging failure:
ERROR: qtinterfaceframework-6.4.0-r0 do_package: qtinterfaceframework-examples: Multiple shlib providers for libInstrumentCluster.so
Add the library to PRIVATE_LIBS, since it's only used by the examples.
Change-Id: If09bc7d235171b2b844ec579f6affa6fbe3f8a6d
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 90a8c72bed)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
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>
(cherry picked from commit 670a077467)
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
QtWebEngine normally does a host build before the actual
cross-compilation build. We can skip that since during the
cross-compilation, the target binaries are run using QEMU
instead of ones from the host build.
Fixes: QTBUG-102378
Change-Id: I586a68641b48678933ed91a742235c6b22f1d109
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
(cherry picked from commit 73927c6db3)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The compile time and runtime tools are referenced by CMake files
and if missing from sysroot, it can cause errors suchs as:
| The imported target "Qt6::canbusutil" references the file
|
| "/home/mak/yocto-raspberrypi-latest/build/tmp/work/cortexa53-poky-linux/smartcore/2.2+gitAUTOINC+3970c5b703-r0/recipe-sysroot/usr/bin/canbusutil"
|
| but this file does not exist.
Stage all files in bin and libexec dirs to make sure cmake builds work,
even though the binaries are not actually used during the build.
Fixes: QTBUG-102370
Fixes: QTBUG-97707
Change-Id: I3326e7b8f970952f6d18591204cb78e5a0defcf5
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
(cherry picked from commit 9334145f37)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This reverts commit bab800db57.
Fix has been merged to qtquickdesigner-components.
Change-Id: I1ef7d09e3d1c9517aa5c7abbf376cb9bb9422009
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 7a4cbf2995)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Use shared Hash Equivalence server together with sstate cache.
The Hash Equivalence server can further improve sstate re-use.
Change-Id: I037b565344942cf99c4992e4ff9769fd47d9c77d
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 9ee589de19)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Qt configure has lowered its verbose when not using developer-build.
Increase the verbose level to have the configure summary of the
Qt module back into the logs.
Change-Id: If742b68353fe6f0614bf4be8f355cfc24f9a42f3
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 312d7185d8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Dunfell still has CMake 3.16, which is the default minimum version
for Qt. Use it for qtquickdesigner-componets as well.
Change-Id: I07c0c35dfc589bae4fc9d47e4ec31ef27042454d
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit bab800db57)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Use PACKAGECONFIGs for modbus and socketcan supports. This adds
needed runtime dependency to libsocketcan.
Fixes: QTBUG-102197
Change-Id: I0b0aebfa3f9fd896e0307415c54efb9fc7f1b93a
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
(cherry picked from commit 0f598c3c14)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
The tool provided by qtserialbus is a runtime tool and there no needed
to support either native or nativesdk builds.
Change-Id: If1292680ec8f9afd1085b9a12b1976087cafe71f
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
(cherry picked from commit b24db734ac)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Newest version is 4.4.1 so update it in the git as well
Task-number: QTBUG-101714
Change-Id: Ifd65867cc25abacd37bf1e90c0638bc50ac476b5
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
(cherry picked from commit 8d84283339)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Kirkstone has been updated with working nativesdk-python3
builds and qtinterfacewramework can now be included in the SDK.
Change-Id: Ibcaf520688a56f9607db89993aa9ec9e2d667844
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
(cherry picked from commit bc0717a20b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
qtdeclarative-tools has runtime tools, such as qmlscene,
that can be useful in the image.
Change-Id: I359611f8a3e575d8b18b63c4f8a034ad5ab705a1
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
(cherry picked from commit c3d4a5722f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Prepend PATH env with the path to the bin directory in the cmake
toolchain file. This let's CMake to find CMAKE_MAKE_PROGRAM (make or
ninja) without need to specify it explicitly when using the qt-cmake*
helper scripts.
Change-Id: Ic7ce057421395d98158b3ad6e529f30b629bdded
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit eaee55e9fe)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
CMake and Ninja combination does not support changing RPATH on Windows hosts,
even when cross-compiling. Add CMake configuration to workaround this.
Change-Id: I5d82c0a7f91cf81a0b3ed7c0f14aeccc36464f91
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 554b947ba4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Make sure the qt-cmake* helper scripts get correctly created
for mingw toolchains.
Change-Id: I0ec6c4e12abf375677226ea32a6c36066a990f3b
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit 3d122c668c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Skip qtinterfaceframework also with kirkstone now that master
branch is using kirkstone as DISTRO_CODENAME.
Change-Id: I8ff7c9c3289d4f2c8864c14a6abcf61fe34250a6
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
(cherry picked from commit b32b7f2774)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>