Platforms which uses the multilib feature can not use this layer because
the libdir variable will be change by the multilib bbclass.
Using STAGING_LIBDIR_NATIVE instead is more reliable.
When using conditional override syntax, this should only be combined
with the append/prepend/remove operators. This commit rewrites the
claas-native and class-target overrides such that it does not replace
any recipe set values of EXTRA_OECMAKE (reading the removed syntax it is
very counter-intuitive, but sadly really happens). The problem was:
EXTRA_OECMAKE:class-target += " foo" # from class
EXTRA_OECMAKE += " baa" # from recipe
to be evaluated to EXTRA_OECMAKE = " foo". By this change, the values
are appended as expected, even if the recipe is not using conditional
overrides for the value assignment.
- implement automatic checksum generator for arbitrary license
expressions using &, | and braces
- implement warnings if source package has more licenses than
stated in recipe
The change was performed as follows:
- it was checked that the COPYING.MIT license was present with the
initial commit and such each contributor was awere of the license
- mail was around to all previous contributors to check this assumption
(mail was not replied by Hannah and Sebastian); every reply was a
confirmation of the assumed MIT licensing
- all copyright information were recovered from the respective Git
commits
- reuse lint was to used to check the REUSE conformance
For all REUSE compatible repositories we can expect that the
license file is stored under LICENSES/ and has the canonical form.
Based on this information, the file checksums can be computed
automatically.
The previous hack of just copying the native tools into the target sysroot
has several limitations:
- it no longer works with relative RPATHs being used
- it fails in the case of kpackage where we need the same tools for host
and target
Summary:
We now no longer need the corresponding native variants of the frameworks
added as explicit dependencies, the target ones take care of this. The
approach is inspired by how the Wayland recipe handles its code generator.
This also uncovered an issue with KAuth, which can't build its host tools
yet. This uses the target version as a placeholder for now, to not block
the build of everything else.
Reviewers: cordlandwehr
Reviewed By: cordlandwehr
Differential Revision: https://phabricator.kde.org/D7023
Summary:
Based on Johan's work branch. This also disables unit tests for all
frameworks, tests aren't executable for cross-builds anyway, and KConfig
tries to run the target kconfig_compiler there.
The native version can still further improved by allowing a QtCore-only
build of KConfig, as we are only interested in the kconfig_compiler.
Reviewers: cordlandwehr
Reviewed By: cordlandwehr
Differential Revision: https://phabricator.kde.org/D6987
Summary:
Also, add a temporary workaround for ECM requiring lrelease/lconvert host
tools if the KF5 sources include translations (which they do when using
tags). We of course need to fix that eventually, but right now that just
prevents anything from building.
Reviewers: cordlandwehr
Reviewed By: cordlandwehr
Subscribers: #frameworks
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D6976