-.PHONY: _default_build_
-_default_build_: all
-%:
+# -*-makefile-*-
+#
+# This makefile is included from source directories in order to
+# trigger a build in the corresponding build directory.
+#
+# See src/Makefile for an example.
+#
+include $(topdir)/builds/current
+builddir = $(topdir)/builds/$(CURRENT_BUILD)/$(srcdir)
+unittestdir = $(topdir)/builds/$(CURRENT_BUILD)/test/unit
+unittestprefix = $(srcdir:src/%=%)
+
+.PHONY: all
+all .DEFAULT:
@if test -e $(builddir); then \
echo cd $(builddir); \
cd $(builddir); \
echo 'Run configure first, or type "make" in a configured build directory.'; \
echo; \
fi
+
+.PHONY: check units
+ifeq ($(srcdir:test/%=test),test)
+# under the test/ directory, additional subtargets
+.PHONY: systemtests regress regress0 regress1 regress2 regress3
+check units systemtests regress regress0 regress1 regress2 regress3:
+ @if test -e $(builddir); then \
+ echo cd $(builddir); \
+ cd $(builddir); \
+ echo $(MAKE) $@; \
+ $(MAKE) $@; \
+ else \
+ echo; \
+ echo "** ERROR: could not find testing dir \`$(builddir)'"; \
+ echo; \
+ fi
+else
+check units:
+ @if test -e $(unittestdir); then \
+ echo cd $(unittestdir); \
+ cd $(unittestdir); \
+ echo $(MAKE) TEST_PREFIX=$(unittestprefix)/ $@; \
+ $(MAKE) TEST_PREFIX=$(unittestprefix)/ $@; \
+ else \
+ echo; \
+ echo "** ERROR: could not find unit testing dir \`$(unittestdir)'"; \
+ echo; \
+ exit 1; \
+ fi
+endif
+
+# synonyms for "check"
+.PHONY: test
+test: check