From 69ee0b3522428a07ff1765446d631ecc7da6ae0f Mon Sep 17 00:00:00 2001 From: Sam Ravnborg Date: Sun, 4 Nov 2007 19:00:46 +0100 Subject: [PATCH] kbuild: do not pick up CFLAGS from the environment MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Too many people have CFLAGS set to support building userspace. And now Kbuild picks up CFLAGS this caused troubles. Although people should realise that setting CFLAGS has a 'global' effect the impact on the kernel build is a suprise. So change kbuild to pick up value from KCFLAGS that is much less used. When kbuild pick up a value it will warn like this: Makefile:544: "WARNING: Appending $KCFLAGS (-O3) from environment to kernel $CFLAGS" Signed-off-by: Sam Ravnborg Cc: Thomas Bächler Cc: David Miller Cc: Ingo Molnar --- Makefile | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 188c3b6b3fa..cb740d4d4e8 100644 --- a/Makefile +++ b/Makefile @@ -528,9 +528,22 @@ KBUILD_CFLAGS += $(call cc-option,-Wdeclaration-after-statement,) KBUILD_CFLAGS += $(call cc-option,-Wno-pointer-sign,) # Add user supplied CPPFLAGS, AFLAGS and CFLAGS as the last assignments -KBUILD_CPPFLAGS += $(CPPFLAGS) -KBUILD_AFLAGS += $(AFLAGS) -KBUILD_CFLAGS += $(CFLAGS) +# But warn user when we do so +warn-assign = \ +$(warning "WARNING: Appending $$K$(1) ($(K$(1))) from $(origin K$(1)) to kernel $$$(1)") + +ifneq ($(KCPPFLAGS),) + $(call warn-assign,CPPFLAGS) + KBUILD_CPPFLAGS += $(KCPPFLAGS) +endif +ifneq ($(KAFLAGS),) + $(call warn-assign,AFLAGS) + KBUILD_AFLAGS += $(KAFLAGS) +endif +ifneq ($(KCFLAGS),) + $(call warn-assign,CFLAGS) + KBUILD_CFLAGS += $(KCFLAGS) +endif # Use --build-id when available. LDFLAGS_BUILD_ID = $(patsubst -Wl$(comma)%,%,\