[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Add hvm headers to HDRS variable.
# HG changeset patch # User kaf24@xxxxxxxxxxxxxxxxxxxx # Node ID 4d16755748ebbd12f0428d1ead645f6dd227fe28 # Parent b54bba73936d4c0c6a279108da05b4221cdf58a9 Add hvm headers to HDRS variable. xen-unstable changeset: 9540:c1d53788a25e07b4ac4ef49c3e3d76f7ad3f6b8f xen-unstable date: Wed Apr 5 15:42:01 2006 +0100 Clean up HDRS Makefile variable. Signed-off-by: Keir Fraser <keir.com> xen-unstable changeset: 9541:133ce326febdae137e106c0b0089a8c127631662 xen-unstable date: Wed Apr 5 15:46:01 2006 +0100 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.com> xen-unstable changeset: 9542:68ef2efa929b26f9e5ab71a5590c899d044c48ce xen-unstable date: Wed Apr 5 17:15:34 2006 +0100 Avoid double slashes in linker object file lists. Signed-off-by: Keir Fraser <keir.com> xen-unstable changeset: 9582:b84517e3fc3042f4bfe822d39eca87be0fad5932 xen-unstable date: Fri Apr 7 14:26:02 2006 +0100 Remove unused netbsd build fragments. Signed-Off-By: Homrs <horms.net.au> xen-unstable changeset: 9597:c83da0012e87e4b1d83bb61ec338616fbcf3b141 xen-unstable date: Mon Apr 10 16:26:52 2006 +0100 build: Remove iptables and python loging helper targets These targets don't really fit into the build infastructure, for instance there is no faclilty for them to be removed on make distclean. I posted a patch that fleshed out the targets, but Christian Limpach suggested to me that removing them would be a better idea. Signed-Off-By: Horms <horms.net.au> xen-unstable changeset: 9598:095519654079f55af70943004e448fb779ac4c5a xen-unstable date: Mon Apr 10 16:27:46 2006 +0100 build: Make sure that DESTDIR is set In the case where XEN_PYTHON_NATIVE_INSTALL is in effect, if DESTDIR is not set then the install will go into a relative directory rather than under the default prefix (usually /usr). An alternate solution would be to update the fragments that do the python install to use 2062 2062 141 126DESTDIR)/ instead of 2062 2062 141 126DESTDIR). This is not an incredible burden as there are only two such fragments in the tree. However, it seems prone to error as new makefiles are created in the future. Signed-Off-By: Horms <horms.net.au> xen-unstable changeset: 9599:baa1742637b7e4a2d94db08b4f12c2a0f8b07128 xen-unstable date: Mon Apr 10 16:31:53 2006 +0100 build: clean up output of make help a little bit Signed-Off-By: Horms <horms.net.au> xen-unstable changeset: 9600:82dfb97fe5ea6d9e0c279b0c2de0688c09c1e4e4 xen-unstable date: Mon Apr 10 16:34:59 2006 +0100 build: Document the use of XEN_PYTHON_NATIVE_INSTALL Document the use of the XEN_PYTHON_NATIVE_INSTALL environment variable Signed-Off-By: Horms <horms.net.au> xen-unstable changeset: 9601:066a233ee3659fb1e52a4bca05727e5cdd12004a xen-unstable date: Mon Apr 10 16:35:30 2006 +0100 build: Clean up use of .PHONY * Move .PHONY directives next to targets, this makes them a lot harder to miss * Add missing .PHONY directives * Remove nonexistent .PHONY directives * Hopefully I didn'T miss anything... Signed-Off-By: Horms <horms.net.au> xen-unstable changeset: 9607:b454a09cddb1a4ba44e8a810f8f6779c5e5bb3ef xen-unstable date: Mon Apr 10 17:02:49 2006 +0100 Fix a couple of typos. Signed-off-by: Keir Fraser <keir.com> xen-unstable changeset: 9610:7a41b35d73f40246ea839a0628f50dd937b21d50 xen-unstable date: Mon Apr 10 17:28:02 2006 +0100 Remove some bogus .PHONY Makefile declarations. Fixes xentop installation. Signed-off-by: Keir Fraser <keir.com> xen-unstable changeset: 9616:c783f340bef82223eb5fcd88093fd919f41790b6 xen-unstable date: Tue Apr 11 09:58:04 2006 +0100 This fixes the Xen Makefile to allow correct building of cscope, TAGS and tags. Prior to this the asm directory was not constructed correctly for the "find" command. "xencope.*" has been added to ".hgignore". Signed-off-by: Aravindh Puthiyaparambil <aravindh.puthiyaparambil.com> xen-unstable changeset: 9629:4f0ecc016cd1ebda3bff176c8c01113c35b05c7b xen-unstable date: Thu Apr 13 10:45:43 2006 +0100 Clean up xen Makefile. Use _-prefixed rules to avoid a comparsion with XEN_ROOT variable. Signed-off-by: Keir Fraser <keir.com> xen-unstable changeset: 9630:c9d706834d25a9efe5bd3a98cbf32c6998f30ab4 xen-unstable date: Thu Apr 13 10:57:57 2006 +0100 In some cases, say for instance for some bizzare reason the tree was checked out of CVS, which doens't neccessarily store file permissions, mkbuildtree may not be executable. So run them explicitly via bash. Signed-Off-By: Horms <horms.net.au> xen-unstable changeset: 9636:3c05406f5e0acc37eb3e59311c7d1c3cf245dc29 xen-unstable date: Thu Apr 13 11:24:00 2006 +0100 Fix "make debug" in Xen subtree. Pointed out by Aravindh at Unisys. Signed-off-by: Keir Fraser <keir.com> xen-unstable changeset: 9736:25e4cd1c3d269022dc6c75dfddac9710e092f575 xen-unstable date: Tue Apr 25 08:54:36 2006 +0100 Fix fault handler for both 32 and 64 bit architecture. Clean up unused code. Signed-off-by: Grzegorz Milos <gm281.ac.uk> Signed-off-by: Aravindh Puthiyaparambil <aravindh.puthiyaparambil.com> xen-unstable changeset: 9923:62c8e97d56cfea3708a2bd308330d71047623888 xen-unstable date: Thu May 4 11:19:27 2006 +0100 Make Xen version numbers more flexible. Signed-off-by: Christian Limpach <Christian.Limpach.cam.ac.uk> xen-unstable changeset: 9958:c51c1e7ce0a343e02d31c691b317092387505f4c xen-unstable date: Mon May 8 16:41:22 2006 +0100 Make cscope hgignore wildcard a little bit less permissive. Signed-off-by: Christian Limpach <Christian.Limpach.cam.ac.uk> xen-unstable changeset: 9959:4bc1229b257391aa4de6c95796d42d6d7009dc33 xen-unstable date: Mon May 8 17:18:19 2006 +0100 --- xen/Post.mk | 27 --------- .hgignore | 1 Config.mk | 1 Makefile | 60 +++++++++++--------- buildconfigs/Rules.mk | 40 +------------ buildconfigs/mk.linux-2.6-xen | 20 +++--- docs/Makefile | 13 +++- extras/mini-os/Makefile | 11 +++ linux-2.6-xen-sparse/mkbuildtree | 8 +- tools/Makefile | 8 ++ tools/Rules.mk | 1 tools/blktap/Makefile | 5 + tools/blktap/parallax/Makefile | 4 + tools/blktap/ublkback/Makefile | 6 +- tools/check/Makefile | 6 +- tools/console/Makefile | 3 + tools/console/testsuite/Makefile | 2 tools/debugger/gdb/gdbbuild | 2 tools/debugger/libxendebug/Makefile | 9 ++- tools/debugger/pdb/Makefile | 2 tools/debugger/pdb/linux-2.6-module/Makefile | 2 tools/debugger/pdb/linux-2.6-patches/Makefile | 1 tools/examples/Makefile | 10 +++ tools/firmware/Makefile | 5 + tools/firmware/acpi/Makefile | 4 + tools/firmware/hvmloader/Makefile | 2 tools/firmware/rombios/Makefile | 3 + tools/firmware/vgabios/Makefile | 5 + tools/firmware/vmxassist/Makefile | 2 tools/guest-headers/Makefile | 4 + tools/ioemu/Makefile | 9 +++ tools/ioemu/target-i386-dm/Makefile | 4 + tools/libxc/Makefile | 10 ++- tools/misc/Makefile | 5 + tools/misc/cpuperf/Makefile | 3 + tools/misc/lomount/Makefile | 5 + tools/misc/mbootpack/Makefile | 6 +- tools/misc/miniterm/Makefile | 3 + tools/misc/nsplitd/Makefile | 3 + tools/misc/xen-clone | 2 tools/pygrub/Makefile | 4 + tools/python/Makefile | 8 ++ tools/security/Makefile | 8 ++ tools/sv/Makefile | 1 tools/tests/Makefile | 3 + tools/vnet/Makefile | 15 +++-- tools/vnet/doc/Makefile | 4 + tools/vnet/examples/Makefile | 7 +- tools/vnet/libxutil/Makefile | 5 + tools/vnet/scripts/Makefile | 7 +- tools/vnet/vnetd/Makefile | 3 + tools/vtpm/Makefile | 6 ++ tools/vtpm_manager/Makefile | 5 + tools/vtpm_manager/crypto/Makefile | 5 + tools/vtpm_manager/manager/Makefile | 5 + tools/vtpm_manager/tcs/Makefile | 5 + tools/vtpm_manager/util/Makefile | 5 + tools/xcutils/Makefile | 3 + tools/xenmon/Makefile | 4 + tools/xenstat/libxenstat/Makefile | 10 +++ tools/xenstat/xentop/Makefile | 6 +- tools/xenstore/Makefile | 18 ++++++ tools/xentrace/Makefile | 5 + xen/Makefile | 77 +++++++++++++++----------- xen/Rules.mk | 59 +++++++++++++++---- xen/acm/Makefile | 4 - xen/arch/ia64/Makefile | 11 +-- xen/arch/ia64/linux-xen/Makefile | 4 - xen/arch/ia64/linux/Makefile | 5 - xen/arch/ia64/tools/privop/Makefile | 2 xen/arch/ia64/vmx/Makefile | 4 - xen/arch/ia64/xen/Makefile | 4 - xen/arch/x86/Makefile | 11 +-- xen/arch/x86/Rules.mk | 4 + xen/arch/x86/acpi/Makefile | 4 - xen/arch/x86/cpu/Makefile | 4 - xen/arch/x86/cpu/mcheck/Makefile | 4 - xen/arch/x86/cpu/mtrr/Makefile | 4 - xen/arch/x86/genapic/Makefile | 4 - xen/arch/x86/hvm/Makefile | 4 - xen/arch/x86/hvm/svm/Makefile | 4 - xen/arch/x86/hvm/svm/x86_32/Makefile | 4 - xen/arch/x86/hvm/svm/x86_64/Makefile | 4 - xen/arch/x86/hvm/vmx/Makefile | 4 - xen/arch/x86/hvm/vmx/x86_32/Makefile | 4 - xen/arch/x86/hvm/vmx/x86_64/Makefile | 4 - xen/arch/x86/x86_32/Makefile | 4 - xen/arch/x86/x86_64/Makefile | 4 - xen/common/Makefile | 4 - xen/drivers/Makefile | 4 - xen/drivers/acpi/Makefile | 4 - xen/drivers/char/Makefile | 4 - xen/tools/Makefile | 2 xen/tools/figlet/Makefile | 1 94 files changed, 436 insertions(+), 283 deletions(-) diff -r b54bba73936d -r 4d16755748eb .hgignore --- a/.hgignore Fri May 12 15:49:11 2006 +0100 +++ b/.hgignore Fri May 12 22:35:05 2006 +0100 @@ -14,6 +14,7 @@ .*\.orig$ .*\.rej$ .*/a\.out$ +.*/cscope\.*$ ^[^/]*\.bz2$ ^TAGS$ ^dist/.*$ diff -r b54bba73936d -r 4d16755748eb Config.mk --- a/Config.mk Fri May 12 15:49:11 2006 +0100 +++ b/Config.mk Fri May 12 22:35:05 2006 +0100 @@ -24,6 +24,7 @@ OBJDUMP = $(CROSS_COMPILE)objdump OBJDUMP = $(CROSS_COMPILE)objdump DISTDIR ?= $(XEN_ROOT)/dist +DESTDIR ?= / INSTALL = install INSTALL_DIR = $(INSTALL) -d -m0755 diff -r b54bba73936d -r 4d16755748eb Makefile --- a/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/Makefile Fri May 12 22:35:05 2006 +0100 @@ -14,6 +14,7 @@ endif endif # Default target must appear before any include lines +.PHONY: all all: dist XEN_ROOT=$(CURDIR) @@ -24,12 +25,11 @@ export pae=y export pae=y endif -.PHONY: all dist install xen kernels tools dev-docs docs world clean -.PHONY: mkpatches mrproper kbuild kdelete kclean - # build and install everything into the standard system directories +.PHONY: install install: install-xen install-kernels install-tools install-docs +.PHONY: build build: kernels $(MAKE) -C xen build $(MAKE) -C tools build @@ -38,10 +38,12 @@ build: kernels # The test target is for unit tests that can run without an installation. Of # course, many tests require a machine running Xen itself, and these are # handled elsewhere. +.PHONY: test test: $(MAKE) -C tools/python test # build and install everything into local dist directory +.PHONY: dist dist: DESTDIR=$(DISTDIR)/install dist: dist-xen dist-kernels dist-tools dist-docs $(INSTALL_DIR) $(DISTDIR)/check @@ -54,79 +56,83 @@ dist-%: install-% @: # do nothing # Legacy dist targets +.PHONY: xen tools kernels docs xen: dist-xen tools: dist-tools kernels: dist-kernels docs: dist-docs +.PHONY: prep-kernels prep-kernels: for i in $(XKERNELS) ; do $(MAKE) $$i-prep || exit 1; done +.PHONY: install-xen install-xen: $(MAKE) -C xen install +.PHONY: install-tools install-tools: $(MAKE) -C tools install +.PHONY: install-kernels install-kernels: for i in $(XKERNELS) ; do $(MAKE) $$i-install || exit 1; done +.PHONY: install-docs install-docs: sh ./docs/check_pkgs && $(MAKE) -C docs install || true +.PHONY: dev-docs dev-docs: $(MAKE) -C docs dev-docs # Build all the various kernels and modules +.PHONY: kbuild kbuild: kernels # Delete the kernel build trees entirely +.PHONY: kdelete kdelete: for i in $(XKERNELS) ; do $(MAKE) $$i-delete ; done # Clean the kernel build trees +.PHONY: kclean kclean: for i in $(XKERNELS) ; do $(MAKE) $$i-clean ; done # Make patches from kernel sparse trees +.PHONY: mkpatches mkpatches: for i in $(ALLSPARSETREES) ; do $(MAKE) $$i-xen.patch; done # build xen, the tools, and a domain 0 plus unprivileged linux-xen images, # and place them in the install directory. 'make install' should then # copy them to the normal system directories +.PHONY: world world: $(MAKE) clean $(MAKE) kdelete $(MAKE) dist # clean doesn't do a kclean +.PHONY: clean clean:: $(MAKE) -C xen clean $(MAKE) -C tools clean $(MAKE) -C docs clean # clean, but blow away kernel build tree plus tarballs +.PHONY: distclean distclean: clean rm -rf dist patches/tmp for i in $(ALLKERNELS) ; do $(MAKE) $$i-delete ; done for i in $(ALLSPARSETREES) ; do $(MAKE) $$i-mrproper ; done # Linux name for GNU distclean +.PHONY: mrproper mrproper: distclean -install-logging: LOGGING=logging-0.4.9.2 -install-logging: - [ -f $(LOGGING).tar.gz ] || wget http://www.red-dove.com/$(LOGGING).tar.gz - tar -zxf $(LOGGING).tar.gz - cd $(LOGGING) && python setup.py install - -# handy target to upgrade iptables (use rpm or apt-get in preference) -install-iptables: - wget http://www.netfilter.org/files/iptables-1.2.11.tar.bz2 - tar -jxf iptables-1.2.11.tar.bz2 - $(MAKE) -C iptables-1.2.11 PREFIX= KERNEL_DIR=../linux-$(LINUX_VER)-xen0 install - +.PHONY: help help: @echo 'Installation targets:' @echo ' install - build and install everything' @@ -147,25 +153,28 @@ help: @echo ' dev-docs - build developer-only documentation' @echo '' @echo 'Cleaning targets:' - @echo ' clean - clean the Xen, tools and docs (but not' - @echo ' guest kernel) trees' - @echo ' distclean - clean plus delete kernel tarballs and kernel' - @echo ' build trees' + @echo ' clean - clean the Xen, tools and docs (but not guest kernel trees)' + @echo ' distclean - clean plus delete kernel build trees and' + @echo ' local downloaded files' @echo ' kdelete - delete guest kernel build trees' @echo ' kclean - clean guest kernel build trees' - @echo '' - @echo 'Dependency installation targets:' - @echo ' install-logging - install the Python Logging package' - @echo ' install-iptables - install iptables tools' @echo '' @echo 'Miscellaneous targets:' @echo ' prep-kernels - prepares kernel directories, does not build' @echo ' mkpatches - make patches against vanilla kernels from' @echo ' sparse trees' - @echo ' uninstall - attempt to remove installed Xen tools (use' - @echo ' with extreme care!)' + @echo ' uninstall - attempt to remove installed Xen tools' + @echo ' (use with extreme care!)' + @echo + @echo 'Environment:' + @echo ' XEN_PYTHON_NATIVE_INSTALL=y' + @echo ' - native python install or dist' + @echo ' install into prefix/lib/python<VERSION>' + @echo ' instead of <PREFIX>/lib/python' + @echo ' true if set to non-empty value, false otherwise' # Use this target with extreme care! +.PHONY: uninstall uninstall: D=$(DESTDIR) uninstall: [ -d $(D)/etc/xen ] && mv -f $(D)/etc/xen $(D)/etc/xen.old-`date +%s` || true @@ -199,5 +208,6 @@ uninstall: rm -rf $(D)/usr/share/man/man8/xen* # Legacy targets for compatibility +.PHONY: linux26 linux26: $(MAKE) 'KERNELS=linux-2.6*' kernels diff -r b54bba73936d -r 4d16755748eb buildconfigs/Rules.mk --- a/buildconfigs/Rules.mk Fri May 12 15:49:11 2006 +0100 +++ b/buildconfigs/Rules.mk Fri May 12 22:35:05 2006 +0100 @@ -5,8 +5,6 @@ export DESTDIR ALLKERNELS = $(patsubst buildconfigs/mk.%,%,$(wildcard buildconfigs/mk.*)) ALLSPARSETREES = $(patsubst %-xen-sparse,%,$(wildcard *-xen-sparse)) - -.PHONY: mkpatches mrproper # Setup pristine search path PRISTINE_SRC_PATH ?= .:.. @@ -40,29 +38,6 @@ patch-%.bz2: @echo "Cannot find $(@F) in path $(LINUX_SRC_PATH)" wget $(KERNEL_REPO)/pub/linux/kernel/v$(_LINUX_VDIR)/$(_LINUX_XDIR)/$(@F) -O./$@ -# Expand NetBSD release to NetBSD version -NETBSD_RELEASE ?= 2.0 -NETBSD_VER ?= $(patsubst netbsd-%-xen-sparse,%,$(wildcard netbsd-$(NETBSD_RELEASE)*-xen-sparse)) -NETBSD_CVSSNAP ?= 20050309 - -# Setup NetBSD search path -NETBSD_SRC_PATH ?= .:.. -vpath netbsd-%.tar.bz2 $(NETBSD_SRC_PATH) - -# download a pristine NetBSD tarball if there isn't one in NETBSD_SRC_PATH -netbsd-%-xen-kernel-$(NETBSD_CVSSNAP).tar.bz2: - @echo "Cannot find $@ in path $(NETBSD_SRC_PATH)" - wget http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/$@ -O./$@ - -netbsd-%.tar.bz2: netbsd-%-xen-kernel-$(NETBSD_CVSSNAP).tar.bz2 - ln -fs $< $@ - -ifeq ($(OS),linux) -OS_VER = $(LINUX_VER) -else -OS_VER = $(NETBSD_VER) -endif - pristine-%: pristine-%/.valid-pristine @true @@ -84,6 +59,7 @@ ifneq ($(PATCHDIRS),) $(patsubst patches/%,patches/%/.makedep,$(PATCHDIRS)): patches/%/.makedep: @echo 'ref-$*/.valid-ref: $$(wildcard patches/$*/*.patch)' >$@ +.PHONY: clean clean:: rm -f patches/*/.makedep @@ -123,28 +99,22 @@ linux-2.6-xen.patch: ref-linux-$(LINUX_V linux-2.6-xen.patch: ref-linux-$(LINUX_VER)/.valid-ref rm -rf tmp-$@ cp -al $(<D) tmp-$@ - ( cd linux-2.6-xen-sparse && ./mkbuildtree ../tmp-$@ ) + ( cd linux-2.6-xen-sparse && bash ./mkbuildtree ../tmp-$@ ) diff -Nurp $(patsubst ref%,pristine%,$(<D)) tmp-$@ > $@ || true rm -rf tmp-$@ %-xen.patch: ref-%/.valid-ref rm -rf tmp-$@ cp -al $(<D) tmp-$@ - ( cd $*-xen-sparse && ./mkbuildtree ../tmp-$@ ) + ( cd $*-xen-sparse && bash ./mkbuildtree ../tmp-$@ ) diff -Nurp $(patsubst ref%,pristine%,$(<D)) tmp-$@ > $@ || true rm -rf tmp-$@ -%-mrproper: %-mrproper-extra +%-mrproper: rm -rf pristine-$(*)* ref-$(*)* $*.tar.bz2 rm -rf $*-xen.patch -netbsd-%-mrproper-extra: - rm -rf netbsd-$*-tools netbsd-$*-tools.tar.bz2 - rm -f netbsd-$*-xen-kernel-$(NETBSD_CVSSNAP).tar.bz2 - -%-mrproper-extra: - @: # do nothing - +.PHONY: config-update-pae config-update-pae: ifeq ($(XEN_TARGET_X86_PAE),y) sed -e 's!^CONFIG_HIGHMEM4G=y$$!\# CONFIG_HIGHMEM4G is not set!;s!^\# CONFIG_HIGHMEM64G is not set$$!CONFIG_HIGHMEM64G=y!' $(CONFIG_FILE) > $(CONFIG_FILE)- && mv $(CONFIG_FILE)- $(CONFIG_FILE) diff -r b54bba73936d -r 4d16755748eb buildconfigs/mk.linux-2.6-xen --- a/buildconfigs/mk.linux-2.6-xen Fri May 12 15:49:11 2006 +0100 +++ b/buildconfigs/mk.linux-2.6-xen Fri May 12 22:35:05 2006 +0100 @@ -1,19 +1,15 @@ - -OS = linux - LINUX_SERIES = 2.6 LINUX_VER = 2.6.16 LINUX_SRCS = linux-2.6.16.tar.bz2 EXTRAVERSION ?= xen -LINUX_DIR = $(OS)-$(LINUX_VER)-$(EXTRAVERSION) +LINUX_DIR = linux-$(LINUX_VER)-$(EXTRAVERSION) include buildconfigs/Rules.mk -.PHONY: build clean delete - # The real action starts here! +.PHONY: build build: $(LINUX_DIR)/include/linux/autoconf.h if grep "^CONFIG_MODULES=" $(LINUX_DIR)/.config ; then \ $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) modules ; \ @@ -22,12 +18,12 @@ build: $(LINUX_DIR)/include/linux/autoco $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) INSTALL_PATH=$(DESTDIR) vmlinuz $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) INSTALL_PATH=$(DESTDIR) install -$(LINUX_DIR)/include/linux/autoconf.h: ref-$(OS)-$(LINUX_VER)/.valid-ref +$(LINUX_DIR)/include/linux/autoconf.h: ref-linux-$(LINUX_VER)/.valid-ref rm -rf $(LINUX_DIR) cp -al $(<D) $(LINUX_DIR) # Apply arch-xen patches - ( cd linux-$(LINUX_SERIES)-xen-sparse ; \ - LINUX_ARCH=$(LINUX_ARCH) ./mkbuildtree ../$(LINUX_DIR) ) + ( cd linux-$(LINUX_SERIES)-xen-sparse && \ + LINUX_ARCH=$(LINUX_ARCH) bash ./mkbuildtree ../$(LINUX_DIR) ) # Re-use config from install dir if one exits else use default config CONFIG_VERSION=$$(sed -ne 's/^EXTRAVERSION = //p' $(LINUX_DIR)/Makefile); \ [ -r $(DESTDIR)/boot/config-$(LINUX_VER)$$CONFIG_VERSION-$(EXTRAVERSION) ] && \ @@ -42,14 +38,18 @@ build: $(LINUX_DIR)/include/linux/autoco rm -f Makefile ; mv Mk.tmp Makefile ) $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) oldconfig +.PHONY: prep prep: $(LINUX_DIR)/include/linux/autoconf.h +.PHONY: config config: CONFIGMODE = menuconfig config: $(LINUX_DIR)/include/linux/autoconf.h $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) $(CONFIGMODE) +.PHONY: clean clean:: $(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) clean +.PHONY: delete delete: - rm -rf tmp-$(OS)-$(LINUX_VER) $(LINUX_DIR) + rm -rf tmp-linux-$(LINUX_VER) $(LINUX_DIR) diff -r b54bba73936d -r 4d16755748eb docs/Makefile --- a/docs/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/docs/Makefile Fri May 12 22:35:05 2006 +0100 @@ -26,22 +26,28 @@ DOC_HTML := $(patsubst src/%.tex,html/%/ GFX = $(patsubst %.fig, %.eps, $(wildcard figs/*.fig)) -.PHONY: all build dev-docs python-dev-docs ps pdf html clean install +.PHONY: all +all: build -all: build +.PHONY: build build: ps pdf html man-pages rm -f *.aux *.dvi *.bbl *.blg *.glo *.idx *.ilg *.log *.ind *.toc +.PHONY: dev-docs dev-docs: python-dev-docs +.PHONY: ps ps: $(DOC_PS) +.PHONY: pdf pdf: $(DOC_PDF) +.PHONY: html html: @if which $(LATEX2HTML) 1>/dev/null 2>/dev/null; then \ $(MAKE) $(DOC_HTML); fi +.PHONY: python-dev-docs python-dev-docs: @mkdir -v -p api/tools/python @if which $(DOXYGEN) 1>/dev/null 2>/dev/null; then \ @@ -50,6 +56,7 @@ python-dev-docs: $(MAKE) -C api/tools/python/latex ; else \ echo "Doxygen not installed; skipping python-dev-docs."; fi +.PHONY: man-pages man-pages: @if which $(POD2MAN) 1>/dev/null 2>/dev/null; then \ $(MAKE) $(DOC_MAN1) $(DOC_MAN5); fi @@ -64,6 +71,7 @@ man5/%.5: man/%.pod.5 Makefile $(POD2MAN) --release=$(VERSION) --name=`echo $@ | sed 's/^man5.//'| \ sed 's/.5//'` -s 5 -c "Xen" $< $@ +.PHONY: clean clean: rm -rf .word_count *.aux *.dvi *.bbl *.blg *.glo *.idx *~ rm -rf *.ilg *.log *.ind *.toc *.bak core @@ -72,6 +80,7 @@ clean: rm -rf man5 rm -rf man1 +.PHONY: install install: all rm -rf $(DESTDIR)$(pkgdocdir) $(INSTALL_DIR) $(DESTDIR)$(pkgdocdir) diff -r b54bba73936d -r 4d16755748eb extras/mini-os/Makefile --- a/extras/mini-os/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/extras/mini-os/Makefile Fri May 12 22:35:05 2006 +0100 @@ -37,8 +37,10 @@ HDRS := $(wildcard include/*.h) HDRS := $(wildcard include/*.h) HDRS += $(wildcard include/xen/*.h) +.PHONY: default default: $(TARGET) +.PHONY: links links: [ -e include/xen ] || ln -sf ../../../xen/include/public include/xen @@ -46,6 +48,7 @@ links: $(LD) -N -T minios-$(TARGET_ARCH).lds $(OBJS) -o $@.elf gzip -f -9 -c $@.elf >$@.gz +.PHONY: clean clean: find . -type f -name '*.o' | xargs rm -f rm -f *.o *~ core $(TARGET).elf $(TARGET).raw $(TARGET) $(TARGET).gz @@ -57,4 +60,12 @@ clean: %.o: %.S $(HDRS) Makefile $(CC) $(CFLAGS) -D__ASSEMBLY__ -c $< -o $@ +define all_sources + ( find . -follow -name SCCS -prune -o -name '*.[chS]' -print ) +endef +.PHONY: cscope +cscope: + $(all_sources) > cscope.files + cscope -k -b -q + diff -r b54bba73936d -r 4d16755748eb linux-2.6-xen-sparse/mkbuildtree --- a/linux-2.6-xen-sparse/mkbuildtree Fri May 12 15:49:11 2006 +0100 +++ b/linux-2.6-xen-sparse/mkbuildtree Fri May 12 22:35:05 2006 +0100 @@ -90,8 +90,8 @@ RS=$DESTPATH RS=$DESTPATH # Arch-specific pre-processing -if [ -x arch/${LINUX_ARCH}/xen-mkbuildtree-pre ]; then - arch/${LINUX_ARCH}/xen-mkbuildtree-pre +if [ -e arch/${LINUX_ARCH}/xen-mkbuildtree-pre ]; then + bash arch/${LINUX_ARCH}/xen-mkbuildtree-pre fi # Remove old copies of files and directories at the destination @@ -115,6 +115,6 @@ relative_lndir ../../../${RS}/../xen/inc # Arch-specific post-processing cd ${AD} -if [ -x arch/${LINUX_ARCH}/xen-mkbuildtree-post ]; then - arch/${LINUX_ARCH}/xen-mkbuildtree-post +if [ -e arch/${LINUX_ARCH}/xen-mkbuildtree-post ]; then + bash arch/${LINUX_ARCH}/xen-mkbuildtree-post fi diff -r b54bba73936d -r 4d16755748eb tools/Makefile --- a/tools/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/Makefile Fri May 12 22:35:05 2006 +0100 @@ -24,14 +24,14 @@ SUBDIRS += pygrub SUBDIRS += pygrub endif -.PHONY: all install clean check check_clean ioemu eioemuinstall ioemuclean - +.PHONY: all all: check @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ done $(MAKE) ioemu +.PHONY: install install: check @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ @@ -39,18 +39,22 @@ install: check $(MAKE) ioemuinstall $(INSTALL_DIR) -p $(DESTDIR)/var/xen/dump +.PHONY: clean clean: check_clean @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ done $(MAKE) ioemuclean +.PHONY: check check: $(MAKE) -C check +.PHONY: check_clean check_clean: $(MAKE) -C check clean +.PHONY: ioemu ioemuinstall ioemuclean ifndef XEN_NO_IOEMU ioemu ioemuinstall ioemuclean: [ -f ioemu/config-host.h ] || \ diff -r b54bba73936d -r 4d16755748eb tools/Rules.mk --- a/tools/Rules.mk Fri May 12 15:49:11 2006 +0100 +++ b/tools/Rules.mk Fri May 12 22:35:05 2006 +0100 @@ -23,6 +23,7 @@ CFLAGS += -D__XEN_INTERFACE_VERSION__=0x %.o: %.cc $(CC) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $< +.PHONY: mk-symlinks mk-symlinks: LINUX_ROOT=$(XEN_ROOT)/linux-2.6-xen-sparse mk-symlinks: mkdir -p xen diff -r b54bba73936d -r 4d16755748eb tools/blktap/Makefile --- a/tools/blktap/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/blktap/Makefile Fri May 12 22:35:05 2006 +0100 @@ -39,11 +39,13 @@ IBINS := LIB = libblktap.so libblktap.so.$(MAJOR) libblktap.so.$(MAJOR).$(MINOR) +.PHONY: all all: mk-symlinks libblktap.so #blkdump @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ done +.PHONY: install install: all $(INSTALL_DIR) -p $(DESTDIR)/usr/$(LIBDIR) $(INSTALL_DIR) -p $(DESTDIR)/usr/include @@ -54,12 +56,14 @@ install: all $(MAKE) -C $$subdir $@; \ done +.PHONY: clean clean: rm -rf *.a *.so *.o *.rpm $(LIB) *~ $(DEPS) xen TAGS blkdump @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ done +.PHONY: rpm rpm: all rm -rf staging mkdir staging @@ -82,6 +86,7 @@ blkdump: libblktap.so .PHONY: TAGS clean install mk-symlinks rpm +.PHONY: TAGS TAGS: etags -t $(SRCS) *.h diff -r b54bba73936d -r 4d16755748eb tools/blktap/parallax/Makefile --- a/tools/blktap/parallax/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/blktap/parallax/Makefile Fri May 12 22:35:05 2006 +0100 @@ -43,11 +43,14 @@ OBJS = $(patsubst %.c,%.o,$(SRCS)) OBJS = $(patsubst %.c,%.o,$(SRCS)) IBINS = parallax $(VDI_TOOLS) +.PHONY: all all: $(VDI_TOOLS) parallax blockstored +.PHONY: install install: all $(INSTALL_PROG) $(IBINS) $(DESTDIR)$(PARALLAX_INSTALL_DIR) +.PHONY: clean clean: rm -rf *.o *~ $(DEPS) xen TAGS $(VDI_TOOLS) parallax vdi_unittest @@ -57,5 +60,4 @@ parallax: $(PLX_SRCS) ${VDI_TOOLS}: %: %.c $(VDI_SRCS) $(CC) $(CFLAGS) -o $@ $@.c $(LDFLAGS) $(VDI_SRCS) -.PHONY: TAGS clean install rpm -include $(DEPS) diff -r b54bba73936d -r 4d16755748eb tools/blktap/ublkback/Makefile --- a/tools/blktap/ublkback/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/blktap/ublkback/Makefile Fri May 12 22:35:05 2006 +0100 @@ -21,12 +21,16 @@ DEPS = .*.d OBJS = $(patsubst %.c,%.o,$(SRCS)) +.PHONY: all all: $(IBIN) LINUX_ROOT := $(wildcard $(XEN_ROOT)/linux-2.6.*-xen-sparse) +.PHONY: install install: $(INSTALL_PROG) $(IBIN) $(DESTDIR)$(INSTALL_DIR) + +.PHONY: clean clean: rm -rf *.o*~ $(DEPS) xen TAGS $(IBIN) @@ -34,6 +38,4 @@ ublkback: $(CC) $(CFLAGS) -o ublkback -L$(XEN_LIBXC) -L. -L.. \ -lblktap -laio ublkback.c ublkbacklib.c -pg -.PHONY: clean install - -include $(DEPS) diff -r b54bba73936d -r 4d16755748eb tools/check/Makefile --- a/tools/check/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/check/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,7 +1,9 @@ +.PHONY: all all: build # Check this machine is OK for building on. +.PHONY: build build: ./chk build @@ -9,8 +11,10 @@ build: # DO NOT use this check from 'make install' in the parent # directory, as that target can be used to make an installable # copy rather than actually installing. +.PHONY: install install: ./chk install +.PHONY: clean clean: - ./chk clean \ No newline at end of file + ./chk clean diff -r b54bba73936d -r 4d16755748eb tools/console/Makefile --- a/tools/console/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/console/Makefile Fri May 12 22:35:05 2006 +0100 @@ -16,8 +16,10 @@ CFLAGS += -I $(XEN_XENSTORE) BIN = xenconsoled xenconsole +.PHONY: all all: $(BIN) +.PHONY: clean clean: $(RM) *.a *.so *.o *.rpm $(BIN) $(RM) client/*.o daemon/*.o @@ -30,6 +32,7 @@ xenconsole: $(patsubst %.c,%.o,$(wildcar $(CC) $(CFLAGS) $^ -o $@ -L$(XEN_LIBXC) -L$(XEN_XENSTORE) \ -lxenctrl -lxenstore +.PHONY: install install: $(BIN) $(INSTALL_DIR) -p $(DESTDIR)/$(DAEMON_INSTALL_DIR) $(INSTALL_PROG) xenconsoled $(DESTDIR)/$(DAEMON_INSTALL_DIR) diff -r b54bba73936d -r 4d16755748eb tools/console/testsuite/Makefile --- a/tools/console/testsuite/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/console/testsuite/Makefile Fri May 12 22:35:05 2006 +0100 @@ -3,10 +3,12 @@ include $(XEN_ROOT)/tools/Rules.mk LDFLAGS=-static +.PHONY: all all: console-dom0 console-domU procpipe console-dom0: console-dom0.o console-domU: console-domU.o procpipe: procpipe.o +.PHONY: clean clean:; $(RM) *.o console-domU console-dom0 procpipe diff -r b54bba73936d -r 4d16755748eb tools/debugger/gdb/gdbbuild --- a/tools/debugger/gdb/gdbbuild Fri May 12 15:49:11 2006 +0100 +++ b/tools/debugger/gdb/gdbbuild Fri May 12 22:35:05 2006 +0100 @@ -7,7 +7,7 @@ tar xjf gdb-6.2.1.tar.bz2 tar xjf gdb-6.2.1.tar.bz2 cd gdb-6.2.1-xen-sparse -./mkbuildtree ../gdb-6.2.1 +bash ./mkbuildtree ../gdb-6.2.1 cd .. mkdir gdb-6.2.1-linux-i386-xen diff -r b54bba73936d -r 4d16755748eb tools/debugger/libxendebug/Makefile --- a/tools/debugger/libxendebug/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/debugger/libxendebug/Makefile Fri May 12 22:35:05 2006 +0100 @@ -26,10 +26,14 @@ LIB := libxendebug.a libxendebug.so LIB := libxendebug.a libxendebug.so LIB += libxendebug.so.$(MAJOR) libxendebug.so.$(MAJOR).$(MINOR) +.PHONY: all all: build + +.PHONY: build build: $(MAKE) $(LIB) +.PHONY: install install: build [ -d $(DESTDIR)/usr/$(LIBDIR) ] || $(INSTALL_DIR) $(DESTDIR)/usr/$(LIBDIR) [ -d $(DESTDIR)/usr/include ] || $(INSTALL_DIR) $(DESTDIR)/usr/include @@ -39,14 +43,15 @@ install: build ln -sf libxendebug.so.$(MAJOR) $(DESTDIR)/usr/$(LIBDIR)/libxendebug.so $(INSTALL_DATA) xendebug.h $(DESTDIR)/usr/include -.PHONY: TAGS clean rpm install all - +.PHONY: TAGS TAGS: etags -t $(SRCS) *.h +.PHONY: clean clean: rm -rf *.a *.so* *.o *.opic *.rpm $(LIB) *~ $(DEPS) xen +.PHONY: rpm rpm: build rm -rf staging mkdir staging diff -r b54bba73936d -r 4d16755748eb tools/debugger/pdb/Makefile --- a/tools/debugger/pdb/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/debugger/pdb/Makefile Fri May 12 22:35:05 2006 +0100 @@ -33,6 +33,7 @@ LIBS += unix str # bc = byte-code, dc = debug byte-code # patches = patch linux domU source code +.PHONY: all all : dc SOURCES += pdb_caml_xc.c @@ -51,5 +52,6 @@ include $(OCAMLMAKEFILE) include $(OCAMLMAKEFILE) PATCHDIR = ./linux-2.6-patches +.PHONY: patches patches : make -C $(PATCHDIR) patches diff -r b54bba73936d -r 4d16755748eb tools/debugger/pdb/linux-2.6-module/Makefile --- a/tools/debugger/pdb/linux-2.6-module/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/debugger/pdb/linux-2.6-module/Makefile Fri May 12 22:35:05 2006 +0100 @@ -10,10 +10,12 @@ CFLAGS += -Wall CFLAGS += -Wall CFLAGS += -Werror +.PHONY: module module : # make KBUILD_VERBOSE=1 ARCH=xen -C $(KDIR) M=$(PWD) modules make ARCH=xen -C $(KDIR) M=$(PWD) modules +.PHONY: clean clean : make -C $(KDIR) M=$(PWD) clean diff -r b54bba73936d -r 4d16755748eb tools/debugger/pdb/linux-2.6-patches/Makefile --- a/tools/debugger/pdb/linux-2.6-patches/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/debugger/pdb/linux-2.6-patches/Makefile Fri May 12 22:35:05 2006 +0100 @@ -3,6 +3,7 @@ KDIR = $(XEN_ROOT)/$(LINUX_DIR) KDIR = $(XEN_ROOT)/$(LINUX_DIR) PATCH_DIR = $(CURDIR) +.PHONY: patches patches : patches-done patches-done : diff -r b54bba73936d -r 4d16755748eb tools/examples/Makefile --- a/tools/examples/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/examples/Makefile Fri May 12 22:35:05 2006 +0100 @@ -50,11 +50,16 @@ endif endif endif +.PHONY: all all: + +.PHONY: build build: +.PHONY: install install: all install-initd install-configs install-scripts $(HOTPLUGS) +.PHONY: install-initd install-initd: [ -d $(DESTDIR)/etc/init.d ] || $(INSTALL_DIR) $(DESTDIR)/etc/init.d [ -d $(DESTDIR)/etc/sysconfig ] || $(INSTALL_DIR) $(DESTDIR)/etc/sysconfig @@ -62,6 +67,7 @@ install-initd: $(INSTALL_PROG) $(XENDOMAINS_INITD) $(DESTDIR)/etc/init.d $(INSTALL_PROG) $(XENDOMAINS_SYSCONFIG) $(DESTDIR)/etc/sysconfig/xendomains +.PHONY: install-configs install-configs: $(XEN_CONFIGS) [ -d $(DESTDIR)$(XEN_CONFIG_DIR) ] || \ $(INSTALL_DIR) $(DESTDIR)$(XEN_CONFIG_DIR) @@ -72,6 +78,7 @@ install-configs: $(XEN_CONFIGS) $(INSTALL_DATA) $$i $(DESTDIR)$(XEN_CONFIG_DIR); \ done +.PHONY: install-scripts install-scripts: [ -d $(DESTDIR)$(XEN_SCRIPT_DIR) ] || \ $(INSTALL_DIR) $(DESTDIR)$(XEN_SCRIPT_DIR) @@ -84,6 +91,7 @@ install-scripts: $(INSTALL_DATA) $$i $(DESTDIR)$(XEN_SCRIPT_DIR); \ done +.PHONY: install-hotplug install-hotplug: [ -d $(DESTDIR)$(XEN_HOTPLUG_DIR) ] || \ $(INSTALL_DIR) $(DESTDIR)$(XEN_HOTPLUG_DIR) @@ -92,6 +100,7 @@ install-hotplug: $(INSTALL_PROG) $$i $(DESTDIR)$(XEN_HOTPLUG_DIR); \ done +.PHONY: install-udev install-udev: [ -d $(DESTDIR)$(UDEV_RULES_DIR) ] || \ $(INSTALL_DIR) $(DESTDIR)$(UDEV_RULES_DIR)/rules.d @@ -102,4 +111,5 @@ install-udev: ln -sf ../$$i . ) \ done +.PHONY: clean clean: diff -r b54bba73936d -r 4d16755748eb tools/firmware/Makefile --- a/tools/firmware/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/firmware/Makefile Fri May 12 22:35:05 2006 +0100 @@ -13,8 +13,7 @@ SUBDIRS += vmxassist SUBDIRS += vmxassist SUBDIRS += hvmloader -.PHONY: all install clean - +.PHONY: all all: @set -e; if ! `which bcc 1>/dev/null 2>/dev/null`; then \ echo "***********************************************************"; \ @@ -28,10 +27,12 @@ all: fi +.PHONY: install install: all [ -d $(INSTALL_DIR) ] || install -d -m0755 $(INSTALL_DIR) [ ! -e $(TARGET) ] || install -m0644 $(TARGET) $(INSTALL_DIR) +.PHONY: clean clean: @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ diff -r b54bba73936d -r 4d16755748eb tools/firmware/acpi/Makefile --- a/tools/firmware/acpi/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/firmware/acpi/Makefile Fri May 12 22:35:05 2006 +0100 @@ -33,6 +33,7 @@ IASL_URL=http://developer.intel.com/tech IASL_URL=http://developer.intel.com/technology/iapc/acpi/downloads/$(IASL_VER).tar.gz vpath iasl $(PATH) +.PHONY: all all:$(ACPI_BIN) acpi_dsdt.c:acpi_dsdt.asl @@ -42,6 +43,7 @@ acpi_dsdt.c:acpi_dsdt.asl echo "int DsdtLen=sizeof(AmlCode);" >> acpi_dsdt.c rm *.aml +.PHONY: iasl iasl: @echo @echo "ACPI ASL compiler(iasl) is needed" @@ -60,8 +62,10 @@ iasl: $(ACPI_BIN):$(ACPI_GEN) ./$(ACPI_GEN) $(ACPI_BIN) +.PHONY: clean clean: rm -rf *.o $(ACPI_GEN) $(ACPI_BIN) $(IASL_VER) rm -rf $(IASL_VER).tar.gz +.PHONY: install install: all diff -r b54bba73936d -r 4d16755748eb tools/firmware/hvmloader/Makefile --- a/tools/firmware/hvmloader/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/firmware/hvmloader/Makefile Fri May 12 22:35:05 2006 +0100 @@ -42,6 +42,7 @@ CFLAGS += $(DEFINES) -I. $(XENINC) -fno CFLAGS += $(DEFINES) -I. $(XENINC) -fno-builtin -O2 -msoft-float LDFLAGS = -m32 -nostdlib -Wl,-N -Wl,-Ttext -Wl,$(LOADADDR) +.PHONY: all all: hvmloader hvmloader: roms.h hvmloader.c acpi_madt.c @@ -57,6 +58,7 @@ roms.h: ../rombios/BIOS-bochs-latest ../ ./mkhex vmxassist ../vmxassist/vmxassist.bin >> roms.h ./mkhex acpi ../acpi/acpi.bin >> roms.h +.PHONY: clean clean: rm -f roms.h acpi.h rm -f hvmloader hvmloader.tmp hvmloader.o $(OBJECTS) diff -r b54bba73936d -r 4d16755748eb tools/firmware/rombios/Makefile --- a/tools/firmware/rombios/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/firmware/rombios/Makefile Fri May 12 22:35:05 2006 +0100 @@ -3,10 +3,13 @@ BIOS_BUILDS = BIOS-bochs-latest #BIOS_BUILDS += BIOS-bochs-4-processors #BIOS_BUILDS += BIOS-bochs-8-processors +.PHONY: all all: bios +.PHONY: bios bios: biossums ${BIOS_BUILDS} +.PHONY: clean clean: rm -f *.o *.a *.s rombios.bin _rombios*_.c rm -f as86-sym.txt ld86-sym.txt diff -r b54bba73936d -r 4d16755748eb tools/firmware/vgabios/Makefile --- a/tools/firmware/vgabios/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/firmware/vgabios/Makefile Fri May 12 22:35:05 2006 +0100 @@ -10,17 +10,22 @@ RELVERS = `pwd | sed "s-.*/--" | sed "s/ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\"" +.PHONY: all all: bios cirrus-bios +.PHONY: bios bios: biossums vgabios.bin vgabios.debug.bin +.PHONY: cirrus-bios cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin +.PHONY: clean clean: rm -f biossums *.o *.s *.ld86 \ temp.awk.* vgabios*.orig _vgabios_* _vgabios-debug_* core vgabios*.bin vgabios*.txt $(RELEASE).bin *.bak rm -f VGABIOS-lgpl-latest*.bin +.PHONY: release release: VGABIOS_VERS=\"-DVGABIOS_VERS=\\\"$(RELVERS)\\\"\" make bios cirrus-bios /bin/rm -f *.o *.s *.ld86 \ diff -r b54bba73936d -r 4d16755748eb tools/firmware/vmxassist/Makefile --- a/tools/firmware/vmxassist/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/firmware/vmxassist/Makefile Fri May 12 22:35:05 2006 +0100 @@ -43,6 +43,7 @@ LDFLAGS = -m elf_i386 OBJECTS = head.o trap.o vm86.o setup.o util.o +.PHONY: all all: vmxassist.bin vmxassist.bin: vmxassist.ld $(OBJECTS) @@ -74,6 +75,7 @@ gen: vm86.h gen.c gen: vm86.h gen.c $(HOSTCC) $(HOSTCFLAGS) -I. $(XENINC) -o gen gen.c +.PHONY: clean clean: rm -f vmxassist vmxassist.tmp vmxassist.bin vmxassist.run vmxassist.sym head.s rm -f $(OBJECTS) diff -r b54bba73936d -r 4d16755748eb tools/guest-headers/Makefile --- a/tools/guest-headers/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/guest-headers/Makefile Fri May 12 22:35:05 2006 +0100 @@ -2,12 +2,16 @@ XEN_ROOT=../.. XEN_ROOT=../.. linuxsparsetree = $(XEN_ROOT)/linux-2.6-xen-sparse +.PHONY: all all: +.PHONY: check check: +.PHONY: install install: mkdir -p $(DESTDIR)/usr/include/xen/linux install -m0644 $(linuxsparsetree)/include/xen/public/*.h $(DESTDIR)/usr/include/xen/linux +.PHONY: clean clean: diff -r b54bba73936d -r 4d16755748eb tools/ioemu/Makefile --- a/tools/ioemu/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/ioemu/Makefile Fri May 12 22:35:05 2006 +0100 @@ -19,6 +19,7 @@ endif endif #DOCS=qemu-doc.html qemu-tech.html qemu.1 +.PHONY: all all: $(DOCS) HEADERS for d in $(TARGET_DIRS); do \ $(MAKE) -C $$d $@ || exit 1 ; \ @@ -30,6 +31,7 @@ dyngen$(EXESUF): dyngen.c dyngen$(EXESUF): dyngen.c $(HOST_CC) $(CFLAGS) $(DEFINES) -o $@ $^ +.PHONY: clean clean: # avoid old build problems by removing potentially incorrect old files rm -f config.mak config.h op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h gen-op-arm.h @@ -41,6 +43,7 @@ clean: rm -f config-host.mak config-host.h rm -f keysym_adapter_sdl.h keysym_adapter_vnc.h +.PHONY: distclean distclean: clean rm -f config-host.mak config-host.h rm -f keysym_adapter_sdl.h keysym_adapter_vnc.h @@ -52,6 +55,7 @@ ar de en-us fi fr-be hr ar de en-us fi fr-be hr it lv nl pl ru th \ common de-ch es fo fr-ca hu ja mk nl-be pt sl tr +.PHONY: install install: all mkdir -p "$(bindir)" mkdir -p "$(DESTDIR)/$(datadir)" @@ -62,9 +66,11 @@ install: all done # various test targets +.PHONY: test speed test2 test speed test2: all $(MAKE) -C tests $@ +.PHONY: TAGS TAGS: etags *.[ch] tests/*.[ch] @@ -79,6 +85,7 @@ FILE=qemu-$(shell cat VERSION) FILE=qemu-$(shell cat VERSION) # tar release (use 'make -k tar' on a checkouted tree) +.PHONY: tar tar: rm -rf /tmp/$(FILE) cp -r . /tmp/$(FILE) @@ -86,6 +93,7 @@ tar: rm -rf /tmp/$(FILE) # generate a binary distribution +.PHONY: tarbin tarbin: ( cd $(DESTDIR) ; tar zcvf ~/qemu-$(VERSION)-i386.tar.gz \ $(DESTDIR)/$(bindir)/qemu $(DESTDIR)/$(bindir)/qemu-fast \ @@ -100,6 +108,7 @@ include .depend include .depend endif +.PHONY: HEADERS HEADERS: ifdef CONFIG_SDL diff -r b54bba73936d -r 4d16755748eb tools/ioemu/target-i386-dm/Makefile --- a/tools/ioemu/target-i386-dm/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/ioemu/target-i386-dm/Makefile Fri May 12 22:35:05 2006 +0100 @@ -329,6 +329,7 @@ sdlaudio.o: sdlaudio.c sdlaudio.o: sdlaudio.c $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< +.PHONY: depend depend: $(SRCS) $(CC) -MM $(CFLAGS) $(DEFINES) $^ 1>.depend @@ -382,12 +383,15 @@ mixeng.o: mixeng.c mixeng.h mixeng_templ %.o: %.S $(CC) $(DEFINES) -c -o $@ $< +.PHONY: clean clean: rm -rf *.o *.a *~ $(PROGS) gen-op.h opc.h op.h nwfpe slirp rm -rf config.mak config.h +.PHONY: distclean distclean: clean +.PHONY: install install: all if [ ! -d $(INSTALL_DIR) ];then mkdir -p $(INSTALL_DIR);fi if [ ! -d $(DESTDIR)$(configdir) ];then mkdir -p $(DESTDIR)$(configdir);fi diff -r b54bba73936d -r 4d16755748eb tools/libxc/Makefile --- a/tools/libxc/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/libxc/Makefile Fri May 12 22:35:05 2006 +0100 @@ -67,10 +67,14 @@ LIB += libxenguest.a LIB += libxenguest.a LIB += libxenguest.so libxenguest.so.$(MAJOR) libxenguest.so.$(MAJOR).$(MINOR) +.PHONY: all all: build + +.PHONY: build build: check-for-zlib mk-symlinks $(MAKE) $(LIB) +.PHONY: check-for-zlib check-for-zlib: @if [ ! -e /usr/include/zlib.h ]; then \ echo "***********************************************************"; \ @@ -79,6 +83,7 @@ check-for-zlib: false; \ fi +.PHONY: install install: build [ -d $(DESTDIR)/usr/$(LIBDIR) ] || $(INSTALL_DIR) $(DESTDIR)/usr/$(LIBDIR) [ -d $(DESTDIR)/usr/include ] || $(INSTALL_DIR) $(DESTDIR)/usr/include @@ -94,14 +99,15 @@ install: build ln -sf libxenguest.so.$(MAJOR) $(DESTDIR)/usr/$(LIBDIR)/libxenguest.so $(INSTALL_DATA) xenguest.h $(DESTDIR)/usr/include -.PHONY: TAGS clean rpm install all - +.PHONY: TAGS TAGS: etags -t *.c *.h +.PHONY: clean clean: rm -rf *.a *.so* *.o *.opic *.rpm $(LIB) *~ $(DEPS) xen +.PHONY: rpm rpm: build rm -rf staging mkdir staging diff -r b54bba73936d -r 4d16755748eb tools/misc/Makefile --- a/tools/misc/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/misc/Makefile Fri May 12 22:35:05 2006 +0100 @@ -18,7 +18,10 @@ INSTALL_BIN = $(TARGETS) xencons INSTALL_BIN = $(TARGETS) xencons INSTALL_SBIN = netfix xm xen-bugtool xend xenperf +.PHONY: all all: build + +.PHONY: build build: $(TARGETS) $(MAKE) -C miniterm $(MAKE) -C cpuperf @@ -27,6 +30,7 @@ endif endif $(MAKE) -C lomount +.PHONY: install install: build [ -d $(DESTDIR)/usr/bin ] || $(INSTALL_DIR) $(DESTDIR)/usr/bin [ -d $(DESTDIR)/usr/sbin ] || $(INSTALL_DIR) $(DESTDIR)/usr/sbin @@ -39,6 +43,7 @@ install: build # Likewise mbootpack # $(MAKE) -C mbootpack install +.PHONY: clean clean: $(RM) *.o $(TARGETS) *~ $(MAKE) -C miniterm clean diff -r b54bba73936d -r 4d16755748eb tools/misc/cpuperf/Makefile --- a/tools/misc/cpuperf/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/misc/cpuperf/Makefile Fri May 12 22:35:05 2006 +0100 @@ -26,8 +26,10 @@ INSTALL_BIN = $(TARGETS) INSTALL_BIN = $(TARGETS) +.PHONY: all all: $(TARGETS) +.PHONY: clean clean: $(RM) *.o $(TARGETS) @@ -40,6 +42,7 @@ cpuperf-perfcntr: cpuperf.c $(HDRS) Make cpuperf-perfcntr: cpuperf.c $(HDRS) Makefile $(CC) $(CFLAGS) -DPERFCNTR -o $@ $< +.PHONY: install install: all $(INSTALL_PROG) $(INSTALL_BIN) $(DESTDIR)/usr/bin diff -r b54bba73936d -r 4d16755748eb tools/misc/lomount/Makefile --- a/tools/misc/lomount/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/misc/lomount/Makefile Fri May 12 22:35:05 2006 +0100 @@ -13,12 +13,17 @@ OBJS = $(patsubst %.c,%.o,$(wildcard BIN = lomount +.PHONY: all all: build + +.PHONY: build build: $(BIN) +.PHONY: install install: build $(INSTALL_PROG) $(BIN) $(SCRIPTS) $(DESTDIR)/usr/bin +.PHONY: clean clean: $(RM) *.a *.so *.o *.rpm $(BIN) diff -r b54bba73936d -r 4d16755748eb tools/misc/mbootpack/Makefile --- a/tools/misc/mbootpack/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/misc/mbootpack/Makefile Fri May 12 22:35:05 2006 +0100 @@ -8,9 +8,13 @@ XEN_ROOT=../../.. XEN_ROOT=../../.. include $(XEN_ROOT)/tools/Rules.mk +.PHONY: all all: build + +.PHONY: build build: mbootpack +.PHONY: install install: build $(INSTALL_PROG) mbootpack $(DESTDIR)/usr/bin @@ -33,6 +37,7 @@ mbootpack: $(OBJS) mbootpack: $(OBJS) $(HOSTCC) -o $@ $(filter-out %.a, $^) +.PHONY: clean clean: $(RM) mbootpack *.o $(DEPS) bootsect setup bzimage_header.c bin2c @@ -60,7 +65,6 @@ buildimage.c: bzimage_header.c %.o: %.c $(HOSTCC) $(DEPFLAGS) $(CFLAGS) $(INCS) $(DEFS) -c $< -o $@ -.PHONY: all clean gdb .PRECIOUS: $(OBJS) $(OBJS:.o=.c) $(DEPS) .SUFFIXES: diff -r b54bba73936d -r 4d16755748eb tools/misc/miniterm/Makefile --- a/tools/misc/miniterm/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/misc/miniterm/Makefile Fri May 12 22:35:05 2006 +0100 @@ -7,12 +7,15 @@ INSTALL_DIR = $(INSTALL) -d -m0755 TARGET = miniterm +.PHONY: all all: $(TARGET) +.PHONY: install install: all [ -d $(DESTDIR)/usr/bin ] || $(INSTALL_DIR) $(DESTDIR)/usr/bin $(INSTALL_PROG) $(TARGET) $(DESTDIR)/usr/bin +.PHONY: clean clean: $(RM) *.o $(TARGET) *~ diff -r b54bba73936d -r 4d16755748eb tools/misc/nsplitd/Makefile --- a/tools/misc/nsplitd/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/misc/nsplitd/Makefile Fri May 12 22:35:05 2006 +0100 @@ -8,10 +8,13 @@ OBJS = $(patsubst %.c,%.o,$(wildcard TARGET = nsplitd +.PHONY: all all: $(TARGET) +.PHONY: install install: all +.PHONY: clean clean: $(RM) *.o $(TARGET) *~ diff -r b54bba73936d -r 4d16755748eb tools/misc/xen-clone --- a/tools/misc/xen-clone Fri May 12 15:49:11 2006 +0100 +++ b/tools/misc/xen-clone Fri May 12 22:35:05 2006 +0100 @@ -113,7 +113,7 @@ else # Turn linux into xenolinux then build it cd xenolinux-${LINUX_VER}-sparse - ./mkbuildtree ../../linux-${LINUX_VER} + bash ./mkbuildtree ../../linux-${LINUX_VER} cd ../.. mv linux-${LINUX_VER} xenolinux-${LINUX_VER} cd xenolinux-${LINUX_VER} diff -r b54bba73936d -r 4d16755748eb tools/pygrub/Makefile --- a/tools/pygrub/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/pygrub/Makefile Fri May 12 22:35:05 2006 +0100 @@ -2,10 +2,13 @@ XEN_ROOT = ../.. XEN_ROOT = ../.. include $(XEN_ROOT)/tools/Rules.mk +.PHONY: all all: build +.PHONY: build build: CFLAGS="$(CFLAGS)" python setup.py build +.PHONY: install ifndef XEN_PYTHON_NATIVE_INSTALL install: all CFLAGS="$(CFLAGS)" python setup.py install --home="$(DESTDIR)/usr" --prefix="" @@ -14,5 +17,6 @@ install: all CFLAGS="$(CFLAGS)" python setup.py install --root="$(DESTDIR)" endif +.PHONY: clean clean: rm -rf build tmp *.pyc *.pyo *.o *.a *~ diff -r b54bba73936d -r 4d16755748eb tools/python/Makefile --- a/tools/python/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/python/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,12 +1,14 @@ XEN_ROOT = ../.. XEN_ROOT = ../.. include $(XEN_ROOT)/tools/Rules.mk -.PHONY: all build install clean +.PHONY: all +all: build -all: build +.PHONY: build build: CFLAGS="$(CFLAGS)" python setup.py build +.PHONY: install ifndef XEN_PYTHON_NATIVE_INSTALL install: all CFLAGS="$(CFLAGS)" python setup.py install --home="$(DESTDIR)/usr" --prefix="" --force @@ -15,8 +17,10 @@ install: all CFLAGS="$(CFLAGS)" python setup.py install --root="$(DESTDIR)" --force endif +.PHONY: test test: export LD_LIBRARY_PATH=$$(readlink -f ../libxc):$$(readlink -f ../xenstore); python test.py -b -u +.PHONY: clean clean: rm -rf build *.pyc *.pyo *.o *.a *~ diff -r b54bba73936d -r 4d16755748eb tools/security/Makefile --- a/tools/security/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/security/Makefile Fri May 12 22:35:05 2006 +0100 @@ -54,8 +54,10 @@ ACM_LABEL_SUFFIX = security_label_templ ACM_LABEL_SUFFIX = security_label_template.xml ifeq ($(ACM_SECURITY),y) +.PHONY: all all: build +.PHONY: install install: all $(ACM_CONFIG_FILE) $(INSTALL_DIR) -p $(DESTDIR)/usr/sbin $(INSTALL_PROG) -p $(ACM_INST_TOOLS) $(DESTDIR)/usr/sbin @@ -79,11 +81,14 @@ else python python/setup.py install --root="$(DESTDIR)" endif else +.PHONY: all all: +.PHONY: install install: endif +.PHONY: build build: mk-symlinks $(ACM_INST_TOOLS) $(ACM_NOINST_TOOLS) python python/setup.py build chmod 700 $(ACM_SCRIPTS) @@ -100,6 +105,7 @@ xensec_gen: xensec_gen.py xensec_gen: xensec_gen.py cp -f $^ $@ +.PHONY: clean clean: $(RM) $(ACM_INST_TOOLS) $(ACM_NOINST_TOOLS) $(RM) $(ACM_OBJS) @@ -107,8 +113,10 @@ clean: $(RM) -r xen $(RM) -r build +.PHONY: mrproper mrproper: clean +.PHONY: boot_install boot_install: install $(ACM_SCRIPT_DIR)/updategrub.sh $(POLICY) $(KERNEL_VERSION) diff -r b54bba73936d -r 4d16755748eb tools/sv/Makefile --- a/tools/sv/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/sv/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,2 +1,3 @@ +.PHONY: all all: diff -r b54bba73936d -r 4d16755748eb tools/tests/Makefile --- a/tools/tests/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/tests/Makefile Fri May 12 22:35:05 2006 +0100 @@ -6,14 +6,17 @@ TARGET := test_x86_emulator HOSTCFLAGS += -D__TEST_HARNESS__ +.PHONY: all all: $(TARGET) $(TARGET): x86_emulate.o test_x86_emulator.o $(HOSTCC) -o $@ $^ +.PHONY: clean clean: rm -rf $(TARGET) *.o *~ core +.PHONY: install install: x86_emulate.o: $(XEN_ROOT)/xen/arch/x86/x86_emulate.c diff -r b54bba73936d -r 4d16755748eb tools/vnet/Makefile --- a/tools/vnet/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vnet/Makefile Fri May 12 22:35:05 2006 +0100 @@ -4,10 +4,6 @@ export VNET_ROOT = $(shell pwd) export VNET_ROOT = $(shell pwd) include $(VNET_ROOT)/Make.env endif - -.PHONY: all compile install dist clean pristine -.PHONY: gc-all gc-install gc-clean -.PHONY: help SUBDIRS:= SUBDIRS+= examples @@ -17,11 +13,13 @@ SUBDIRS+= vnetd SUBDIRS+= vnetd SUBDIRS+= vnet-module +.PHONY: all all: compile gc.tar.gz: wget http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/$@ +.PHONY: gc gc: gc.tar.gz tar xfz gc.tar.gz ln -sf gc?.? gc @@ -31,10 +29,13 @@ gc: gc.tar.gz make -C gc DESTDIR="" make -C gc install +.PHONY: gc-all gc-all: $(GC_LIB_A) +.PHONY: gc-install gc-install: +.PHONY: gc-clean gc-clean: -@$(RM) -r gc?.? gc @@ -50,19 +51,25 @@ subtgt = $(patsubst %,%-$(1),$(SUBDIRS)) %-install: $(call submak,install) +.PHONY: compile compile: $(call subtgt,all) +.PHONY: install install: DESTDIR= install: dist +.PHONY: dist dist: compile $(call subtgt,install) +.PHONY: clean clean: $(call subtgt,clean) -@$(RM) -r build +.PHONY: pristine pristine: clean -@$(RM) gc.tar.gz +.PHONY: help help: @echo 'Cleaning targets:' @echo ' clean - clean subdirs and remove the build dir' diff -r b54bba73936d -r 4d16755748eb tools/vnet/doc/Makefile --- a/tools/vnet/doc/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vnet/doc/Makefile Fri May 12 22:35:05 2006 +0100 @@ -23,8 +23,10 @@ DOC_MAN5 := $(patsubst man/%.pod.5,man5/ .PHONY: all man clean install +.PHONY: all all: man +.PHONY: man man: @if which $(POD2MAN) 1>/dev/null 2>/dev/null; then \ $(MAKE) $(DOC_MAN1) $(DOC_MAN5); fi @@ -39,10 +41,12 @@ man5/%.5: man/%.pod.5 Makefile $(POD2MAN) --release=$(VERSION) --name=`echo $@ | sed 's/^man5.//'| \ sed 's/.5//'` -s 5 -c $(HEADER) $< $@ +.PHONY: clean clean: @$(RM) -rf man5 @$(RM) -rf man1 +.PHONY: install install: all $(INSTALL_DIR) $(DESTDIR)$(MAN_DIR) $(CP) -dR man1 $(DESTDIR)$(MAN_DIR) diff -r b54bba73936d -r 4d16755748eb tools/vnet/examples/Makefile --- a/tools/vnet/examples/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vnet/examples/Makefile Fri May 12 22:35:05 2006 +0100 @@ -7,13 +7,14 @@ INSTALL_DIR = $(INSTALL) -d -m0755 XEN_SCRIPT_DIR = $(DESTDIR)/etc/xen/scripts -.PHONY: all install clean - +.PHONY: all all: +.PHONY: install install: $(INSTALL_DIR) $(XEN_SCRIPT_DIR) $(INSTALL_PROG) network-vnet $(XEN_SCRIPT_DIR) $(INSTALL_PROG) vnet-insert $(XEN_SCRIPT_DIR) -clean: \ No newline at end of file +.PHONY: clean +clean: diff -r b54bba73936d -r 4d16755748eb tools/vnet/libxutil/Makefile --- a/tools/vnet/libxutil/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vnet/libxutil/Makefile Fri May 12 22:35:05 2006 +0100 @@ -42,8 +42,10 @@ LIB += libxutil.so.$(MAJOR).$(MINOR LIB += libxutil.so.$(MAJOR).$(MINOR) LIB += libxutil.a +.PHONY: all all: build +.PHONY: build build: #check-for-zlib $(MAKE) $(LIB) @@ -61,6 +63,7 @@ libxutil.a: $(LIB_OBJS) libxutil.a: $(LIB_OBJS) $(AR) rc $@ $^ +.PHONY: check-for-zlib check-for-zlib: @if [ ! -e /usr/include/zlib.h ]; then \ echo "***********************************************************"; \ @@ -69,6 +72,7 @@ check-for-zlib: false; \ fi +.PHONY: install install: build [ -d $(DESTDIR)/usr/$(LIBDIR) ] || $(INSTALL_DIR) -p $(DESTDIR)/usr/$(LIBDIR) $(INSTALL_PROG) libxutil.so.$(MAJOR).$(MINOR) $(DESTDIR)/usr/$(LIBDIR) @@ -76,6 +80,7 @@ install: build ln -sf libxutil.so.$(MAJOR).$(MINOR) $(DESTDIR)/usr/$(LIBDIR)/libxutil.so.$(MAJOR) ln -sf libxutil.so.$(MAJOR) $(DESTDIR)/usr/$(LIBDIR)/libxutil.so +.PHONY: clean clean: -@$(RM) *.a *.so* *.o *.opic *.rpm -@$(RM) *~ diff -r b54bba73936d -r 4d16755748eb tools/vnet/scripts/Makefile --- a/tools/vnet/scripts/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vnet/scripts/Makefile Fri May 12 22:35:05 2006 +0100 @@ -7,12 +7,13 @@ INSTALL_DIR = $(INSTALL) -d -m0755 SBIN_DIR = $(DESTDIR)/usr/sbin -.PHONY: all install clean - +.PHONY: all all: +.PHONY: install install: $(INSTALL_DIR) $(SBIN_DIR) $(INSTALL_PROG) vn $(SBIN_DIR) -clean: \ No newline at end of file +.PHONY: clean +clean: diff -r b54bba73936d -r 4d16755748eb tools/vnet/vnetd/Makefile --- a/tools/vnet/vnetd/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vnet/vnetd/Makefile Fri May 12 22:35:05 2006 +0100 @@ -19,6 +19,7 @@ VNET_ROOT = $(shell cd .. && pwd) VNET_ROOT = $(shell cd .. && pwd) include $(VNET_ROOT)/Make.env +.PHONY: all all: vnetd #---------------------------------------------------------------------------- @@ -104,10 +105,12 @@ vnetd: $(VNETD_OBJ) vnetd: $(VNETD_OBJ) $(CC) $(CFLAGS) -o $@ $^ $(VNETD_LIBS) -ldl -lpthread +.PHONY: install install: vnetd mkdir -p $(DESTDIR)$(VNETD_INSTALL_DIR) install -m 0755 vnetd $(DESTDIR)$(VNETD_INSTALL_DIR) +.PHONY: clean clean: -@$(RM) *.a *.o *~ -@$(RM) vnetd diff -r b54bba73936d -r 4d16755748eb tools/vtpm/Makefile --- a/tools/vtpm/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vtpm/Makefile Fri May 12 22:35:05 2006 +0100 @@ -13,14 +13,18 @@ TPM_EMULATOR_TARFILE = tpm_emulator-0.2b GMP_HEADER = /usr/include/gmp.h +.PHONY: all all: build +.PHONY: build build: $(TPM_EMULATOR_DIR) $(VTPM_DIR) build_sub +.PHONY: install install: build $(MAKE) -C $(TPM_EMULATOR_DIR) $@ $(MAKE) -C $(VTPM_DIR) $@ +.PHONY: clean clean: @if [ -d $(TPM_EMULATOR_DIR) ]; \ then $(MAKE) -C $(TPM_EMULATOR_DIR) clean; \ @@ -29,6 +33,7 @@ clean: then $(MAKE) -C $(VTPM_DIR) clean; \ fi +.PHONY: mrproper mrproper: rm -f $(TPM_EMULATOR_TARFILE) rm -rf $(TPM_EMULATOR_DIR) @@ -58,6 +63,7 @@ mrproper: patch -p1 < ../tpm_emulator-0.2b-x86_64.patch; \ patch -p1 <../vtpm.patch +.PHONY: build_sub build_sub: @if [ -e $(GMP_HEADER) ]; then \ $(MAKE) -C $(VTPM_DIR); \ diff -r b54bba73936d -r 4d16755748eb tools/vtpm_manager/Makefile --- a/tools/vtpm_manager/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vtpm_manager/Makefile Fri May 12 22:35:05 2006 +0100 @@ -6,8 +6,10 @@ SUBDIRS = crypto tcs util manager SUBDIRS = crypto tcs util manager OPENSSL_HEADER = /usr/include/openssl/crypto.h +.PHONY: all all: build +.PHONY: build build: @if [ -e $(OPENSSL_HEADER) ]; then \ @set -e; for subdir in $(SUBDIRS); do \ @@ -17,17 +19,20 @@ build: echo "*** Cannot build vtpm_manager: OpenSSL developement files missing."; \ fi +.PHONY: install install: build @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ done +.PHONY: clean clean: @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ done +.PHONY: mrproper mrproper: @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ diff -r b54bba73936d -r 4d16755748eb tools/vtpm_manager/crypto/Makefile --- a/tools/vtpm_manager/crypto/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vtpm_manager/crypto/Makefile Fri May 12 22:35:05 2006 +0100 @@ -3,15 +3,20 @@ include $(XEN_ROOT)/tools/vtpm_manager/R BIN = libtcpaCrypto.a +.PHONY: all all: build +.PHONY: build build: $(BIN) +.PHONY: install install: build +.PHONY: clean clean: rm -f *.a *.so *.o *.rpm $(DEP_FILES) +.PHONY: mrproper mrproper: clean rm -f *~ diff -r b54bba73936d -r 4d16755748eb tools/vtpm_manager/manager/Makefile --- a/tools/vtpm_manager/manager/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vtpm_manager/manager/Makefile Fri May 12 22:35:05 2006 +0100 @@ -3,19 +3,24 @@ include $(XEN_ROOT)/tools/vtpm_manager/R BIN = vtpm_managerd +.PHONY: all all: build +.PHONY: build build: $(BIN) +.PHONY: install install: build if [ ! -d "$(DESTDIR)/var/vtpm/fifos" ]; \ then mkdir -p $(DESTDIR)/var/vtpm/fifos; \ fi $(INSTALL_PROG) $(BIN) $(TOOLS_INSTALL_DIR) +.PHONY: clean clean: rm -f *.a *.so *.o *.rpm $(DEP_FILES) +.PHONY: mrproper mrproper: clean rm -f $(BIN) *~ diff -r b54bba73936d -r 4d16755748eb tools/vtpm_manager/tcs/Makefile --- a/tools/vtpm_manager/tcs/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vtpm_manager/tcs/Makefile Fri May 12 22:35:05 2006 +0100 @@ -3,15 +3,20 @@ include $(XEN_ROOT)/tools/vtpm_manager/R BIN = libTCS.a +.PHONY: all all: build +.PHONY: build build: $(BIN) +.PHONY: install install: build +.PHONY: clean clean: rm -f *.a *.so *.o *.rpm $(DEP_FILES) +.PHONY: mrproper mrproper: clean rm -f *~ diff -r b54bba73936d -r 4d16755748eb tools/vtpm_manager/util/Makefile --- a/tools/vtpm_manager/util/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/vtpm_manager/util/Makefile Fri May 12 22:35:05 2006 +0100 @@ -3,15 +3,20 @@ include $(XEN_ROOT)/tools/vtpm_manager/R BIN = libTCGUtils.a +.PHONY: all all: build +.PHONY: build build: $(BIN) +.PHONY: install install: build +.PHONY: clean clean: rm -f *.a *.so *.o *.rpm $(DEP_FILES) +.PHONY: mrproper mrproper: clean rm -f *~ diff -r b54bba73936d -r 4d16755748eb tools/xcutils/Makefile --- a/tools/xcutils/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/xcutils/Makefile Fri May 12 22:35:05 2006 +0100 @@ -32,6 +32,8 @@ LDLIBS = -L$(XEN_LIBXC) -lxenguest -lx .PHONY: all all: build + +.PHONY: build build: $(PROGRAMS) $(PROGRAMS): %: %.o @@ -44,6 +46,7 @@ install: build $(INSTALL_PROG) $(PROGRAMS) $(DESTDIR)$(PROGRAMS_INSTALL_DIR) +.PHONY: clean clean: $(RM) *.o $(PROGRAMS) $(RM) $(PROG_DEP) diff -r b54bba73936d -r 4d16755748eb tools/xenmon/Makefile --- a/tools/xenmon/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/xenmon/Makefile Fri May 12 22:35:05 2006 +0100 @@ -28,16 +28,20 @@ BIN = setmask xenbaked BIN = setmask xenbaked SCRIPTS = xenmon.py +.PHONY: all all: build +.PHONY: build build: $(BIN) +.PHONY: install install: xenbaked setmask [ -d $(DESTDIR)$(sbindir) ] || $(INSTALL_DIR) $(DESTDIR)$(sbindir) $(INSTALL_PROG) xenbaked $(DESTDIR)$(sbindir)/xenbaked $(INSTALL_PROG) setmask $(DESTDIR)$(sbindir)/setmask $(INSTALL_PROG) xenmon.py $(DESTDIR)$(sbindir)/xenmon.py +.PHONY: clean clean: rm -f $(BIN) diff -r b54bba73936d -r 4d16755748eb tools/xenstat/libxenstat/Makefile --- a/tools/xenstat/libxenstat/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/xenstat/libxenstat/Makefile Fri May 12 22:35:05 2006 +0100 @@ -41,6 +41,7 @@ CFLAGS+=-Isrc -I$(XEN_LIBXC) -I$(XEN_XEN CFLAGS+=-Isrc -I$(XEN_LIBXC) -I$(XEN_XENSTORE) LDFLAGS+=-Lsrc +.PHONY: all all: $(LIB) $(LIB): $(OBJECTS) @@ -62,6 +63,7 @@ src/libxenstat.so: src/libxenstat.so.$(M src/libxenstat.so: src/libxenstat.so.$(MAJOR) $(MAKE_LINK) $(<F) $@ +.PHONY: install install: all #install: all # $(INSTALL_DATA) src/xenstat.h $(DESTDIR)$(includedir)/xenstat.h @@ -84,6 +86,7 @@ BINDINGSRC=$(PYSRC) $(PERLSRC) BINDINGSRC=$(PYSRC) $(PERLSRC) # The all-bindings target builds all the language bindings +.PHONY: all-bindings all-bindings: perl-bindings python-bindings # The install-bindings target installs all the language bindings @@ -110,6 +113,7 @@ install-python-bindings: $(PYLIB) $(PYMO $(INSTALL_PROG) $(PYMOD) $(DESTDIR)$(pythonlibdir)/xenstat.py ifeq ($(XENSTAT_PYTHON_BINDINGS),y) +.PHONY: all all: python-bindings install: install-python-bindings endif @@ -122,8 +126,10 @@ PERL_FLAGS=`perl -MConfig -e 'print "$$C $(PERLLIB): $(PERLSRC) $(CC) $(CFLAGS) $(LDFLAGS) $(PERL_FLAGS) -shared -lxenstat -o $@ $< +.PHONY: perl-bindings perl-bindings: $(PERLLIB) $(PERLMOD) +.PHONY: install-perl-bindings perllibdir=$(prefix)/lib/perl5 perlmoddir=$(prefix)/share/perl5 install-perl-bindings: $(PERLLIB) $(PERLMOD) @@ -131,10 +137,14 @@ install-perl-bindings: $(PERLLIB) $(PERL $(INSTALL_PROG) $(PERLMOD) $(DESTDIR)$(perlmoddir)/xenstat.pm ifeq ($(XENSTAT_PERL_BINDINGS),y) +.PHONY: all all: perl-bindings + +.PHONY: install install: install-perl-bindings endif +.PHONY: clean clean: rm -f $(LIB) $(SHLIB) $(SHLIB_LINKS) $(OBJECTS) \ $(BINDINGS) $(BINDINGSRC) diff -r b54bba73936d -r 4d16755748eb tools/xenstat/xentop/Makefile --- a/tools/xenstat/xentop/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/xenstat/xentop/Makefile Fri May 12 22:35:05 2006 +0100 @@ -14,6 +14,7 @@ include $(XEN_ROOT)/tools/Rules.mk include $(XEN_ROOT)/tools/Rules.mk ifneq ($(XENSTAT_XENTOP),y) +.PHONY: all install xentop all install xentop: else @@ -30,15 +31,16 @@ LDFLAGS += -L$(XEN_LIBXENSTAT) LDFLAGS += -L$(XEN_LIBXENSTAT) LDLIBS += -lxenstat -lncurses +.PHONY: all all: xentop -xentop: xentop.o - +.PHONY: install install: xentop xentop.1 $(INSTALL_PROG) xentop $(DESTDIR)$(sbindir)/xentop $(INSTALL_DATA) xentop.1 $(DESTDIR)$(man1dir)/xentop.1 endif +.PHONY: clean clean: rm -f xentop xentop.o diff -r b54bba73936d -r 4d16755748eb tools/xenstore/Makefile --- a/tools/xenstore/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/xenstore/Makefile Fri May 12 22:35:05 2006 +0100 @@ -27,11 +27,13 @@ CLIENTS += xenstore-write CLIENTS += xenstore-write CLIENTS_OBJS := $(patsubst xenstore-%,xenstore_%.o,$(CLIENTS)) +.PHONY: all all: libxenstore.so xenstored $(CLIENTS) xs_tdb_dump xenstore-control xenstore-ls test_interleaved_transactions: test_interleaved_transactions.o $(LINK.o) $^ $(LOADLIBES) $(LDLIBS) -L. -lxenstore -o $@ +.PHONY: testcode testcode: xs_test xenstored_test xs_random xenstored: xenstored_core.o xenstored_watch.o xenstored_domain.o xenstored_transaction.o xs_lib.o talloc.o utils.o tdb.o hashtable.o @@ -63,6 +65,7 @@ xs_crashme: xs_crashme.o xs_lib.o talloc speedtest: speedtest.o xs.o xs_lib.o utils.o talloc.o +.PHONY: check-speed check-speed: speedtest xenstored_test $(TESTDIR) $(TESTENV) time ./speedtest 100 @@ -80,6 +83,7 @@ libxenstore.so: xs.opic xs_lib.opic libxenstore.so: xs.opic xs_lib.opic $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-soname -Wl,libxenstore.so -shared -o $@ $^ -lpthread +.PHONY: clean clean: testsuite-clean rm -f *.o *.opic *.so rm -f xenstored xs_random xs_stress xs_crashme @@ -87,55 +91,69 @@ clean: testsuite-clean rm -f $(CLIENTS) $(RM) $(PROG_DEP) +.PHONY: print-dir print-dir: @echo -n tools/xenstore: +.PHONY: print-end print-end: @echo +.PHONY: check check: print-dir testsuite-fast randomcheck-fast print-end +.PHONY: fullcheck fullcheck: testsuite-run randomcheck stresstest $(TESTDIR): mkdir $@ +.PHONY: testsuite-run testsuite-run: xenstored_test xs_test $(TESTDIR) $(TESTENV) testsuite/test.sh && echo +.PHONY: testsuite-fast testsuite-fast: xenstored_test xs_test $(TESTDIR) @$(TESTENV) testsuite/test.sh --fast +.PHONY: testsuite-clean testsuite-clean: rm -rf $(TESTDIR) # Make this visible so they can see repeat tests without --fast if they # fail. RANDSEED=$(shell date +%s) +.PHONY: randomcheck randomcheck: xs_random xenstored_test $(TESTDIR) $(TESTENV) ./xs_random --simple --fast /tmp/xs_random 200000 $(RANDSEED) && echo $(TESTENV) ./xs_random --fast /tmp/xs_random 100000 $(RANDSEED) && echo # $(TESTENV) ./xs_random --fail /tmp/xs_random 10000 $(RANDSEED) +.PHONY: crashme crashme: xs_crashme xenstored_test $(TESTDIR) rm -rf $(TESTDIR)/store $(TESTDIR)/transactions /tmp/xs_crashme.vglog* /tmp/trace export $(TESTENV); ./xs_crashme 5000 $(RANDSEED) 2>/dev/null if [ -n "`cat /tmp/xs_crashme.vglog*`" ]; then echo Valgrind complained; cat /tmp/xs_crashme.vglog*; exit 1; fi rm -rf $(TESTDIR)/store $(TESTDIR)/transactions /tmp/xs_crashme.vglog* /tmp/trace +.PHONY: randomcheck-fast randomcheck-fast: xs_random xenstored_test $(TESTDIR) @$(TESTENV) ./xs_random --fast /tmp/xs_random 2000 $(RANDSEED) +.PHONY: stresstest stresstest: xs_stress xenstored_test $(TESTDIR) rm -rf $(TESTDIR)/store $(TESTDIR)/transactions export $(TESTENV); PID=`./xenstored_test --output-pid --trace-file=/tmp/trace`; ./xs_stress 5000; ret=$$?; kill $$PID; exit $$ret +.PHONY: TAGS TAGS: etags `find . -name '*.[ch]'` +.PHONY: tarball tarball: clean cd .. && tar -c -j -v -h -f xenstore.tar.bz2 xenstore/ +.PHONY: install install: all $(INSTALL_DIR) -p $(DESTDIR)/var/run/xenstored $(INSTALL_DIR) -p $(DESTDIR)/var/lib/xenstored diff -r b54bba73936d -r 4d16755748eb tools/xentrace/Makefile --- a/tools/xentrace/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/tools/xentrace/Makefile Fri May 12 22:35:05 2006 +0100 @@ -28,9 +28,13 @@ LIBBIN += xenctx LIBBIN += xenctx endif +.PHONY: all all: build + +.PHONY: build build: $(BIN) $(LIBBIN) +.PHONY: install install: build [ -d $(DESTDIR)/usr/bin ] || $(INSTALL_DIR) $(DESTDIR)/usr/bin [ -z "$(LIBBIN)" ] || [ -d $(DESTDIR)/usr/$(LIBDIR)/xen/bin ] || \ @@ -44,6 +48,7 @@ install: build $(INSTALL_DATA) $(MAN1) $(DESTDIR)/usr/share/man/man1 $(INSTALL_DATA) $(MAN8) $(DESTDIR)/usr/share/man/man8 +.PHONY: clean clean: $(RM) *.a *.so *.o *.rpm $(BIN) $(LIBBIN) diff -r b54bba73936d -r 4d16755748eb xen/Makefile --- a/xen/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,31 +1,28 @@ INSTALL = install -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 = .2-2 +export XEN_EXTRAVERSION ?= .2-2 export XEN_FULLVERSION = $(XEN_VERSION).$(XEN_SUBVERSION)$(XEN_EXTRAVERSION) +-include xen-version -export BASEDIR := $(CURDIR) +export BASEDIR := $(CURDIR) -include Rules.mk +.PHONY: default +default: build -default: build -$(TARGET).gz: $(TARGET) - gzip -f -9 < $< > $@.new - mv $@.new $@ - -debug: - objdump -D -S $(TARGET)-syms > $(TARGET).s - +.PHONY: dist dist: install -build: $(TARGET).gz +.PHONY: build install clean cscope TAGS tags +build install debug clean cscope TAGS tags:: + make -f Rules.mk _$@ -install: $(TARGET).gz +.PHONY: _build +_build: $(TARGET).gz + +.PHONY: _install +_install: $(TARGET).gz [ -d $(DESTDIR)/boot ] || $(INSTALL_DIR) $(DESTDIR)/boot $(INSTALL_DATA) $(TARGET).gz $(DESTDIR)/boot/$(notdir $(TARGET))-$(XEN_FULLVERSION).gz ln -f -s $(notdir $(TARGET))-$(XEN_FULLVERSION).gz $(DESTDIR)/boot/$(notdir $(TARGET))-$(XEN_VERSION).$(XEN_SUBVERSION).gz @@ -38,27 +35,37 @@ install: $(TARGET).gz $(INSTALL_DATA) include/public/io/*.h $(DESTDIR)/usr/include/xen/io $(INSTALL_DATA) include/public/COPYING $(DESTDIR)/usr/include/xen -clean: delete-unfresh-files +.PHONY: _debug +_debug: + objdump -D -S $(TARGET)-syms > $(TARGET).s + +.PHONY: _clean +_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 +$(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' +.PHONY: delete-unfresh-files delete-unfresh-files: @if [ ! -r include/xen/compile.h -o -O include/xen/compile.h ]; then \ rm -f include/xen/{banner,compile}.h; \ @@ -115,8 +122,6 @@ include/asm-$(TARGET_ARCH)/asm-offsets.h echo ""; \ echo "#endif") <$< >$@ -.PHONY: default debug install dist clean delete-unfresh-files TAGS tags - SUBDIRS = acm arch/$(TARGET_ARCH) common drivers define all_sources ( find include/asm-$(TARGET_ARCH) -name SCCS -prune -o -name '*.h' -print; \ @@ -124,12 +129,20 @@ define all_sources -name config \) -prune -o -name '*.h' -print; \ find $(SUBDIRS) -name SCCS -prune -o -name '*.[chS]' -print ) endef -TAGS: + +.PHONY: _TAGS +_TAGS: $(all_sources) | etags - -tags: + +.PHONY: _tags +_tags: $(all_sources) | xargs ctags -cscope: + +.PHONY: _cscope +_cscope: $(all_sources) > cscope.files cscope -k -b -q + +.PHONY: MAP MAP: $(NM) $(TARGET) | grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | sort > System.map diff -r b54bba73936d -r 4d16755748eb xen/Rules.mk --- a/xen/Rules.mk Fri May 12 15:49:11 2006 +0100 +++ b/xen/Rules.mk Fri May 12 22:35:05 2006 +0100 @@ -26,20 +26,23 @@ override COMPILE_ARCH := $(patsubst x override COMPILE_ARCH := $(patsubst x86%,x86,$(XEN_COMPILE_ARCH)) override TARGET_ARCH := $(patsubst x86%,x86,$(XEN_TARGET_ARCH)) -TARGET := $(BASEDIR)/xen -HDRS := $(wildcard $(BASEDIR)/include/xen/*.h) -HDRS += $(wildcard $(BASEDIR)/include/public/*.h) -HDRS += $(wildcard $(BASEDIR)/include/asm-$(TARGET_ARCH)/*.h) -HDRS += $(wildcard $(BASEDIR)/include/asm-$(TARGET_ARCH)/$(TARGET_SUBARCH)/*.h) -HDRS += $(wildcard $(BASEDIR)/include/asm-$(TARGET_ARCH)/hvm/*.h) -HDRS += $(wildcard $(BASEDIR)/include/asm-$(TARGET_ARCH)/hvm/svm/*.h) -HDRS += $(wildcard $(BASEDIR)/include/asm-$(TARGET_ARCH)/hvm/vmx/*.h) -# Do not depend on auto-generated header files. -HDRS := $(subst $(BASEDIR)/include/asm-$(TARGET_ARCH)/asm-offsets.h,,$(HDRS)) -HDRS := $(subst $(BASEDIR)/include/xen/banner.h,,$(HDRS)) -HDRS := $(subst $(BASEDIR)/include/xen/compile.h,,$(HDRS)) +TARGET := $(BASEDIR)/xen + +HDRS := $(wildcard $(BASEDIR)/include/xen/*.h) +HDRS += $(wildcard $(BASEDIR)/include/public/*.h) +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. +HDRS := $(subst $(BASEDIR)/include/asm-$(TARGET_ARCH)/asm-offsets.h,,$(HDRS)) +HDRS := $(subst $(BASEDIR)/include/xen/banner.h,,$(HDRS)) +HDRS := $(subst $(BASEDIR)/include/xen/compile.h,,$(HDRS)) # Note that link order matters! ALL_OBJS-y += $(BASEDIR)/common/built_in.o @@ -64,6 +67,38 @@ CFLAGS := $(strip $(CFLAGS) $(CFLAGS-y 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 $@ $^ + +# Force execution of pattern rules (for which PHONY cannot be directly used). +.PHONY: FORCE +FORCE: + +%/built_in.o: FORCE + $(MAKE) -f $(BASEDIR)/Rules.mk -C $* built_in.o + +.PHONY: clean +clean:: $(addprefix _clean_, $(subdir-all)) + rm -f *.o *~ core +_clean_%/: FORCE + $(MAKE) -f $(BASEDIR)/Rules.mk -C $* clean + %.o: %.c $(HDRS) Makefile $(CC) $(CFLAGS) -c $< -o $@ diff -r b54bba73936d -r 4d16755748eb xen/acm/Makefile --- a/xen/acm/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/acm/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,9 +1,5 @@ include $(BASEDIR)/Rules.mk -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 b54bba73936d -r 4d16755748eb xen/arch/ia64/Makefile --- a/xen/arch/ia64/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/ia64/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,21 +1,17 @@ include $(BASEDIR)/Rules.mk -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 @@ -79,7 +75,8 @@ xen.lds.s: xen/xen.lds.S $(CC) -E $(CPPFLAGS) -P -DXEN $(AFLAGS) \ -o xen.lds.s xen/xen.lds.S -clean:: FORCE +.PHONY: clean +clean:: rm -f *.o *~ core xen.lds.s $(BASEDIR)/include/asm-ia64/.offsets.h.stamp asm-offsets.s map.out rm -f asm-xsi-offsets.s $(BASEDIR)/include/asm-ia64/asm-xsi-offsets.h rm -f $(BASEDIR)/System.map diff -r b54bba73936d -r 4d16755748eb xen/arch/ia64/linux-xen/Makefile --- a/xen/arch/ia64/linux-xen/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/ia64/linux-xen/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -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 += tlb.o obj-y += unaligned.o obj-y += unwind.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/ia64/linux/Makefile --- a/xen/arch/ia64/linux/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/ia64/linux/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,6 +1,3 @@ include $(BASEDIR)/Rules.mk -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 += __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 b54bba73936d -r 4d16755748eb xen/arch/ia64/tools/privop/Makefile --- a/xen/arch/ia64/tools/privop/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/ia64/tools/privop/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,10 +1,12 @@ CC=gcc CC=gcc CFLAGS=-O -Wall +.PHONY: all all: postat postat: postat.c pohcalls.o +.PHONY: clean clean: $(RM) -f *.o postat *.s *~ diff -r b54bba73936d -r 4d16755748eb xen/arch/ia64/vmx/Makefile --- a/xen/arch/ia64/vmx/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/ia64/vmx/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -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_virt.o obj-y += vmx_vsa.o obj-y += vtlb.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/ia64/xen/Makefile --- a/xen/arch/ia64/xen/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/ia64/xen/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -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-y += xentime.o obj-$(crash_debug) += gdbstub.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/Makefile --- a/xen/arch/x86/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - subdir-y += acpi subdir-y += cpu subdir-y += genapic @@ -49,8 +47,6 @@ obj-$(x86_64) += shadow.o shadow_public. 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/'` @@ -59,11 +55,11 @@ include $(BASEDIR)/Post.mk $(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 @@ -79,5 +75,6 @@ boot/mkelf32: boot/mkelf32.c shadow_guest32.o: shadow.c -clean:: FORCE +.PHONY: clean +clean:: rm -f asm-offsets.s xen.lds boot/*.o boot/*~ boot/core boot/mkelf32 diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/Rules.mk --- a/xen/arch/x86/Rules.mk Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/Rules.mk Fri May 12 22:35:05 2006 +0100 @@ -46,6 +46,10 @@ x86_64 := y x86_64 := y endif +HDRS += $(wildcard $(BASEDIR)/include/asm-x86/hvm/*.h) +HDRS += $(wildcard $(BASEDIR)/include/asm-x86/hvm/svm/*.h) +HDRS += $(wildcard $(BASEDIR)/include/asm-x86/hvm/vmx/*.h) + # Test for at least GCC v3.2.x. gcc-ver = $(shell $(CC) -dumpversion | sed -e 's/^\(.\)\.\(.\)\.\(.\)/\$(1)/') ifeq ($(call gcc-ver,1),1) diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/acpi/Makefile --- a/xen/arch/x86/acpi/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/acpi/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,1 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - obj-y += boot.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/cpu/Makefile --- a/xen/arch/x86/cpu/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/cpu/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - subdir-y += mcheck subdir-y += mtrr @@ -12,5 +10,3 @@ obj-$(x86_32) += cyrix.o obj-$(x86_32) += cyrix.o obj-$(x86_32) += rise.o obj-$(x86_32) += transmeta.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/cpu/mcheck/Makefile --- a/xen/arch/x86/cpu/mcheck/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/cpu/mcheck/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -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 += p5.o obj-y += p6.o obj-y += winchip.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/cpu/mtrr/Makefile --- a/xen/arch/x86/cpu/mtrr/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/cpu/mtrr/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,10 +1,6 @@ include $(BASEDIR)/Rules.mk -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 b54bba73936d -r 4d16755748eb xen/arch/x86/genapic/Makefile --- a/xen/arch/x86/genapic/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/genapic/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,10 +1,6 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - obj-y += bigsmp.o obj-y += default.o obj-y += es7000.o obj-y += es7000plat.o obj-y += probe.o obj-y += summit.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/hvm/Makefile --- a/xen/arch/x86/hvm/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/hvm/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - subdir-y += svm subdir-y += vmx @@ -10,5 +8,3 @@ obj-y += platform.o obj-y += platform.o obj-y += vioapic.o obj-y += vlapic.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/hvm/svm/Makefile --- a/xen/arch/x86/hvm/svm/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/hvm/svm/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - subdir-$(x86_32) += x86_32 subdir-$(x86_64) += x86_64 @@ -8,5 +6,3 @@ obj-y += intr.o obj-y += intr.o obj-y += svm.o obj-y += vmcb.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/hvm/svm/x86_32/Makefile --- a/xen/arch/x86/hvm/svm/x86_32/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/hvm/svm/x86_32/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,1 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - obj-y += exits.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/hvm/svm/x86_64/Makefile --- a/xen/arch/x86/hvm/svm/x86_64/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/hvm/svm/x86_64/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,1 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - obj-y += exits.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/hvm/vmx/Makefile --- a/xen/arch/x86/hvm/vmx/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/hvm/vmx/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,10 +1,6 @@ include $(BASEDIR)/Rules.mk -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 b54bba73936d -r 4d16755748eb xen/arch/x86/hvm/vmx/x86_32/Makefile --- a/xen/arch/x86/hvm/vmx/x86_32/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/hvm/vmx/x86_32/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,1 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - obj-y += exits.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/hvm/vmx/x86_64/Makefile --- a/xen/arch/x86/hvm/vmx/x86_64/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/hvm/vmx/x86_64/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,1 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - obj-y += exits.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/x86_32/Makefile --- a/xen/arch/x86/x86_32/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/x86_32/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -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-y += traps.o obj-$(supervisor_mode_kernel) += supervisor_mode_kernel.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/arch/x86/x86_64/Makefile --- a/xen/arch/x86/x86_64/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/arch/x86/x86_64/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,7 +1,3 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - obj-y += entry.o obj-y += mm.o obj-y += traps.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/common/Makefile --- a/xen/common/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/common/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,3 @@ include $(BASEDIR)/Rules.mk -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-$(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 b54bba73936d -r 4d16755748eb xen/drivers/Makefile --- a/xen/drivers/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/drivers/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,6 +1,2 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - subdir-y += char subdir-$(HAS_ACPI) += acpi - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/drivers/acpi/Makefile --- a/xen/drivers/acpi/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/drivers/acpi/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,5 +1,1 @@ include $(BASEDIR)/Rules.mk -include $(BASEDIR)/Rules.mk - obj-y += tables.o - -include $(BASEDIR)/Post.mk diff -r b54bba73936d -r 4d16755748eb xen/drivers/char/Makefile --- a/xen/drivers/char/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/drivers/char/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,10 +1,6 @@ include $(BASEDIR)/Rules.mk -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 b54bba73936d -r 4d16755748eb xen/tools/Makefile --- a/xen/tools/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/tools/Makefile Fri May 12 22:35:05 2006 +0100 @@ -1,10 +1,12 @@ include $(BASEDIR)/../Config.mk +.PHONY: default default: $(MAKE) -C figlet $(MAKE) symbols +.PHONY: clean clean: $(MAKE) -C figlet clean rm -f *.o symbols diff -r b54bba73936d -r 4d16755748eb xen/tools/figlet/Makefile --- a/xen/tools/figlet/Makefile Fri May 12 15:49:11 2006 +0100 +++ b/xen/tools/figlet/Makefile Fri May 12 22:35:05 2006 +0100 @@ -4,5 +4,6 @@ figlet: figlet.c figlet: figlet.c $(HOSTCC) -o $@ $< +.PHONY: clean clean: rm -f *.o figlet diff -r b54bba73936d -r 4d16755748eb xen/Post.mk --- a/xen/Post.mk Fri May 12 15:49:11 2006 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -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
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |