From cf0d09ca7b28c360730db645e8bee4dfe0ae3134 Mon Sep 17 00:00:00 2001 From: gaoliming Date: Fri, 25 Sep 2020 15:49:18 +0800 Subject: [PATCH] BaseTools: Copy PACKED definition from MdePkg Base.h BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2938 MdePkg Acpi10.h definition depends on PACKED. When structure PCD refers to Acpi10.h, build will fail, because PACKED definition is missing in BaseTools BaseTypes.h. C source tools include BaseTools BaseTypes.h. They don't include MdePkg Base.h. When C source tools include MdePkg Acpi10.h, they also need PACKED definition. So, add PACKED definition into BaseTools BaseTypes.h. Cc: Bob Feng Cc: Yuwei Chen Cc: Michael Kinney Signed-off-by: Liming Gao Reviewed-by: Bob Feng Tested-by: Garrett Kirkendall --- BaseTools/Source/C/Include/Common/BaseTypes.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/BaseTools/Source/C/Include/Common/BaseTypes.h b/BaseTools/Source/C/Include/Common/BaseTypes.h index 31d0662085..150980b4c0 100644 --- a/BaseTools/Source/C/Include/Common/BaseTypes.h +++ b/BaseTools/Source/C/Include/Common/BaseTypes.h @@ -57,6 +57,16 @@ #define NULL ((VOID *) 0) #endif +#ifdef __CC_ARM + // + // Older RVCT ARM compilers don't fully support #pragma pack and require __packed + // as a prefix for the structure. + // + #define PACKED __packed +#else + #define PACKED +#endif + // // Support for variable length argument lists using the ANSI standard. // -- 2.39.2