OSKITDIR = ../oskit

SUBDIRS = lib/libl4sys/src lib/libl4util/src \
	  lib/libl4dbg/src lib/librmgr/src \
	  lib/liboskit_support/src \
	  server/hello server/rmgr/src server/sigma0/src

HELLODIRS = lib/libl4sys/src lib/libl4util/src \
	    lib/libl4dbg/src lib/librmgr/src \
	    lib/liboskit_support/src \
	    server/hello server/rmgr/src server/sigma0/src

default: hello

all:: oskit

.PHONY: all clean
all clean::
	for i in $(SUBDIRS) ; do \
	    ( cd $$i && $(MAKE) $@ ) || exit 1; \
	done
	cd $(OSKITDIR) && $(MAKE) $@

# build 'Hello World' Server
hello:	oskit
	for i in $(HELLODIRS) ; do \
	  ( cd $$i && $(MAKE) ) || exit 1; \
	done

# OSKIT rules

.PHONY: oskit oskit.conf oskit.present

oskit: oskit.present oskit.conf
	cd $(OSKITDIR) && $(MAKE)

oskit.present:
	@cd $(OSKITDIR) || \
	  (echo "ERROR: please install OSKIT to $(OSKITDIR)"; exit 1)

oskit.conf: $(OSKITDIR)/GNUmakefile

$(OSKITDIR)/GNUmakefile:
	cd $(OSKITDIR) && configure
