Expand gcc tests.
[seabios.git] / Makefile
index 186ef51f25ef6224d0640ca7895d956282c80a39..7d7dbebe5fb91dd0de49b7942acf68c4fe4ea9a3 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -12,7 +12,7 @@ SRCBOTH=output.c util.c floppy.c ata.c misc.c mouse.c kbd.c pci.c \
         serial.c clock.c pic.c cdrom.c ps2port.c smpdetect.c resume.c \
         pnpbios.c pirtable.c
 SRC16=$(SRCBOTH) system.c disk.c apm.c pcibios.c vgahooks.c font.c
-SRC32=$(SRCBOTH) post.c shadow.c post_menu.c memmap.c coreboot.c boot.c \
+SRC32=$(SRCBOTH) post.c shadow.c memmap.c coreboot.c boot.c \
       acpi.c smm.c mptable.c smbios.c pciinit.c optionroms.c mtrr.c
 
 cc-option = $(shell if test -z "`$(1) $(2) -S -o /dev/null -xc \
@@ -20,7 +20,7 @@ cc-option = $(shell if test -z "`$(1) $(2) -S -o /dev/null -xc \
 
 # Default compiler flags
 COMMONCFLAGS = -Wall -Os -MD -m32 -march=i386 -mregparm=3 \
-               -mpreferred-stack-boundary=2 -mrtd \
+               -mpreferred-stack-boundary=2 -mrtd -freg-struct-return \
                -ffreestanding -fwhole-program -fomit-frame-pointer \
                -fno-delete-null-pointer-checks -Wno-strict-aliasing
 COMMONCFLAGS += $(call cc-option,$(CC),-nopie,)
@@ -54,8 +54,13 @@ vpath %.S src
 
 ################ Build rules
 
+TESTGCC:=$(shell CC=$(CC) tools/test-gcc.sh)
+ifeq "$(TESTGCC)" "-1"
+$(error "Please upgrade GCC")
+endif
+
 ifndef AVOIDCOMBINE
-AVOIDCOMBINE=$(shell CC=$(CC) tools/test-combine.sh)
+AVOIDCOMBINE=$(TESTGCC)
 endif
 
 # Do a whole file compile - two methods are supported.  The first