From 6ad6af198e3e0ef6270914b981f1a069cc61deb4 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Fri, 16 Jan 2026 15:27:26 +0000 Subject: [PATCH] [build] Canonicalise settings sources configuration Move all settings source selection from config/defaults/.h to the top-level config/settings.h, using indented conditional blocks to clarify which sources are supported and enabled on each platform. Signed-off-by: Michael Brown --- src/config/defaults/efi.h | 2 -- src/config/settings.h | 28 +++++++++++++++++++++------- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/src/config/defaults/efi.h b/src/config/defaults/efi.h index c6b59d9fd..2770626bc 100644 --- a/src/config/defaults/efi.h +++ b/src/config/defaults/efi.h @@ -36,8 +36,6 @@ FILE_SECBOOT ( PERMITTED ); #define USB_EFI /* Provide EFI_USB_IO_PROTOCOL interface */ #define USB_BLOCK /* USB block devices */ -#define EFI_SETTINGS /* EFI variable settings */ - #if defined ( __i386__ ) || defined ( __x86_64__ ) #define IOAPI_X86 #define ENTROPY_RDRAND diff --git a/src/config/settings.h b/src/config/settings.h index bba8c631a..98a9ff3fd 100644 --- a/src/config/settings.h +++ b/src/config/settings.h @@ -12,13 +12,27 @@ FILE_SECBOOT ( PERMITTED ); #include -#define PCI_SETTINGS /* PCI device settings */ -#define USB_SETTINGS /* USB device settings */ -//#define CPUID_SETTINGS /* CPUID settings */ -//#define MEMMAP_SETTINGS /* Memory map settings */ -//#define VMWARE_SETTINGS /* VMware GuestInfo settings */ -//#define VRAM_SETTINGS /* Video RAM dump settings */ -//#define ACPI_SETTINGS /* ACPI settings */ +/* Settings sources supported on all platforms */ +//#define ACPI_SETTINGS /* ACPI settings */ +#define PCI_SETTINGS /* PCI device settings */ +#define USB_SETTINGS /* USB device settings */ + +/* Settings sources supported only on EFI platforms */ +#if defined ( PLATFORM_efi ) + #define EFI_SETTINGS /* EFI variable settings */ +#endif + +/* Settings sources supported only when memory maps are available */ +#if ! defined ( MEMMAP_NULL ) + //#define MEMMAP_SETTINGS /* Memory map settings */ +#endif + +/* Settings sources supported only on x86 CPUs */ +#if defined ( __i386__ ) || defined ( __x86_64__ ) + //#define CPUID_SETTINGS /* CPUID settings */ + //#define VMWARE_SETTINGS /* VMware GuestInfo settings */ + //#define VRAM_SETTINGS /* Video RAM dump settings */ +#endif #include #include NAMED_CONFIG(settings.h)