[PATCH 5.14 001/432] Makefile: use -Wno-main in the full kernel tree

From: Greg Kroah-Hartman
Date: Thu Sep 16 2021 - 13:11:40 EST


From: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>

commit 49832c819ab85b33b7a2a1429c8d067e82be2977 upstream.

When using gcc (SUSE Linux) 7.5.0 (on openSUSE 15.3), I see a build
warning:

kernel/trace/trace_osnoise.c: In function 'start_kthread':
kernel/trace/trace_osnoise.c:1461:8: warning: 'main' is usually a function [-Wmain]
void *main = osnoise_main;
^~~~

Quieten that warning by using "-Wno-main". It's OK to use "main" as a
declaration name in the kernel.

Build-tested on most ARCHes.

[ v2: only do it for gcc, since clang doesn't have that particular warning ]

Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
Link: https://lore.kernel.org/lkml/20210813224131.25803-1-rdunlap@xxxxxxxxxxxxx/
Suggested-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
Suggested-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Cc: Daniel Bristot de Oliveira <bristot@xxxxxxxxxx>
Cc: Masahiro Yamada <masahiroy@xxxxxxxxxx>
Cc: Michal Marek <michal.lkml@xxxxxxxxxxx>
Cc: linux-kbuild@xxxxxxxxxxxxxxx
Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
Makefile | 2 ++
1 file changed, 2 insertions(+)

--- a/Makefile
+++ b/Makefile
@@ -803,6 +803,8 @@ else
# Disabled for clang while comment to attribute conversion happens and
# https://github.com/ClangBuiltLinux/linux/issues/636 is discussed.
KBUILD_CFLAGS += $(call cc-option,-Wimplicit-fallthrough=5,)
+# gcc inanely warns about local variables called 'main'
+KBUILD_CFLAGS += -Wno-main
endif

# These warnings generated too much noise in a regular build.