2022-09-04 20:08:47 +00:00
|
|
|
From 40337d6f3d677aee7ad3052ae662d3f53dd4d5cb Mon Sep 17 00:00:00 2001
|
|
|
|
From: Arnd Bergmann <arnd@arndb.de>
|
|
|
|
Date: Tue, 8 Mar 2022 22:56:15 +0100
|
|
|
|
Subject: [PATCH 3/3] Kbuild: use -std=gnu11 for KBUILD_USERCFLAGS
|
|
|
|
|
|
|
|
As we change the C language standard for the kernel from gnu89 to
|
|
|
|
gnu11, it makes sense to also update the version for user space
|
|
|
|
compilation.
|
|
|
|
|
|
|
|
Some users have older native compilers than what they use for
|
|
|
|
kernel builds, so I considered using gnu99 as the default version
|
|
|
|
for wider compatibility with gcc-4.6 and earlier.
|
|
|
|
|
|
|
|
However, testing with older compilers showed that we already require
|
|
|
|
HOSTCC version 5.1 as well because a lot of host tools include
|
|
|
|
linux/compiler.h that uses __has_attribute():
|
|
|
|
|
|
|
|
CC tools/objtool/exec-cmd.o
|
|
|
|
In file included from tools/include/linux/compiler_types.h:36:0,
|
|
|
|
from tools/include/linux/compiler.h:5,
|
|
|
|
from exec-cmd.c:2:
|
|
|
|
tools/include/linux/compiler-gcc.h:19:5: error: "__has_attribute" is not defined [-Werror=undef]
|
|
|
|
|
|
|
|
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
|
|
|
|
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
|
|
|
|
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
|
|
|
|
Tested-by: Sedat Dilek <sedat.dilek@gmail.com>
|
|
|
|
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
|
|
|
|
---
|
|
|
|
Makefile | 2 +-
|
|
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
|
|
|
|
--- a/Makefile
|
|
|
|
+++ b/Makefile
|
|
|
|
@@ -416,7 +416,7 @@ HOSTCXX = g++
|
|
|
|
endif
|
2022-10-16 18:36:03 +00:00
|
|
|
|
2022-09-04 20:08:47 +00:00
|
|
|
export KBUILD_USERCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes \
|
|
|
|
- -O2 -fomit-frame-pointer -std=gnu89 \
|
|
|
|
+ -O2 -fomit-frame-pointer -std=gnu11 \
|
2022-10-16 18:36:03 +00:00
|
|
|
-Wdeclaration-after-statement
|
2022-09-04 20:08:47 +00:00
|
|
|
export KBUILD_USERLDFLAGS :=
|
2022-10-16 18:36:03 +00:00
|
|
|
|