kbuild: add -Wundef to KBUILD_CPPFLAGS for W=1 builds
authorMasahiro Yamada <masahiroy@kernel.org>
Tue, 6 Dec 2022 04:07:31 +0000 (13:07 +0900)
committerMasahiro Yamada <masahiroy@kernel.org>
Sun, 11 Dec 2022 08:28:32 +0000 (17:28 +0900)
commit80b6093b55e31c2c40ff082fb32523d4e852954f
tree0065c41f359d87918fac91fe76045466813cf700
parentefa80b028c7a9c74fd875517aa0fc9fd8d610ed0
kbuild: add -Wundef to KBUILD_CPPFLAGS for W=1 builds

The use of an undefined macro in an #if directive is warned, but only
in *.c files. No warning from other files such as *.S, *.lds.S.

Since -Wundef is a preprocessor-related warning, it should be added to
KBUILD_CPPFLAGS instead of KBUILD_CFLAGS.

My previous attempt [1] uncovered several issues. I could not finish
fixing them all.

This commit adds -Wundef to KBUILD_CPPFLAGS for W=1 builds in order to
block new breakages. (The kbuild test robot tests with W=1)

We can fix the warnings one by one. After fixing all of them, we can
make it default in the top Makefile, and remove -Wundef from
KBUILD_CFLAGS.

[1]: https://lore.kernel.org/all/20221012180118.331005-2-masahiroy@kernel.org/

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
scripts/Makefile.extrawarn