[makefile] Fix -fno-stack-protector test on older versions of gcc
authorMichael Brown <mcb30@etherboot.org>
Wed, 1 Oct 2008 18:05:39 +0000 (19:05 +0100)
committerMichael Brown <mcb30@etherboot.org>
Wed, 1 Oct 2008 18:24:56 +0000 (19:24 +0100)
Some older versions of gcc don't complain about unknown compiler flags
unless you ask them to actually compile; asking them to merely
preprocess won't trigger the error.

Fix the -fno-stack-protector test by making it attempt to compile an
empty file, rather than preprocess an empty file.

src/Makefile.housekeeping

index 2db9f55..6a4d877 100644 (file)
@@ -112,7 +112,8 @@ oldgas :
 # default, even when -ffreestanding is specified.  We therefore need
 # to disable -fstack-protector if the compiler supports it.
 #
-SP_TEST = $(CC) -fno-stack-protector -x c -E - < /dev/null >/dev/null 2>&1
+SP_TEST = $(CC) -fno-stack-protector -x c -c /dev/null \
+               -o /dev/null >/dev/null 2>&1
 SP_FLAGS := $(shell $(SP_TEST) && $(ECHO) '-fno-stack-protector')
 CFLAGS += $(SP_FLAGS)