| From foo@baz Wed Nov 21 18:50:25 CET 2018 |
| From: Mark Charlebois <charlebm@gmail.com> |
| Date: Fri, 31 Mar 2017 22:38:13 +0200 |
| Subject: kbuild, LLVMLinux: Add -Werror to cc-option to support clang |
| |
| From: Mark Charlebois <charlebm@gmail.com> |
| |
| commit c3f0d0bc5b01ad90c45276952802455750444b4f upstream. |
| |
| Clang will warn about unknown warnings but will not return false |
| unless -Werror is set. GCC will return false if an unknown |
| warning is passed. |
| |
| Adding -Werror make both compiler behave the same. |
| |
| [arnd: it turns out we need the same patch for testing whether -ffunction-sections |
| works right with gcc. I've build tested extensively with this patch |
| applied, so let's just merge this one now.] |
| |
| Signed-off-by: Mark Charlebois <charlebm@gmail.com> |
| Signed-off-by: Behan Webster <behanw@converseincode.com> |
| Reviewed-by: Jan-Simon Mรถller <dl9pf@gmx.de> |
| Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
| Acked-by: Kees Cook <keescook@chromium.org> |
| Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> |
| Signed-off-by: Nick Desaulniers <ndesaulniers@google.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| scripts/Kbuild.include | 6 +++--- |
| 1 file changed, 3 insertions(+), 3 deletions(-) |
| |
| --- a/scripts/Kbuild.include |
| +++ b/scripts/Kbuild.include |
| @@ -117,12 +117,12 @@ CC_OPTION_CFLAGS = $(filter-out $(GCC_PL |
| # Usage: cflags-y += $(call cc-option,-march=winchip-c6,-march=i586) |
| |
| cc-option = $(call try-run,\ |
| - $(CC) $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",$(1),$(2)) |
| + $(CC) -Werror $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",$(1),$(2)) |
| |
| # cc-option-yn |
| # Usage: flag := $(call cc-option-yn,-march=winchip-c6) |
| cc-option-yn = $(call try-run,\ |
| - $(CC) $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",y,n) |
| + $(CC) -Werror $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",y,n) |
| |
| # cc-option-align |
| # Prefix align with either -falign or -malign |
| @@ -132,7 +132,7 @@ cc-option-align = $(subst -functions=0,, |
| # cc-disable-warning |
| # Usage: cflags-y += $(call cc-disable-warning,unused-but-set-variable) |
| cc-disable-warning = $(call try-run,\ |
| - $(CC) $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) -W$(strip $(1)) -c -x c /dev/null -o "$$TMP",-Wno-$(strip $(1))) |
| + $(CC) -Werror $(KBUILD_CPPFLAGS) $(CC_OPTION_CFLAGS) -W$(strip $(1)) -c -x c /dev/null -o "$$TMP",-Wno-$(strip $(1))) |
| |
| # cc-name |
| # Expands to either gcc or clang |