aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/Makefile
diff options
context:
space:
mode:
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>2006-10-05 16:35:56 +0100
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>2006-10-05 16:35:56 +0100
commit39e9688348db77a63cb189fbbad5c4d61412b063 (patch)
treee98b857ee23d93e34c63fa00c3359d56dca23d5c /xen/arch/x86/Makefile
parent2abd5d1c78450ed84a337ccef6699029d7a04e47 (diff)
downloadxen-39e9688348db77a63cb189fbbad5c4d61412b063.tar.gz
xen-39e9688348db77a63cb189fbbad5c4d61412b063.tar.bz2
xen-39e9688348db77a63cb189fbbad5c4d61412b063.zip
Make sure that if one of the intermediate steps fails, a subsequent
make invocation doesn't think there's nothing to do. This should be viewed as an intermediate step towards splitting up the rule into three independent ones, passing intermediate files from one to the next. Signed-off-by: Jan Beulich <jbeulich@novell.com>
Diffstat (limited to 'xen/arch/x86/Makefile')
-rw-r--r--xen/arch/x86/Makefile17
1 files changed, 9 insertions, 8 deletions
diff --git a/xen/arch/x86/Makefile b/xen/arch/x86/Makefile
index 8b008562e5..e303ec7b59 100644
--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -53,18 +53,18 @@ $(TARGET)-syms: boot/$(TARGET_SUBARCH).o $(ALL_OBJS) xen.lds
$(MAKE) -f $(BASEDIR)/Rules.mk $(BASEDIR)/common/symbols-dummy.o
$(LD) $(LDFLAGS) -T xen.lds -N \
boot/$(TARGET_SUBARCH).o $(ALL_OBJS) \
- $(BASEDIR)/common/symbols-dummy.o -o $@
- $(NM) -n $@ | $(BASEDIR)/tools/symbols >$(BASEDIR)/xen-syms.S
- $(MAKE) -f $(BASEDIR)/Rules.mk $(BASEDIR)/xen-syms.o
+ $(BASEDIR)/common/symbols-dummy.o -o $(@D)/.$(@F).0
+ $(NM) -n $(@D)/.$(@F).0 | $(BASEDIR)/tools/symbols >$(@D)/.$(@F).0.S
+ $(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).0.o
$(LD) $(LDFLAGS) -T xen.lds -N \
boot/$(TARGET_SUBARCH).o $(ALL_OBJS) \
- $(BASEDIR)/xen-syms.o -o $@
- $(NM) -n $@ | $(BASEDIR)/tools/symbols >$(BASEDIR)/xen-syms.S
- $(MAKE) -f $(BASEDIR)/Rules.mk $(BASEDIR)/xen-syms.o
+ $(@D)/.$(@F).0.o -o $(@D)/.$(@F).1
+ $(NM) -n $(@D)/.$(@F).1 | $(BASEDIR)/tools/symbols >$(@D)/.$(@F).1.S
+ $(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).1.o
$(LD) $(LDFLAGS) -T xen.lds -N \
boot/$(TARGET_SUBARCH).o $(ALL_OBJS) \
- $(BASEDIR)/xen-syms.o -o $@
- rm -f $(BASEDIR)/xen-syms.S $(BASEDIR)/xen-syms.o
+ $(@D)/.$(@F).1.o -o $@
+ rm -f $(@D)/.$(@F).[0-9]*
asm-offsets.s: $(TARGET_SUBARCH)/asm-offsets.c $(HDRS)
$(CC) $(CFLAGS) -S -o $@ $<
@@ -78,3 +78,4 @@ boot/mkelf32: boot/mkelf32.c
.PHONY: clean
clean::
rm -f asm-offsets.s xen.lds boot/*.o boot/*~ boot/core boot/mkelf32
+ rm -f $(BASEDIR)/.xen-syms.[0-9]*