diff options
Diffstat (limited to 'makefiles/top.mk')
-rw-r--r-- | makefiles/top.mk | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/makefiles/top.mk b/makefiles/top.mk new file mode 100644 index 0000000..4602e91 --- /dev/null +++ b/makefiles/top.mk @@ -0,0 +1,33 @@ +# top-level makefile for a package +# +# requires: +# - TOPDIR +# - SUBDIRS +# +# provides: +# - target 'all' +# - target 'clean' +# - target 'distclean' +# - target 'test' +# - target 'dist' + +.PHONY: all +all: + @test -z "$(SUBDIRS)" || ( set -e; for d in $(SUBDIRS)""; do \ + (set -e; $(MAKE) -C $$d all || exit 1); done) + +.PHONY: clean +clean: + @test -z "$(SUBDIRS)" || ( set -e; for d in $(SUBDIRS)""; do \ + (set -e; $(MAKE) -C $$d clean || exit 1); done) + +.PHONY: distclean +distclean: clean + test -z "$(SUBDIRS)" || ( set -e; for d in $(SUBDIRS)""; do \ + (set -e; $(MAKE) -C $$d distclean || exit 1); done) + +.PHONY: test +test: all + @$(MAKE) -C tests test + +-include $(TOPDIR)/makefiles/dist.mk |