Fix compiling with new versions of efivar

Fixes https://github.com/fwupd/fwupd/issues/4181
This commit is contained in:
Richard Hughes 2022-01-17 14:50:47 +00:00
parent c05494430e
commit e74d38bfd3
2 changed files with 8 additions and 0 deletions

View File

@ -412,6 +412,11 @@ endif
if build_standalone and get_option('plugin_uefi_capsule')
efiboot = dependency('efiboot')
efivar = dependency('efivar')
if cc.has_header_symbol('efivar/efivar-types.h', 'efi_time_t', dependencies : efivar)
conf.set('HAVE_EFI_TIME_T', '1')
endif
efi_app_location = join_paths(libexecdir, 'fwupd', 'efi')
conf.set_quoted('EFI_APP_LOCATION', efi_app_location)

View File

@ -9,6 +9,7 @@
#include <fwupdplugin.h>
#include <efivar/efivar.h>
#include <glib.h>
#define EFI_CAPSULE_HEADER_FLAGS_PERSIST_ACROSS_RESET 0x00010000
@ -17,6 +18,7 @@
#define EFI_OS_INDICATIONS_FILE_CAPSULE_DELIVERY_SUPPORTED 0x0000000000000004ULL
#ifndef HAVE_EFI_TIME_T
typedef struct __attribute__((__packed__)) {
guint16 year;
guint8 month;
@ -30,6 +32,7 @@ typedef struct __attribute__((__packed__)) {
guint8 daylight;
guint8 pad2;
} efi_time_t;
#endif
typedef struct __attribute__((__packed__)) {
fwupd_guid_t guid;