From: Rob Landley Date: Mon, 31 Jul 2006 22:56:17 +0000 (-0000) Subject: 1) ifeq is make syntax, #ifeq is a make comment. X-Git-Tag: 1_4_0~841 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=533320c65944cdc9d3857312795b816282c48ba7;p=oweals%2Fbusybox.git 1) ifeq is make syntax, #ifeq is a make comment. 2) The check_cc macros should probably all have the same number of arguments. 3) Move the -Werror into the gcc 4.0 on i386 test, because gcc 4.1 is broken and produces warnings for things that provably aren't incorrect. In other news it would be nice if our check_ld macro actually did something, and why does or makefile do all the check_cc calls, then call itself as if it's building out of tree, then do all the check_cc calls again? --- diff --git a/Rules.mak b/Rules.mak index b7a91b63b..866e555eb 100644 --- a/Rules.mak +++ b/Rules.mak @@ -166,16 +166,17 @@ LD_END_GROUP:= -Wl,--end-group endif CHECKED_LDFLAGS := $(call check_ld,$(LD),--warn-common,) +#CHECKED_LDFLAGS := $(call check_ld,$(LD),-static-libgcc,) # Pin CHECKED_CFLAGS with := so it's only evaluated once. CHECKED_CFLAGS:=$(call check_cc,$(CC),-Wall,) -CHECKED_CFLAGS+=$(call check_cc,$(HOSTCC),-Werror,) CHECKED_CFLAGS+=$(call check_cc,$(CC),-Wstrict-prototypes,) CHECKED_CFLAGS+=$(call check_cc,$(CC),-Wshadow,) CHECKED_CFLAGS+=$(call check_cc,$(CC),-funsigned-char,) CHECKED_CFLAGS+=$(call check_cc,$(CC),-mmax-stack-frame=256,) -CHECKED_CFLAGS+=$(call check_cc,$(CC),-fno-builtin-strlen) -CHECKED_CFLAGS+=$(call check_cc,$(CC),-finline-limit=0) +CHECKED_CFLAGS+=$(call check_cc,$(CC),-fno-builtin-strlen,) +CHECKED_CFLAGS+=$(call check_cc,$(CC),-finline-limit=0,) +CHECKED_CFLAGS+=$(call check_cc,$(CC),-static-libgcc,) # Preemptively pin this too. PROG_CFLAGS:= @@ -216,11 +217,13 @@ endif ifeq ($(strip $(TARGET_ARCH)),i386) OPTIMIZATION+=$(call check_cc,$(CC),-march=i386,) # gcc-4.0 and older seem to benefit from these -#ifneq ($(strip $(shell [ $(CC_MAJOR) -ge 4 -a $(CC_MINOR) -ge 1 ] ; echo $$?)),0) +ifneq ($(strip $(shell [ $(CC_MAJOR) -ge 4 -a $(CC_MINOR) -ge 1 ] ; echo $$?)),0) OPTIMIZATION+=$(call check_cc,$(CC),-mpreferred-stack-boundary=2,) - OPTIMIZATION+=$(call check_cc,$(CC),-falign-functions=1 -falign-jumps=1 -falign-loops=1,\ - -malign-functions=0 -malign-jumps=0 -malign-loops=0) -#endif # gcc-4.0 and older + OPTIMIZATION+=$(call check_cc,$(CC),-falign-functions=1 -falign-jumps=1 -falign-loops=1, -malign-functions=0 -malign-jumps=0 -malign-loops=0,) + + # gcc 4.1 produces many broken, totally invalid warnings + CHECKED_CFLAGS+=$(call check_cc,$(CC),-Werror,) +endif # gcc-4.0 and older # gcc-4.1 and beyond seem to benefit from these ifeq ($(strip $(shell [ $(CC_MAJOR) -ge 4 -a $(CC_MINOR) -ge 1 ] ; echo $$?)),0)