build: Update to reflect minimum clang version 8.0

After doing some validation with clang from versions 3.8 and up, the
builds prior to version 8.0.0 fail due to the use of safemath functions
at link time.

Signed-off-by: Darren Kenny <darren.kenny@oracle.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
Darren Kenny 2022-10-21 13:33:01 +00:00 committed by Daniel Kiper
parent 30641d4501
commit 59022ae263
2 changed files with 4 additions and 4 deletions

View File

@ -16,7 +16,7 @@ you don't have any of them, please obtain and install them before
configuring the GRUB.
* GCC 5.1.0 or later
Experimental support for clang 3.8.0 or later (results in much bigger binaries)
Experimental support for clang 8.0.0 or later (results in much bigger binaries)
for i386, x86_64, arm (including thumb), arm64, mips(el), powerpc, sparc64
* GNU Make
* GNU Bison 2.3 or later

View File

@ -23,15 +23,15 @@
#include <grub/compiler.h>
/* These appear in gcc 5.1 and clang 3.8. */
#if GNUC_PREREQ(5, 1) || CLANG_PREREQ(3, 8)
/* These appear in gcc 5.1 and clang 8.0. */
#if GNUC_PREREQ(5, 1) || CLANG_PREREQ(8, 0)
#define grub_add(a, b, res) __builtin_add_overflow(a, b, res)
#define grub_sub(a, b, res) __builtin_sub_overflow(a, b, res)
#define grub_mul(a, b, res) __builtin_mul_overflow(a, b, res)
#else
#error gcc 5.1 or newer or clang 3.8 or newer is required
#error gcc 5.1 or newer or clang 8.0 or newer is required
#endif
#endif /* GRUB_SAFEMATH_H */