Commit Graph

347 Commits

Author SHA1 Message Date
Richard Hughes
7180c8993e trivial: Turn off -fanalyzer by default
This has several false positives in Fedora 36 and also slows down the
build considerably.
2022-01-31 15:17:27 +00:00
Richard Hughes
1e8b46321b Use GCC static analysis when available 2022-01-20 16:00:13 +00:00
Richard Hughes
e74d38bfd3 Fix compiling with new versions of efivar
Fixes https://github.com/fwupd/fwupd/issues/4181
2022-01-17 15:27:05 +00:00
Richard Hughes
f56eec47b4 trivial: post release version bump 2022-01-13 13:29:53 +00:00
Richard Hughes
6591871192 trivial: Fix compiling with -Dbuild=library 2021-12-21 10:04:48 +00:00
Richard Hughes
ec5d35ca8c trivial: post release version bump 2021-12-13 12:18:10 +00:00
Richard Hughes
46d06bf42a Fixup the GLib error message when inotify/max_user_instances is too low
This can be reproduced using sysctl fs.inotify.max_user_instances=25
and then running the daemon.
2021-12-07 18:51:11 +00:00
Richard Hughes
dc1d5de057 Make the HSI tests optional for embedded targets
70% of the plugins installed on OpenBMC are not being used...
2021-11-29 09:30:57 +00:00
Richard Hughes
71d93a65fb Make sqlite optional
This isn't required when fwupd is installed on targets like a BMC.
2021-11-23 15:09:05 +00:00
Richard Hughes
6aedaa816c trivial: post release version bump 2021-11-19 09:56:50 +00:00
Richard Hughes
9ef27052d5 altos: Remove support for the ChaosKey
The hardware is discontinued, and no further update from 1.6.7 was ever
supplied.
2021-11-15 15:17:38 +00:00
Richard Hughes
64d1a01d42 trivial: Downgrade a configure error() to a warning() 2021-11-15 15:01:22 +00:00
Richard Hughes
5f01678daa Use -Doffline=false to reduce the install size by over 100Kb
If there's no SuperIO chip then there's no need to support this.
2021-11-12 21:06:34 +00:00
Ross Burton
774a7098ad build: check that outb is present in io.h
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>
2021-11-09 14:13:03 -06:00
Richard Hughes
e87fc05ab9 Speed up the daemon startup by ~2% by doing dlsym much less
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.
2021-11-09 12:02:07 +00:00
Richard Hughes
36d7077f65 Add a new plugin to handle MTD devices 2021-11-05 20:01:51 +00:00
Richard Hughes
23b1d20294 trivial: post release version bump 2021-11-01 11:57:50 +00:00
Richard Hughes
28678235cd Move the fuzzing files into the plugin directories
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.
2021-10-22 15:24:05 +01:00
Richard Hughes
3fc635e144 Remove honggfuzz support
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.
2021-10-19 19:20:05 +01:00
Richard Hughes
bc43adf020 Fix build error when sys/io.h is not available 2021-10-06 20:38:43 +01:00
Richard Hughes
07b4bb4d10 trivial: post release version bump 2021-10-06 16:13:24 +01:00
Richard Hughes
88b1b35a72 trivial: Use new libgcab API where possible
This is new in version 1.5, but may be backported.
2021-10-05 18:15:37 +01:00
Daniel Campello
4fa2a7604a trivial: workaround for ERROR: Unknown variable "gcab"
This change enables the use of tests in Chrome OS. Fixes #3270
2021-09-24 17:15:33 +01:00
Richard Hughes
431dbee65a Lower the GUsb dep to allow compiling on RHEL-8
This is something that I keep being asked to do...
2021-09-24 06:50:59 -05:00
Richard Hughes
1210aa4ae7 redfish: Create user accounts automatically using IPMI
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.
2021-09-07 17:25:37 +01:00
Sanjay Sheth
b6ff1ea40e Add support for devices supporting the Logitech bulk controller protocol 2021-08-29 20:33:16 +01:00
Mario Limonciello
d3983674f4 trivial: don't use same variable definition as config.h in code
If config.h is included by a file then which one is used may end up
be confusing.  Be explicit to use the values that are declared by
libraries.
2021-08-24 11:18:40 -05:00
Michal Vasilek
1a363c7e44 trivial: make gi-docgen a host dependency on cross 2021-08-23 12:56:20 -05:00
Mario Limonciello
f137d8aaf3 trivial: remove unused variable for post install script 2021-08-18 07:58:17 -05:00
Richard Hughes
09770c60f0 trivial: Fork for 1_6_X 2021-08-09 09:24:03 +01:00
Richard Hughes
a5a978b3f6 Rename some confusing API
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.
2021-08-06 19:49:53 +01:00
Richard Hughes
9b49e7b83b trivial: post release version bump 2021-08-02 15:22:43 +01:00
Jarvis Jiang
6b79e9201d modem-manager: Add MBIM QDU support for firmware downloading in the MM plugin
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>
2021-06-28 10:11:15 +01:00
Jason Gerecke
6d065bbc2f Bump minimum required meson version to correct build warning
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'}
2021-06-21 15:23:05 +01:00
Mario Limonciello
783b6a2bbc trivial: drop optional codespell meson target
As we already run pre-commit hooks, no need to also run in meson.
2021-06-16 06:41:46 -05:00
Sergii Dmytruk
c0d0ce4e1a Switch from sysctl to ioctl for ESRT on FreeBSD
Initial version of the patch was rejected and rewritten.

Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
2021-06-15 17:25:16 +01:00
Sergii Dmytruk
c16602d688 Corrections for fu-efivar-freebsd.c
There were some compilation warnings (one actual error) and possibility
to use incorrect efivar library.

Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
2021-06-15 17:25:16 +01:00
Mario Limonciello
ed51779598 trivial: fix a regression in Gentoo detecting python versions 2021-06-15 08:22:40 -05:00
Mario Limonciello
00cc29c3af Revert "meson.build: Change python version check order"
This reverts commit 1b396215d9.
2021-06-15 08:22:40 -05:00
Mario Limonciello
34a6dac830 trivial: fix unclear build failure for introspection off with docgen
GI-Docgen requires introspection data to generate documentation.
Show a clearer error about this (Fixes: #3355)
2021-06-15 07:03:05 -05:00
Richard Hughes
39b3140ed3 trivial: post release version bump 2021-06-14 14:46:05 +01:00
Richard Hughes
7b40a84f24 trivial: Check for python3-markdown >= 3.3.4 for gi-docgen 2021-06-11 09:39:11 +01:00
Mario Limonciello
1e17457b16 Allow building the documentation with gi-docgen and gtk-doc
Until gi-docgen is declared stable support either of them.
This effectively means that hand builds and CI builds will use
gi-docgen, but distro builds use gtk-doc-tools.
2021-06-09 22:21:53 +01:00
Michał Kopeć
d678b755d0 libfwupdplugin: Implement fu-efivar-freebsd.c
Signed-off-by: Richard Hughes <richard@hughsie.com>
2021-06-09 15:22:58 +01:00
Norbert Kamiński
1b396215d9 meson.build: Change python version check order
Signed-off-by: Norbert Kamiński <norbert.kaminski@3mdeb.com>
2021-06-05 11:05:33 -05:00
Richard Hughes
82cb7acb13 trivial: The BSD define is dunder, e.g. two underscores 2021-05-26 16:00:32 +01:00
Richard Hughes
18333da698 trivial: Add _BSD_VISIBLE to use memmem on FreeBSD 2021-05-21 17:23:11 +01:00
Norbert Kamiński
80ba3f07f2 fu-smbios.c: Add kenv support
Signed-off-by: Norbert Kamiński <norbert.kaminski@3mdeb.com>
2021-05-18 14:32:07 +01:00
Aleksander Morgado
3bcd4cf44a trivial: remove QMI_REQUIRED_VERSION
We use MM_REQUIRED_VERSION to compare the running ModemManager version
with the one we require. But we don't need QMI_REQUIRED_VERSION for
anything, just remove it.

These symbols were similar to GLIB_REQUIRED_VERSION, but neither
ModemManager nor libqmi implement them in the same way as GLib does.
For the purpose of skipping deprecated APIs, ModemManager and libqmi
use the older MM_DISABLE_DEPRECATED and QMI_DISABLE_DEPRECATED macros.
2021-05-14 14:08:44 +02:00
Aleksander Morgado
dcbd979b8f trivial: fix libqmi build dependency
The build dependency of libqmi was attempted to be updated in
commit 6db69de725, but wasn't properly done, as
only the QMI_REQUIRED_VERSION symbol was updated, not the actual
pkgconfig required version.
2021-05-14 14:08:44 +02:00