Attention is currently required from: Julius Werner.
Thomas Heijligen has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/70116 )
Change subject: commonlib/bsd, libpayload: Do not include helpers.h in stddef.h ......................................................................
commonlib/bsd, libpayload: Do not include helpers.h in stddef.h
`stddef.h` should only provide the definitions defined by ISO or Posix. The included `commonlib/bsd/helpers.h` provide a lot of non standard definitions that may interfere with definitions from the application.
Change-Id: Ia71edbc3ffe6694ff4b971decf3a41f915264bc8 Signed-off-by: Thomas Heijligen src@posteo.de --- M payloads/libpayload/arch/x86/boot_media.c M payloads/libpayload/include/stddef.h M src/commonlib/bsd/cbfs_mcache.c M src/commonlib/bsd/cbfs_private.c 4 files changed, 21 insertions(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/16/70116/1
diff --git a/payloads/libpayload/arch/x86/boot_media.c b/payloads/libpayload/arch/x86/boot_media.c index 99fb4e3..76da39b 100644 --- a/payloads/libpayload/arch/x86/boot_media.c +++ b/payloads/libpayload/arch/x86/boot_media.c @@ -3,6 +3,7 @@ #include <arch/virtual.h> #include <boot_device.h> #include <commonlib/bsd/cb_err.h> +#include <commonlib/bsd/helpers.h> #include <stddef.h> #include <string.h> #include <sysinfo.h> diff --git a/payloads/libpayload/include/stddef.h b/payloads/libpayload/include/stddef.h index fb6ec9b..9003ac9 100644 --- a/payloads/libpayload/include/stddef.h +++ b/payloads/libpayload/include/stddef.h @@ -2,7 +2,10 @@ #define _STDDEF_H
#include <arch/types.h> -#include <commonlib/bsd/helpers.h> + +#if !defined(offsetof) +#define offsetof(type, member) __builtin_offsetof(type, member) +#endif
#ifndef __WCHAR_TYPE__ #define __WCHAR_TYPE__ int diff --git a/src/commonlib/bsd/cbfs_mcache.c b/src/commonlib/bsd/cbfs_mcache.c index 29ba110..8714cc0 100644 --- a/src/commonlib/bsd/cbfs_mcache.c +++ b/src/commonlib/bsd/cbfs_mcache.c @@ -2,6 +2,7 @@
#include <assert.h> #include <commonlib/bsd/cbfs_private.h> +#include <commonlib/bsd/helpers.h>
/* * A CBFS metadata cache is an in memory data structure storing CBFS file headers (= metadata). diff --git a/src/commonlib/bsd/cbfs_private.c b/src/commonlib/bsd/cbfs_private.c index b9221fc..7ad2986 100644 --- a/src/commonlib/bsd/cbfs_private.c +++ b/src/commonlib/bsd/cbfs_private.c @@ -1,6 +1,7 @@ /* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0-or-later */
#include <commonlib/bsd/cbfs_private.h> +#include <commonlib/bsd/helpers.h> #include <assert.h>
static enum cb_err read_next_header(cbfs_dev_t dev, size_t *offset, struct cbfs_file *buffer,