--- a/Makefile.in
+++ b/Makefile.in
@@ -7,6 +7,10 @@
 
 include config.mk
 
+.PHONY: default
+default: all allxen bins
+	@:
+
 .PHONY: all
 all:
 ifeq ($(HAVE_TYPECONV),type-conv)
@@ -37,7 +41,7 @@
 	$(MAKE) -C xen-utils
 
 .PHONY: allxen
-allxen:
+allxen: all
 ifeq ($(HAVE_XEN),1)
 	$(MAKE) -C netdev
 	$(MAKE) -C cpuid
@@ -45,7 +49,7 @@
 	$(MAKE) -C tapctl
 endif
 
-install:
+install: $(STUBLIBDIR) installxen bininstall
 	$(MAKE) -C uuid install
 	$(MAKE) -C stdext install
 	$(MAKE) -C log install
@@ -162,7 +166,7 @@
 	$(MAKE) -C xen-utils doc
 
 .PHONY: clean
-clean:
+clean: cleanxen
 	$(MAKE) -C uuid clean
 	$(MAKE) -C camldm clean
 	$(MAKE) -C stdext clean
@@ -188,6 +192,10 @@
 	$(MAKE) -C vhd clean
 	$(MAKE) -C tapctl clean
 
+STUBLIBDIR = $(DESTDIR)$(shell ocamlc -where)/stublibs
+$(STUBLIBDIR):
+	mkdir -p $@
+
 RPM_SPECSDIR=$(shell rpm --eval='%_specdir')
 RPM_SOURCEDIR=$(shell rpm --eval='%_sourcedir')
 XEN_RELEASE=xcp0.2
