[U-Boot] [PATCH 1/3] Makefile: Add generic build rules for include/asm/arch/asm-offsets.h
Graeme Russ
graeme.russ at gmail.com
Sun Aug 28 15:03:11 CEST 2011
Add three features to the top-level makefile:
- Add include/asm/arch/asm-offsets.h as a dependency of the 'depend'
target to eliminate 'file does not exist' errors during dependency
building
- Skip generation of include/asm/arch/asm-offsets.h if the source file
($(CPUDIR)/$(SOC)/asm-offsets.c) does not exist
- Add removal of arch specific asm-offsets.s and asm-offsets.h files to
the 'clean' target
Signed-off-by: Graeme Russ <graeme.russ at gmail.com>
---
Big Fat Note: I have not tested this on ARM which needs to be looked at
closely as the SoC files are one level deeper than where sc520 sits under
x86
Makefile | 24 ++++++++++++++++++++++--
1 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/Makefile b/Makefile
index 03d80b7..049b169 100644
--- a/Makefile
+++ b/Makefile
@@ -464,7 +464,8 @@ updater:
# parallel sub-makes creating .depend files simultaneously.
depend dep: $(TIMESTAMP_FILE) $(VERSION_FILE) \
$(obj)include/autoconf.mk \
- $(obj)include/generated/generic-asm-offsets.h
+ $(obj)include/generated/generic-asm-offsets.h \
+ $(obj)include/asm/arch/asm-offsets.h
for dir in $(SUBDIRS) $(CPUDIR) $(dir $(LDSCRIPT)) ; do \
$(MAKE) -C $$dir _depend ; done
@@ -527,6 +528,23 @@ $(obj)lib/asm-offsets.s: $(obj)include/autoconf.mk.dep \
$(CFLAGS) $(CFLAGS_$(BCURDIR)/$(@F)) $(CFLAGS_$(BCURDIR)) \
-o $@ $(src)lib/asm-offsets.c -c -S
+$(obj)include/asm/arch/asm-offsets.h: $(TOPDIR)/include/autoconf.mk.dep \
+ $(if $(wildcard $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.c), \
+ $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.s,)
+ @echo Generating $@
+ $(if $(wildcard $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.c), \
+ tools/scripts/make-asm-offsets $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.s $@ \
+ , at echo $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.c does not exist - skipping)
+
+$(TOPDIR)$(CPUDIR)/$(SOC)/asm-offsets.s: $(TOPDIR)/include/autoconf.mk.dep \
+ $(if $(wildcard $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.c), \
+ $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.c,)
+ $(if $(wildcard $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.c), \
+ $(CC) -DDO_DEPS_ONLY \
+ $(CFLAGS) $(CFLAGS_$(BCURDIR)/$(@F)) $(CFLAGS_$(BCURDIR)) \
+ -o $@ $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.c -c -S \
+ , at echo $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.c does not exist - skipping)
+
#########################################################################
else # !config.mk
all $(obj)u-boot.hex $(obj)u-boot.srec $(obj)u-boot.bin \
@@ -1019,7 +1037,9 @@ clean:
$(obj)board/armltd/{integratorap,integratorcp}/u-boot.lds \
$(obj)u-boot.lds \
$(obj)arch/blackfin/cpu/bootrom-asm-offsets.[chs] \
- $(obj)arch/blackfin/cpu/init.{lds,elf}
+ $(obj)arch/blackfin/cpu/init.{lds,elf} \
+ $(TOPDIR)/$(CPUDIR)/$(SOC)/asm-offsets.s \
+ $(TOPDIR)/include/asm/arch/asm-offsets.h
@rm -f $(obj)include/bmp_logo.h
@rm -f $(obj)lib/asm-offsets.s
@rm -f $(obj)nand_spl/{u-boot.lds,u-boot-nand_spl.lds,u-boot-spl,u-boot-spl.map,System.map}
--
1.7.5.2.317.g391b14
More information about the U-Boot
mailing list