[clhp-cvs] CVS update: clhp/Makefile

Anthony Ventimiglia aventimiglia at common-lisp.net
Wed Oct 15 14:05:58 UTC 2003


Update of /project/clhp/cvsroot/clhp
In directory common-lisp.net:/tmp/cvs-serv10945

Modified Files:
	Makefile 
Log Message:
Moved test-suite out of cgi-test into its own file, now I can write
tests for clhp as well. Modified Makefiles to deal with the new
directory. Now running make check from the toplevel runs the tests.

Date: Wed Oct 15 10:05:58 2003
Author: aventimiglia

Index: clhp/Makefile
diff -u clhp/Makefile:1.10 clhp/Makefile:1.11
--- clhp/Makefile:1.10	Wed Oct 15 08:50:52 2003
+++ clhp/Makefile	Wed Oct 15 10:05:57 2003
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.10 2003/10/15 12:50:52 aventimiglia Exp $
+# $Id: Makefile,v 1.11 2003/10/15 14:05:57 aventimiglia Exp $
 #
 # CLHP the Common Lisp Hypertext Preprocessor
 # (C) 2003 Anthony J Ventimiglia
@@ -65,7 +65,8 @@
 TESTS=config/binfmt-test.clcgi
 DOCS=COPYING INSTALL ChangeLog NEWS README TODO 
 
-SUBDIRS=config examples
+SUBDIRS=config examples tests
+RECURSIVE_SUBDIRS = examples tests
 EXTRADIST=config/binfmt-test.lisp config/build-core.lisp config/lispc.lisp \
 	config/runclcgi.src examples/Makefile examples/clhp-test.lisp \
 	examples/index.clhp examples/test.lisp Makefile
@@ -80,11 +81,13 @@
 TARROOT=clhp-$(VERSION)
 TARBALL=$(TARROOT).tar.gz
 
+RECURSIVE_TARGETS=clean-recursive clean-all-recursive check-recursive
+
 all: $(LISPCBIN) $(LIBS) $(CORE) $(RUNCGI)
 
 .PHONY: all install uninstall clean clean-all clean-backups install-dirs \
 	install-source install-source-dirs uninstall-files uninstall-dirs \
-	install-core tests clean-dist
+	install-core tests clean-dist $(RECURSIVE_TARGETS) check
 
 %.x86f: %.lisp
 	$(LISPC) $<
@@ -97,6 +100,8 @@
 		if test ! -x $$file; then $(CHMOD) -v a+x $$file ; fi \
 	done
 
+check: $(CORE) check-recursive
+
 $(LISPCBIN): config/lispc.lisp
 
 $(CORE): $(SOURCES) config/build-core.lisp
@@ -175,9 +180,9 @@
 	tar cvf $$tarfile $(TARROOT) ; \
 	gzip $$tarfile
 
-clean-all: clean clean-backups clean-dist
+clean-all: clean-all-recursive clean clean-backups clean-dist 
 
-clean: 
+clean: clean-recursive
 	for f in $(LIBS) $(LISPCBIN) $(CORE) $(CORE).BAK $(RUNCGI) \
 		$(TESTS) $(TARBALL); \
 	 do \
@@ -186,8 +191,22 @@
 	$(MAKE) -C examples clean
 	find -iname "*.tar.gz" -exec rm -v {} \;
 
-clean-backups:
+clean-backups: 
 	find -iname "*~" -exec rm -v {} \;
 
 clean-dist:
 	if test -d $(TARROOT); then rm -rv $(TARROOT); fi
+
+$(RECURSIVE_TARGETS):
+	@set fnord $(MAKEFLAGS); amf=$$2 \
+	dot_seen=no ; \
+	target=`echo $@ | sed s/-recursive//`; \
+	list='$(RECURSIVE_SUBDIRS)' ; for subdir in $$list; do \
+		echo ">>>>> Making $$target in $$subdir"; \
+		(cd $$subdir && $(MAKE) $$target) || \
+		case "$$amf" in 		\
+			*=*) exit 1 ;;		\
+			*k*) exit 1 ;;		\
+			*) exit 1 ;;		\
+		esac ;				\
+	done
\ No newline at end of file





More information about the Clhp-cvs mailing list