ocaml: Fix Makefile for parallel build.
authorKeir Fraser <keir.fraser@citrix.com>
Fri, 7 May 2010 07:43:51 +0000 (08:43 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Fri, 7 May 2010 07:43:51 +0000 (08:43 +0100)
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
tools/ocaml/Makefile

index 73c29880226439c5bd781417229eccc1d0fb9023..2a36e7bc8cc1ee2652d8d30a844b305057b5c837 100644 (file)
@@ -13,21 +13,24 @@ SUBDIRS = $(SUBDIRS_LIBS) $(SUBDIRS_PROGRAMS)
 .PHONY: all
 all: build
 
-.PHONY: build $(SUBDIRS)
-build: $(SUBDIRS)
-
-$(SUBDIRS):
-       @echo " === building $@"
-       @$(MAKE) --no-print-directory -C $@
+.PHONY: build
+build: SUBDIRS
+
+.PHONY: SUBDIRS SUBDIRS_PROGRAMS SUBDIRS_LIBS
+SUBDIRS SUBDIRS_PROGRAMS SUBDIRS_LIBS:
+       @set -e; for d in $($@); do                     \
+               echo " === building $$d";               \
+               $(MAKE) --no-print-directory -C $$d;    \
+       done
 
 .PHONY: install install-libs install-program
 install: install-libs install-program
 
-install-program: $(SUBDIRS_PROGRAMS)
+install-program: SUBDIRS_PROGRAMS
        $(INSTALL_DIR) $(DESTDIR)$(SBINDIR)
        $(INSTALL_PROG) xenstored/oxenstored $(DESTDIR)$(SBINDIR)
 
-install-libs: $(SUBDIRS_LIBS)
+install-libs: SUBDIRS_LIBS
 
 .PHONY: clean
 clean: