tristate features will automatically disable if dependencies marked
as required are missing.
Packagers can manually override using `auto_features`.
Link: https://mesonbuild.com/Build-options.html#features
Although we can compile against older versions, we can't actually work
as current firmware.jcat metadata from the LVFS needs these commits:
109399e1f2583df67e3e
If it helps, 0.1.4 was released in October *2020*.
The flashrom plugin can use inb/outb to do a CMOS reset. The build gates
this on whether io.h exists (since bc43ad) as with glibc if io.h exists,
inb/outb are defined. However on musl, io.h always exists but it may not
define inb/outb.
Thus, fwupd builds with musl on non-x86 platforms will fail to link. Fix
this by checking for both io.h and that outb() is defined.
Signed-off-by: Ross Burton <ross.burton@arm.com>
We were calling g_module_symbol() 2703 times, which is actually more
expensive than you'd think.
It also means the plugins are actually what we tell people they are:
A set of vfuncs that get run. The reality before that they were dlsym'd
functions that get called at pretty random times.
We only had to pile everything into the src/fuzzing/firmware directory
because honggfuzz could not cope with more than one input path.
This way each plugin is self contained and easy to copy.
Also, install the fuzzing builder objects as this fixes the installed
tests when srcdir does not exist.
Based on a patch by Jan Tojnar <jtojnar@gmail.com>, many thanks.
This has not worked well in some time, and nobody noticed. The
alternative Google clusterfuzz support is better in every way and gets
run as part of CI.
This allows the Redfish plugin to "just work" when there is no username
or password in the SMBIOS data. Using KCS we can create an admin account
from the host OS and then automatically enumerate devices.
More than one person has asked about 'why call fu_plugin_update() for a
reinstall or downgrade' and I didn't have a very good answer.
The plugin API is not officially stable, and we should fix things to be
less confusing. Use the same verbs as the FuDevice vfuncs instead.
Add the mbim-qdu support for firmware downloading, it will be used for T99W175 module of Foxconn.
Signed-off-by: Jarvis Jiang <jarvis.w.jiang@gmail.com>
Sets the minimum required version to 0.50.0 since we are using features
which are not available prior to that release:
WARNING: Project specifies a minimum meson_version '>=0.47.0' but uses
features which were added in newer versions:
* 0.49.0: {'/ with string arguments'}
* 0.50.0: {'install arg in configure_file'}