Makefile: Strip leading spaces when preprocessing generated_defconfig
Clang's preprocessor may emit extra spaces for lines starting with '#'.
Lines with these extra characters cannot be handled by Kconfig and will
be ignored with warnings like,
unexpected data: # CONFIG_OF_BOARD_FIXUP is not set
Those options that is expected to be assigned explicitly with N will be
set to the default value, messing up board configurations.
Let's sed these spaces away to ensure board configurations could be
correctly generated with Clang.
Link: https://github.com/llvm/llvm-project/issues/78778
Fixes: 2027e99e61
("Makefile: Run defconfig files through the C preprocessor")
Reported-by: Nathaniel Hourt <I@nathaniel.land>
Signed-off-by: Yao Zi <ziyao@disroot.org>
This commit is contained in:
@@ -94,6 +94,7 @@ endif
|
||||
|
||||
%_defconfig: $(obj)/conf
|
||||
$(Q)$(CPP) -nostdinc -P -I $(srctree) -undef -x assembler-with-cpp $(srctree)/arch/$(SRCARCH)/configs/$@ -o generated_defconfig
|
||||
$(Q)sed -i -e 's/^[[:space:]]//' generated_defconfig
|
||||
$(Q)$< $(silent) --defconfig=generated_defconfig $(Kconfig)
|
||||
|
||||
# Added for U-Boot (backward compatibility)
|
||||
|
Reference in New Issue
Block a user