From c5f773d7f4f04e6bde3f23613d53e198da805e56 Mon Sep 17 00:00:00 2001 From: "Patrick Georgi patrick.georgi" Date: Tue, 16 Mar 2010 12:01:13 +0000 Subject: Various changes to the buildsystem: - Single instance of the CC build rule in Makefile, instantiated as necessary - Remove manual static.o and option_table.o rules, they're now covered by those instances of the CC build rule - Normalize object file paths, so it can be $(obj)/option_table.o instead of $(obj)/arch/i386/../../option_table.o now - Add -pipe to compiler flags. It might be detrimental on rare scenarios (building with extremly high disk bandwidth, eg. RAM disk), but it significantly helps on win32 (which seems to cache less aggressively than most unix-alikes) - Silence stderr on hostname and domainname invocations (cosmetic fix for cygwin) - Test for -Wa,--divide functionality of the target compiler (taken from abuild). It might be possible to remove most patches in crossgcc with that. - Report build of failover.inc and romstage.inc Signed-off-by: Patrick Georgi git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5224 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- src/arch/i386/Makefile.inc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/arch') diff --git a/src/arch/i386/Makefile.inc b/src/arch/i386/Makefile.inc index 3134ef9cd0..49a9a509fb 100644 --- a/src/arch/i386/Makefile.inc +++ b/src/arch/i386/Makefile.inc @@ -42,7 +42,7 @@ endif ####################################################################### # i386 specific tools -$(obj)/option_table.h $(obj)/option_table.c $(obj)/arch/i386/../../option_table.c: $(obj)/build_opt_tbl $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout +$(obj)/option_table.h $(obj)/option_table.c: $(obj)/build_opt_tbl $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout @printf " OPTION $(subst $(obj)/,,$(@))\n" $(obj)/build_opt_tbl --config $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout --header $(obj)/option_table.h --option $(obj)/option_table.c @@ -183,9 +183,11 @@ ifeq ($(CONFIG_ROMCC),y) ROMCCFLAGS ?= -mcpu=p2 -O2 $(obj)/mainboard/$(MAINBOARDDIR)/failover.inc: $(obj)/romcc $(src)/arch/i386/lib/failover.c + printf " ROMCC failover.inc\n" $(obj)/romcc $(ROMCCFLAGS) --label-prefix=failover $(INCLUDES) $(src)/arch/i386/lib/failover.c -o $@ $(obj)/mainboard/$(MAINBOARDDIR)/romstage.inc: $(src)/mainboard/$(MAINBOARDDIR)/romstage.c $(obj)/romcc $(OPTION_TABLE_H) $(obj)/build.h + printf " ROMCC romstage.inc\n" $(obj)/romcc $(ROMCCFLAGS) -include $(obj)/build.h $(INCLUDES) $< -o $@ else @@ -194,6 +196,7 @@ $(obj)/mainboard/$(MAINBOARDDIR)/ap_romstage.o: $(src)/mainboard/$(MAINBOARDDIR) $(CC) $(CFLAGS) $(CPPFLAGS) $(DEBUG_CFLAGS) -I$(src) -I. -c -S $(src)/mainboard/$(MAINBOARDDIR)/ap_romstage.c -o $@ $(obj)/mainboard/$(MAINBOARDDIR)/romstage.inc: $(src)/mainboard/$(MAINBOARDDIR)/romstage.c $(OPTION_TABLE_H) $(obj)/build.h + printf " GEN romstage.inc\n" $(CC) $(CFLAGS) $(CPPFLAGS) $(DEBUG_CFLAGS) -include $(obj)/build.h -I$(src) -I. -c -S $< -o $@.tmp1 sed -e 's/\.rodata/.rom.data/g' -e 's/\.text/.section .rom.text/g' $@.tmp1 > $@.tmp mv $@.tmp $@ -- cgit v1.2.3