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?
This commit is contained in:
Rob Landley 2006-07-31 22:56:17 +00:00
parent 565bc33332
commit 533320c659

View File

@ -166,16 +166,17 @@ LD_END_GROUP:= -Wl,--end-group
endif endif
CHECKED_LDFLAGS := $(call check_ld,$(LD),--warn-common,) 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. # Pin CHECKED_CFLAGS with := so it's only evaluated once.
CHECKED_CFLAGS:=$(call check_cc,$(CC),-Wall,) 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),-Wstrict-prototypes,)
CHECKED_CFLAGS+=$(call check_cc,$(CC),-Wshadow,) CHECKED_CFLAGS+=$(call check_cc,$(CC),-Wshadow,)
CHECKED_CFLAGS+=$(call check_cc,$(CC),-funsigned-char,) CHECKED_CFLAGS+=$(call check_cc,$(CC),-funsigned-char,)
CHECKED_CFLAGS+=$(call check_cc,$(CC),-mmax-stack-frame=256,) 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),-fno-builtin-strlen,)
CHECKED_CFLAGS+=$(call check_cc,$(CC),-finline-limit=0) CHECKED_CFLAGS+=$(call check_cc,$(CC),-finline-limit=0,)
CHECKED_CFLAGS+=$(call check_cc,$(CC),-static-libgcc,)
# Preemptively pin this too. # Preemptively pin this too.
PROG_CFLAGS:= PROG_CFLAGS:=
@ -216,11 +217,13 @@ endif
ifeq ($(strip $(TARGET_ARCH)),i386) ifeq ($(strip $(TARGET_ARCH)),i386)
OPTIMIZATION+=$(call check_cc,$(CC),-march=i386,) OPTIMIZATION+=$(call check_cc,$(CC),-march=i386,)
# gcc-4.0 and older seem to benefit from these # 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),-mpreferred-stack-boundary=2,)
OPTIMIZATION+=$(call check_cc,$(CC),-falign-functions=1 -falign-jumps=1 -falign-loops=1,\ OPTIMIZATION+=$(call check_cc,$(CC),-falign-functions=1 -falign-jumps=1 -falign-loops=1, -malign-functions=0 -malign-jumps=0 -malign-loops=0,)
-malign-functions=0 -malign-jumps=0 -malign-loops=0)
#endif # gcc-4.0 and older # 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 # gcc-4.1 and beyond seem to benefit from these
ifeq ($(strip $(shell [ $(CC_MAJOR) -ge 4 -a $(CC_MINOR) -ge 1 ] ; echo $$?)),0) ifeq ($(strip $(shell [ $(CC_MAJOR) -ge 4 -a $(CC_MINOR) -ge 1 ] ; echo $$?)),0)