# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 68ef2efa929b26f9e5ab71a5590c899d044c48ce
# Parent 133ce326febdae137e106c0b0089a8c127631662
Clean up build system some more. No need to explicitly
include Rules.mk/Post.mk all over the place.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
diff -r 133ce326febd -r 68ef2efa929b xen/Makefile
--- a/xen/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/Makefile Wed Apr 5 16:15:34 2006
@@ -1,27 +1,20 @@
-INSTALL = install
-INSTALL_DATA = $(INSTALL) -m0644
-INSTALL_DIR = $(INSTALL) -d -m0755
-
# This is the correct place to edit the build version.
# All other places this is stored (eg. compile.h) should be autogenerated.
-export XEN_VERSION = 3
-export XEN_SUBVERSION = 0
-export XEN_EXTRAVERSION = -unstable
-export XEN_FULLVERSION = $(XEN_VERSION).$(XEN_SUBVERSION)$(XEN_EXTRAVERSION)
+export XEN_VERSION := 3
+export XEN_SUBVERSION := 0
+export XEN_EXTRAVERSION := -unstable
+export XEN_FULLVERSION := $(XEN_VERSION).$(XEN_SUBVERSION)$(XEN_EXTRAVERSION)
-export BASEDIR := $(CURDIR)
-
-include Rules.mk
+export BASEDIR := $(CURDIR)
default: build
-$(TARGET).gz: $(TARGET)
- gzip -f -9 < $< > $@.new
- mv $@.new $@
-debug:
- objdump -D -S $(TARGET)-syms > $(TARGET).s
+ifeq ($(XEN_ROOT),)
-dist: install
+build install clean:
+ make -f Rules.mk $@
+
+else
build: $(TARGET).gz
@@ -38,24 +31,35 @@
$(INSTALL_DATA) include/public/io/*.h $(DESTDIR)/usr/include/xen/io
$(INSTALL_DATA) include/public/COPYING $(DESTDIR)/usr/include/xen
-clean: delete-unfresh-files
+clean:: delete-unfresh-files
$(MAKE) -C tools clean
- $(MAKE) -C common clean
- $(MAKE) -C drivers clean
- $(MAKE) -C acm clean
- $(MAKE) -C arch/$(TARGET_ARCH) clean
+ $(MAKE) -f $(BASEDIR)/Rules.mk -C common clean
+ $(MAKE) -f $(BASEDIR)/Rules.mk -C drivers clean
+ $(MAKE) -f $(BASEDIR)/Rules.mk -C acm clean
+ $(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) clean
rm -f include/asm *.o $(TARGET)* *~ core
rm -f include/asm-*/asm-offsets.h
rm -f include/xen/acm_policy.h
+endif
+
+dist: install
+
+debug: FORCE
+ objdump -D -S $(TARGET)-syms > $(TARGET).s
+
+$(TARGET).gz: $(TARGET)
+ gzip -f -9 < $< > $@.new
+ mv $@.new $@
+
$(TARGET): delete-unfresh-files
$(MAKE) -C tools
- $(MAKE) include/xen/compile.h
- $(MAKE) include/xen/acm_policy.h
+ $(MAKE) -f $(BASEDIR)/Rules.mk include/xen/compile.h
+ $(MAKE) -f $(BASEDIR)/Rules.mk include/xen/acm_policy.h
[ -e include/asm ] || ln -sf asm-$(TARGET_ARCH) include/asm
- $(MAKE) -C arch/$(TARGET_ARCH) asm-offsets.s
- $(MAKE) include/asm-$(TARGET_ARCH)/asm-offsets.h
- $(MAKE) -C arch/$(TARGET_ARCH) $(TARGET)
+ $(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) asm-offsets.s
+ $(MAKE) -f $(BASEDIR)/Rules.mk include/asm-$(TARGET_ARCH)/asm-offsets.h
+ $(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) $(TARGET)
# drivers/char/console.o contains static banner/compile info. Blow it away.
# Don't refresh these files during e.g., 'sudo make install'
@@ -115,7 +119,7 @@
echo ""; \
echo "#endif") <$< >$@
-.PHONY: default debug install dist clean delete-unfresh-files TAGS tags
+.PHONY: default debug build install dist clean delete-unfresh-files TAGS tags
SUBDIRS = acm arch/$(TARGET_ARCH) common drivers
define all_sources
diff -r 133ce326febd -r 68ef2efa929b xen/Rules.mk
--- a/xen/Rules.mk Wed Apr 5 14:46:01 2006
+++ b/xen/Rules.mk Wed Apr 5 16:15:34 2006
@@ -33,6 +33,10 @@
HDRS += $(wildcard $(BASEDIR)/include/asm-$(TARGET_ARCH)/*.h)
HDRS += $(wildcard $(BASEDIR)/include/asm-$(TARGET_ARCH)/$(TARGET_SUBARCH)/*.h)
+INSTALL := install
+INSTALL_DATA := $(INSTALL) -m0644
+INSTALL_DIR := $(INSTALL) -d -m0755
+
include $(BASEDIR)/arch/$(TARGET_ARCH)/Rules.mk
# Do not depend on auto-generated header files.
@@ -63,6 +67,36 @@
CFLAGS := $(strip $(CFLAGS) $(CFLAGS-y))
AFLAGS := $(strip $(AFLAGS) $(AFLAGS-y))
+include Makefile
+
+# Ensure each subdirectory has exactly one trailing slash.
+subdir-n := $(patsubst %,%/,$(patsubst %/,%,$(subdir-n)))
+subdir-y := $(patsubst %,%/,$(patsubst %/,%,$(subdir-y)))
+
+# Add explicitly declared subdirectories to the object list.
+obj-y += $(patsubst %,%/built_in.o,$(subdir-y))
+
+# Add implicitly declared subdirectories (in the object list) to the
+# subdirectory list, and rewrite the object-list entry.
+subdir-y += $(filter %/,$(obj-y))
+obj-y := $(patsubst %/,%/built-in.o,$(obj-y))
+
+subdir-all := $(subdir-y) $(subdir-n)
+
+built_in.o: $(obj-y)
+ $(LD) $(LDFLAGS) -r -o $@ $^
+
+.PHONY: FORCE
+FORCE:
+
+%/built_in.o: FORCE
+ $(MAKE) -f $(BASEDIR)/Rules.mk -C $* built_in.o
+
+clean:: $(addprefix _clean_, $(subdir-all)) FORCE
+ rm -f *.o *~ core
+_clean_%/: FORCE
+ $(MAKE) -f $(BASEDIR)/Rules.mk -C $* clean
+
%.o: %.c $(HDRS) Makefile
$(CC) $(CFLAGS) -c $< -o $@
diff -r 133ce326febd -r 68ef2efa929b xen/acm/Makefile
--- a/xen/acm/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/acm/Makefile Wed Apr 5 16:15:34 2006
@@ -1,9 +1,5 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += acm_core.o
obj-y += acm_policy.o
obj-y += acm_simple_type_enforcement_hooks.o
obj-y += acm_chinesewall_hooks.o
obj-y += acm_null_hooks.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/ia64/Makefile
--- a/xen/arch/ia64/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/ia64/Makefile Wed Apr 5 16:15:34 2006
@@ -1,21 +1,17 @@
-include $(BASEDIR)/Rules.mk
-
subdir-y += xen
subdir-y += vmx
subdir-y += linux
subdir-y += linux-xen
-include $(BASEDIR)/Post.mk
-
$(TARGET)-syms: linux-xen/head.o $(ALL_OBJS) xen.lds.s
$(LD) $(LDFLAGS) -T xen.lds.s -N \
-Map map.out linux-xen/head.o $(ALL_OBJS) -o $@
$(NM) -n $@ | $(BASEDIR)/tools/symbols > $(BASEDIR)/xen-syms.S
- $(MAKE) $(BASEDIR)/xen-syms.o
+ $(MAKE) -f $(BASEDIR)/Rules.mk $(BASEDIR)/xen-syms.o
$(LD) $(LDFLAGS) -T xen.lds.s -N \
-Map map.out linux-xen/head.o $(ALL_OBJS) $(BASEDIR)/xen-syms.o
-o $@
$(NM) -n $@ | $(BASEDIR)/tools/symbols >$(BASEDIR)/xen-syms.S
- $(MAKE) $(BASEDIR)/xen-syms.o
+ $(MAKE) -f $(BASEDIR)/Rules.mk $(BASEDIR)/xen-syms.o
$(LD) $(LDFLAGS) -T xen.lds.s -N \
-Map map.out linux-xen/head.o $(ALL_OBJS) $(BASEDIR)/xen-syms.o
-o $@
rm -f $(BASEDIR)/xen-syms.S $(BASEDIR)/xen-syms.o
diff -r 133ce326febd -r 68ef2efa929b xen/arch/ia64/linux-xen/Makefile
--- a/xen/arch/ia64/linux-xen/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/ia64/linux-xen/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += efi.o
obj-y += entry.o
obj-y += irq_ia64.o
@@ -15,5 +13,3 @@
obj-y += tlb.o
obj-y += unaligned.o
obj-y += unwind.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/ia64/linux/Makefile
--- a/xen/arch/ia64/linux/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/ia64/linux/Makefile Wed Apr 5 16:15:34 2006
@@ -1,6 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
-
obj-y += bitop.o
obj-y += clear_page.o
obj-y += cmdline.o
@@ -25,8 +22,6 @@
obj-y += __udivdi3.o
obj-y += __moddi3.o
obj-y += __umoddi3.o
-
-include $(BASEDIR)/Post.mk
## variants of divide/modulo
## see files in xen/arch/ia64/linux/lib (linux/arch/ia64/lib)
diff -r 133ce326febd -r 68ef2efa929b xen/arch/ia64/vmx/Makefile
--- a/xen/arch/ia64/vmx/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/ia64/vmx/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += hvm_vioapic.o
obj-y += mm.o
obj-y += mmio.o
@@ -20,5 +18,3 @@
obj-y += vmx_virt.o
obj-y += vmx_vsa.o
obj-y += vtlb.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/ia64/xen/Makefile
--- a/xen/arch/ia64/xen/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/ia64/xen/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += acpi.o
obj-y += dom0_ops.o
obj-y += domain.o
@@ -26,5 +24,3 @@
obj-y += xentime.o
obj-$(crash_debug) += gdbstub.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/Makefile
--- a/xen/arch/x86/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
subdir-y += acpi
subdir-y += cpu
subdir-y += genapic
@@ -50,8 +48,6 @@
obj-$(crash_debug) += gdbstub.o
-include $(BASEDIR)/Post.mk
-
$(TARGET): $(TARGET)-syms boot/mkelf32
./boot/mkelf32 $(TARGET)-syms $(TARGET) 0x100000 \
`$(NM) $(TARGET)-syms | sort | tail -n 1 | sed -e 's/^\([^
]*\).*/0x\1/'`
@@ -60,11 +56,11 @@
$(LD) $(LDFLAGS) -T xen.lds -N \
boot/$(TARGET_SUBARCH).o $(ALL_OBJS) -o $@
$(NM) -n $@ | $(BASEDIR)/tools/symbols >$(BASEDIR)/xen-syms.S
- $(MAKE) $(BASEDIR)/xen-syms.o
+ $(MAKE) -f $(BASEDIR)/Rules.mk $(BASEDIR)/xen-syms.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) $(BASEDIR)/xen-syms.o
+ $(MAKE) -f $(BASEDIR)/Rules.mk $(BASEDIR)/xen-syms.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
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/acpi/Makefile
--- a/xen/arch/x86/acpi/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/acpi/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,1 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += boot.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/cpu/Makefile
--- a/xen/arch/x86/cpu/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/cpu/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
subdir-y += mcheck
subdir-y += mtrr
@@ -12,5 +10,3 @@
obj-$(x86_32) += cyrix.o
obj-$(x86_32) += rise.o
obj-$(x86_32) += transmeta.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/cpu/mcheck/Makefile
--- a/xen/arch/x86/cpu/mcheck/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/cpu/mcheck/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += k7.o
obj-y += mce.o
obj-y += non-fatal.o
@@ -7,5 +5,3 @@
obj-y += p5.o
obj-y += p6.o
obj-y += winchip.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/cpu/mtrr/Makefile
--- a/xen/arch/x86/cpu/mtrr/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/cpu/mtrr/Makefile Wed Apr 5 16:15:34 2006
@@ -1,10 +1,6 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += amd.o
obj-y += centaur.o
obj-y += cyrix.o
obj-y += generic.o
obj-y += main.o
obj-y += state.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/genapic/Makefile
--- a/xen/arch/x86/genapic/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/genapic/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += bigsmp.o
obj-y += default.o
obj-y += delivery.o
@@ -7,5 +5,3 @@
obj-y += es7000plat.o
obj-y += probe.o
obj-y += summit.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/hvm/Makefile
--- a/xen/arch/x86/hvm/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/hvm/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
subdir-y += svm
subdir-y += vmx
@@ -10,5 +8,3 @@
obj-y += platform.o
obj-y += vioapic.o
obj-y += vlapic.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/hvm/svm/Makefile
--- a/xen/arch/x86/hvm/svm/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/hvm/svm/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
subdir-$(x86_32) += x86_32
subdir-$(x86_64) += x86_64
@@ -8,5 +6,3 @@
obj-y += intr.o
obj-y += svm.o
obj-y += vmcb.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/hvm/svm/x86_32/Makefile
--- a/xen/arch/x86/hvm/svm/x86_32/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/hvm/svm/x86_32/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,1 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += exits.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/hvm/svm/x86_64/Makefile
--- a/xen/arch/x86/hvm/svm/x86_64/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/hvm/svm/x86_64/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,1 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += exits.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/hvm/vmx/Makefile
--- a/xen/arch/x86/hvm/vmx/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/hvm/vmx/Makefile Wed Apr 5 16:15:34 2006
@@ -1,10 +1,6 @@
-include $(BASEDIR)/Rules.mk
-
subdir-$(x86_32) += x86_32
subdir-$(x86_64) += x86_64
obj-y += io.o
obj-y += vmcs.o
obj-y += vmx.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/hvm/vmx/x86_32/Makefile
--- a/xen/arch/x86/hvm/vmx/x86_32/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/hvm/vmx/x86_32/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,1 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += exits.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/hvm/vmx/x86_64/Makefile
--- a/xen/arch/x86/hvm/vmx/x86_64/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/hvm/vmx/x86_64/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,1 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += exits.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/x86_32/Makefile
--- a/xen/arch/x86/x86_32/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/x86_32/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += domain_page.o
obj-y += entry.o
obj-y += mm.o
@@ -7,5 +5,3 @@
obj-y += traps.o
obj-$(supervisor_mode_kernel) += supervisor_mode_kernel.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/arch/x86/x86_64/Makefile
--- a/xen/arch/x86/x86_64/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/arch/x86/x86_64/Makefile Wed Apr 5 16:15:34 2006
@@ -1,7 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += entry.o
obj-y += mm.o
obj-y += traps.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/common/Makefile
--- a/xen/common/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/common/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,3 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += acm_ops.o
obj-y += bitmap.o
obj-y += dom0_ops.o
@@ -28,7 +26,5 @@
obj-$(perfc) += perfc.o
obj-$(crash_debug) += gdbstub.o
-include $(BASEDIR)/Post.mk
-
# Object file contains changeset and compiler information.
kernel.o: $(BASEDIR)/include/xen/compile.h
diff -r 133ce326febd -r 68ef2efa929b xen/drivers/Makefile
--- a/xen/drivers/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/drivers/Makefile Wed Apr 5 16:15:34 2006
@@ -1,6 +1,2 @@
-include $(BASEDIR)/Rules.mk
-
subdir-y += char
subdir-$(HAS_ACPI) += acpi
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/drivers/acpi/Makefile
--- a/xen/drivers/acpi/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/drivers/acpi/Makefile Wed Apr 5 16:15:34 2006
@@ -1,5 +1,1 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += tables.o
-
-include $(BASEDIR)/Post.mk
diff -r 133ce326febd -r 68ef2efa929b xen/drivers/char/Makefile
--- a/xen/drivers/char/Makefile Wed Apr 5 14:46:01 2006
+++ b/xen/drivers/char/Makefile Wed Apr 5 16:15:34 2006
@@ -1,10 +1,6 @@
-include $(BASEDIR)/Rules.mk
-
obj-y += console.o
obj-y += ns16550.o
obj-y += serial.o
-include $(BASEDIR)/Post.mk
-
# Object file contains changeset and compiler information.
console.o: $(BASEDIR)/include/xen/compile.h
diff -r 133ce326febd -r 68ef2efa929b xen/Post.mk
--- a/xen/Post.mk Wed Apr 5 14:46:01 2006
+++ /dev/null Wed Apr 5 16:15:34 2006
@@ -1,27 +0,0 @@
-# Ensure each subdirectory has exactly one trailing slash.
-subdir-n := $(patsubst %,%/,$(patsubst %/,%,$(subdir-n)))
-subdir-y := $(patsubst %,%/,$(patsubst %/,%,$(subdir-y)))
-
-# Add explicitly declared subdirectories to the object list.
-obj-y += $(patsubst %,%/built_in.o,$(subdir-y))
-
-# Add implicitly declared subdirectories (in the object list) to the
-# subdirectory list, and rewrite the object-list entry.
-subdir-y += $(filter %/,$(obj-y))
-obj-y := $(patsubst %/,%/built-in.o,$(obj-y))
-
-subdir-all := $(subdir-y) $(subdir-n)
-
-built_in.o: $(obj-y)
- $(LD) $(LDFLAGS) -r -o $@ $^
-
-.PHONY: FORCE
-FORCE:
-
-%/built_in.o: FORCE
- $(MAKE) -C $*
-
-clean:: $(addprefix _clean_, $(subdir-all)) FORCE
- rm -f *.o *~ core
-_clean_%/: FORCE
- $(MAKE) -C $* clean
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|