From 9f61fd5b80a43ae20ba115e3a2933d47d720ab82 Mon Sep 17 00:00:00 2001 From: Levi Shafter Date: Fri, 17 Apr 2026 16:45:09 -0600 Subject: [PATCH] Makefile: fix host CPP pollution in cmd_gen_envp Commit 2956a84ba701 ("Makefile: don't use CFLAGS for environment text file") switched cmd_gen_envp to use $(cpp_flags) so that KCPPFLAGS would be honored when preprocessing the environment text file. However, cpp_flags also includes $(PLATFORM_CPPFLAGS), which carries architecture-specific flags such as -march=armv8-a+crc set by arch/arm/Makefile for CONFIG_ARM64_CRC32=y targets. These flags are appropriate for cross-compiled object files but cause the host CPP invocation to fail on x86 build machines: cc1: error: bad value ('armv8-a+crc') for '-march=' switch KBUILD_CPPFLAGS already accumulates the user-supplied KCPPFLAGS via "KBUILD_CPPFLAGS += $(KCPPFLAGS)", providing the behaviour 2956a84 intended without pulling in target architecture flags. Use it directly. Fixes: 2956a84ba701 ("Makefile: don't use CFLAGS for environment text file") Signed-off-by: Levi Shafter Reviewed-by: Simon Glass --- Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index dfc95d314dd..e2b8e6a1915 100644 --- a/Makefile +++ b/Makefile @@ -2147,7 +2147,8 @@ ENV_FILE := $(if $(ENV_SOURCE_FILE),$(ENV_FILE_CFG),$(wildcard $(ENV_FILE_BOARD) quiet_cmd_gen_envp = ENVP $@ cmd_gen_envp = \ if [ -s "$(ENV_FILE)" ]; then \ - $(CPP) -P $(cpp_flags) -x assembler-with-cpp -undef \ + $(CPP) -P $(KBUILD_CPPFLAGS) $(UBOOTINCLUDE) \ + -x assembler-with-cpp -undef \ -D__ASSEMBLY__ \ -D__UBOOT_CONFIG__ \ -DDEFAULT_DEVICE_TREE=$(subst ",,$(CONFIG_DEFAULT_DEVICE_TREE)) \ -- 2.47.3