[coreboot-gerrit] Patch set updated for coreboot: x86 makefile: Use preprocessed linker files

Patrick Georgi (pgeorgi@google.com) gerrit at coreboot.org
Tue Jul 7 19:38:01 CEST 2015


Patrick Georgi (pgeorgi at google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/10743

-gerrit

commit d650364452363a8ff20f5b0e05f02c34e8b11ac7
Author: Marc Jones <marc.jones at se-eng.com>
Date:   Tue Jun 30 15:46:49 2015 -0600

    x86 makefile: Use preprocessed linker files
    
    The top level Makefile runs the $stage-src .ld scripts through
    the preprocessor and puts them in $(obj). Use the preprocessed
    .ld files and cat them together into x86 romstage_null.ld.
    
    Change-Id: If71240fbf7231df2b1333a1f8e5160cb8694f6ce
    Signed-off-by: Marc Jones <marc.jones at se-eng.com>
---
 src/arch/x86/Makefile.inc | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/arch/x86/Makefile.inc b/src/arch/x86/Makefile.inc
index f502bbe..4212d1c 100644
--- a/src/arch/x86/Makefile.inc
+++ b/src/arch/x86/Makefile.inc
@@ -101,9 +101,10 @@ ifeq ($(CONFIG_SSE),y)
 bootblock_romccflags := -mcpu=k7 -msse -O2 -D__PRE_RAM__ -D__BOOTBLOCK__
 endif
 
-$(objgenerated)/bootblock.ld: $(obj)/config.h $$(filter %.ld,$$(bootblock-srcs))
+$(objgenerated)/bootblock.ld: $$(filter %.ld,$$(bootblock-srcs))
 	@printf "    GEN        $(subst $(obj)/,,$(@))\n"
-	printf '$(foreach ldscript,$(^),#include "$(ldscript)"\n)' | $(CC_bootblock) $(PREPROCESS_ONLY) - > $@
+	cat $^ >> $@.tmp
+	mv $@.tmp $@
 
 $(objgenerated)/bootblock_inc.S: $$(bootblock_inc)
 	@printf "    GEN        $(subst $(obj)/,,$(@))\n"
@@ -220,12 +221,12 @@ $(objcbfs)/romstage.debug: $$(romstage-objs) $(objgenerated)/romstage.ld $$(roms
 	@printf "    LINK       $(subst $(obj)/,,$(@))\n"
 	$(LD_romstage) --gc-sections -nostdlib -nostartfiles -static -o $@ -L$(obj) $(COMPILER_RT_FLAGS_romstage) --whole-archive --start-group $(filter-out %.ld,$(romstage-objs)) $(romstage-libs) --no-whole-archive $(COMPILER_RT_romstage) --end-group -T $(objgenerated)/romstage.ld --oformat $(romstage-oformat)
 
-$(objgenerated)/romstage_null.ld: $(obj)/config.h $$(filter %.ld,$$(romstage-srcs))
+$(objgenerated)/romstage_null.ld: $$(filter %.ld,$$(romstage-objs))
 	@printf "    GEN        $(subst $(obj)/,,$(@))\n"
 	rm -f $@
 	printf "ROMSTAGE_BASE = 0x0;\n" > $@.tmp
-	printf '$(foreach ldscript,$(^),#include "$(ldscript)"\n)' >> $@.tmp
-	$(CC_romstage) $(PREPROCESS_ONLY) $@.tmp > $@
+	cat $^ >> $@.tmp
+	mv $@.tmp $@
 
 $(objgenerated)/romstage.ld: $(objgenerated)/romstage_null.ld $(objcbfs)/base_xip.txt
 	@printf "    GEN        $(subst $(obj)/,,$(@))\n"



More information about the coreboot-gerrit mailing list