aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>2006-04-10 17:02:49 +0100
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>2006-04-10 17:02:49 +0100
commitb5fa90ac8ea579eb2b4223051e3c35d78a7b28b2 (patch)
tree51768b133193fd10c1ea4d715f000163a107018a /Makefile
parent0198288b1f5f296f043439bd647877effb870df7 (diff)
parent224cab0dfd3e7696fec21acf5e0cd821328fbe49 (diff)
downloadxen-b5fa90ac8ea579eb2b4223051e3c35d78a7b28b2.tar.gz
xen-b5fa90ac8ea579eb2b4223051e3c35d78a7b28b2.tar.bz2
xen-b5fa90ac8ea579eb2b4223051e3c35d78a7b28b2.zip
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@verge.net.au>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile26
1 files changed, 23 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 71a7c7d342..625c81c666 100644
--- a/Makefile
+++ b/Makefile
@@ -14,6 +14,7 @@ export XEN_TARGET_ARCH SUBARCH XEN_SYSTYPE
endif
# Default target must appear before any include lines
+.PHONY: all
all: dist
XEN_ROOT=$(CURDIR)
@@ -24,12 +25,11 @@ ifeq ($(XEN_TARGET_X86_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,67 +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
+.PHONY: help
help:
@echo 'Installation targets:'
@echo ' install - build and install everything'
@@ -156,6 +174,7 @@ help:
@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
@@ -189,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