# And over-ride all of the other magic.
include scripts/boiler.mk
-.PHONY: test
-test:
+test: build.raddb
@$(MAKE) -C raddb/certs
+ @$(MAKE) -C src/tests tests
#
# The $(R) is a magic variable not defined anywhere in this source.
# Automatic remaking rules suggested by info:autoconf#Automatic_Remaking
#
######################################################################
-.PHONY: reconfig
-reconfig:
- @$(MAKE) $(MFLAGS) -C src reconfig
- @$(MAKE) configure
- @$(MAKE) src/include/autoconf.h.in
-
-configure: configure.in aclocal.m4
- $(AUTOCONF)
-
-.PHONY: src/include/autoconf.h.in
-src/include/autoconf.h.in:
- $(AUTOHEADER)
+CONFIGURE_IN_FILES := $(shell find . -name configure.in -print)
+CONFIGURE_FILES := $(patsubst %.in,%,$(CONFIGURE_IN_FILES))
+
+# Configure files depend on "in" files, and on the top-level macro files
+# If there are headers, run auto-header, too.
+src/%configure: src/%configure.in acinclude.m4 aclocal.m4
+ @echo AUTOCONF $@
+ @cd $(dir $@) && $(AUTOCONF) -I $(top_builddir) -I $(top_builddir)/m4 -I ./m4
+ @if grep AC_CONFIG_HEADERS $@ >/dev/null; then\
+ echo AUTOHEADER $@ \
+ cd $(dir $@) && $(AUTOHEADER); \
+ fi
+
+# "%configure" doesn't match "configure"
+configure: configure.in $(wildcard ac*.m4)
+ @echo AUTOCONF $@
+ @$(AUTOCONF)
+
+src/include/autoconf.h.in: configure.in
+ @echo AUTOHEADER $@
+ @$(AUTOHEADER)
+
+reconfig: $(CONFIGURE_FILES) src/include/autoconf.h.in
config.status: configure
./config.status --recheck
-configure.in:
-
.PHONY: check-includes
check-includes:
scripts/min-includes.pl `find . -name "*.c" -print`