From 4e26fba6803b0b4820875df50ed733eeb4980d60 Mon Sep 17 00:00:00 2001 From: Loïc Minier Date: Fri, 14 Oct 2011 00:06:37 +0200 Subject: Only pass -P to cpp when generating ld scripts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When building sandbox with ccache, one would hit warnings such as: warning: 'struct mmsghdr' declared inside parameter list on random files; a way to reproduce this issue is to build a simple file doing just: #include int main(void) { return 0; } gcc -Wall -P -c -o foo foo.c But actually the -P flag is only useful when generating non-C files, such as linker scripts in the case of barebox. Removing the -P flag from all the gcc invocations, except when generating .lds files makes the warning go away. It turns out that this is what linux/scripts/Makefile.build also does nowadays. Signed-off-by: Loïc Minier Signed-off-by: Sascha Hauer --- Makefile | 2 +- arch/arm/Makefile | 2 +- arch/blackfin/Makefile | 2 +- arch/ppc/Makefile | 2 +- arch/sandbox/Makefile | 1 - arch/sandbox/os/Makefile | 1 - arch/x86/Makefile | 2 +- scripts/Makefile.build | 2 +- 8 files changed, 6 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 5414e63136..10d5780baf 100644 --- a/Makefile +++ b/Makefile @@ -825,7 +825,7 @@ prepare prepare-all: prepare0 # Leave this as default for preprocessing barebox.lds.S, which is now # done in arch/$(ARCH)/kernel/Makefile -export CPPFLAGS_barebox.lds += -P -C -U$(ARCH) +export CPPFLAGS_barebox.lds += -C -U$(ARCH) # FIXME: The asm symlink changes when $(ARCH) changes. That's # hard to detect, but I suppose "make mrproper" is a good idea diff --git a/arch/arm/Makefile b/arch/arm/Makefile index d25412d11f..0c42f3d1ea 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -121,7 +121,7 @@ endif TEXT_BASE = $(CONFIG_TEXT_BASE) -CPPFLAGS += -DTEXT_BASE=$(TEXT_BASE) -P +CPPFLAGS += -DTEXT_BASE=$(TEXT_BASE) ifndef CONFIG_MODULES # Add cleanup flags diff --git a/arch/blackfin/Makefile b/arch/blackfin/Makefile index 902268da70..a0b87f77d7 100644 --- a/arch/blackfin/Makefile +++ b/arch/blackfin/Makefile @@ -7,7 +7,7 @@ cpu-$(CONFIG_BF561) := bf561 TEXT_BASE = $(CONFIG_TEXT_BASE) -CPPFLAGS += -DTEXT_BASE=$(TEXT_BASE) -P +CPPFLAGS += -DTEXT_BASE=$(TEXT_BASE) CFLAGS += -D__blackfin__ # -Ttext $(TEXT_BASE) KALLSYMS += --symbol-prefix=_ diff --git a/arch/ppc/Makefile b/arch/ppc/Makefile index 46d64e5bc6..c7bf863747 100644 --- a/arch/ppc/Makefile +++ b/arch/ppc/Makefile @@ -14,7 +14,7 @@ cpu-$(CONFIG_ARCH_MPC5200) := mpc5xxx TEXT_BASE = $(CONFIG_TEXT_BASE) -CPPFLAGS += -DTEXT_BASE=$(TEXT_BASE) -P +CPPFLAGS += -DTEXT_BASE=$(TEXT_BASE) # Add cleanup flags ifndef CONFIG_MODULES diff --git a/arch/sandbox/Makefile b/arch/sandbox/Makefile index 4ca17ed839..73c06db09c 100644 --- a/arch/sandbox/Makefile +++ b/arch/sandbox/Makefile @@ -10,7 +10,6 @@ lds-y := $(BOARD)/barebox.lds TEXT_BASE = $(CONFIG_TEXT_BASE) -CPPFLAGS += -P CFLAGS += -Dmalloc=barebox_malloc \ -Dfree=barebox_free -Drealloc=barebox_realloc \ -Dread=barebox_read -Dwrite=barebox_write \ diff --git a/arch/sandbox/os/Makefile b/arch/sandbox/os/Makefile index 2980301e15..dc211d94cd 100644 --- a/arch/sandbox/os/Makefile +++ b/arch/sandbox/os/Makefile @@ -8,7 +8,6 @@ else CPPFLAGS = $(patsubst %,-I$(srctree)/%include,$(machdirs)) endif -CPPFLAGS += -P CFLAGS := -Wall NOSTDINC_FLAGS := diff --git a/arch/x86/Makefile b/arch/x86/Makefile index 3b034c0516..db4180b32b 100644 --- a/arch/x86/Makefile +++ b/arch/x86/Makefile @@ -5,7 +5,7 @@ machine-y := i386 TEXT_BASE = $(CONFIG_TEXT_BASE) -CPPFLAGS += -march=i386 -m32 -DTEXT_BASE=$(TEXT_BASE) -P +CPPFLAGS += -march=i386 -m32 -DTEXT_BASE=$(TEXT_BASE) LDFLAGS += -m elf_i386 ifndef CONFIG_MODULES diff --git a/scripts/Makefile.build b/scripts/Makefile.build index c2bab5cb13..f70e2b946d 100644 --- a/scripts/Makefile.build +++ b/scripts/Makefile.build @@ -244,7 +244,7 @@ targets += $(extra-y) $(MAKECMDGOALS) $(always) # Linker scripts preprocessor (.lds.S -> .lds) # --------------------------------------------------------------------------- quiet_cmd_cpp_lds_S = LDS $@ - cmd_cpp_lds_S = $(CPP) $(cpp_flags) -D__ASSEMBLY__ -o $@ $< + cmd_cpp_lds_S = $(CPP) $(cpp_flags) -P -D__ASSEMBLY__ -o $@ $< %.lds: %.lds.S FORCE $(call if_changed_dep,cpp_lds_S) -- cgit v1.2.3