mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-08-31 03:45:41 +00:00
ba6048b0adfcdc8624600602b48a3101015202ea
fwupd 2.1.7 fails to configure on every non-x86 machine:
../sources/fwupd-2.1.7/meson.build:288:68: ERROR: Feature hsi cannot be enabled
HSI (Host Security ID) has always been implemented for x86 only, but the way
meson.build enforces that changed in 2.1.x. 2.0.19 had:
hsi = get_option('hsi').disable_auto_if(host_machine.system() != 'linux').disable_auto_if(
host_cpu != 'x86' and host_cpu != 'x86_64'
).allowed()
while 2.1.7 has:
hsi = get_option('hsi').require(host_machine.system() == 'linux').require(
host_cpu in ['x86', 'x86_64']
).allowed()
disable_auto_if() only downgrades features that are set to 'auto', so passing
-Dhsi=enabled on e.g. aarch64 used to go through silently. require() is an
assertion, so the same option is now a hard error.
The recipe lists hsi unconditionally in the default PACKAGECONFIG and therefore
always passes -Dhsi=enabled. Restrict that to the architectures whose meson
cpu_family is x86 or x86_64. Non-x86 now gets -Dhsi=disabled, and require() on
an explicitly disabled feature is a no-op rather than an error.
PACKAGECONFIG[hsi] is left alone so it can still be requested explicitly.
Verified on qemuarm64 (do_configure now succeeds, meson reports "hsi: disabled",
recipe builds through to packaging) and on qemux86-64 (hsi remains in
PACKAGECONFIG, so the feature is unchanged where it is supported).
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Collection of layers for the OE-core universe
Main layer maintainer: Khem Raj raj.khem@gmail.com
This repository is a collection of layers to supplement OE-Core with additional packages, Each layer have designated maintainer Please see the respective READMEs in the layer subdirectories
Description
Languages
BitBake
86.2%
Shell
5.9%
C
2.8%
Roff
1.9%
NASL
1.7%
Other
1.3%