r1794: Debian docbook updates
[clsql.git] / Makefile
index 2494826ff35d6e4cec9913255f1db128af5cf0c0..01d6ee9f0a7cac74483d9e11b871e1f8c596cb5e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,7 @@
 #  Programer:    Kevin M. Rosenberg
 #  Date Started: Mar 2002
 #
-#  CVS Id:   $Id: Makefile,v 1.3 2002/03/27 08:16:24 kevin Exp $
+#  CVS Id:   $Id: Makefile,v 1.14 2002/04/23 21:32:25 kevin Exp $
 #
 # This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg
 #
 # as governed by the terms of the Lisp Lesser GNU Public License
 # (http://opensource.franz.com/preamble.html), also known as the LLGPL.
 
-PACKAGE=clsql
+PKG=clsql
 
-all: libs
+.PHONY: all libs clean distclean doc tagcvs dist wwwdist
 
-libs:
-       (cd interfaces/mysql; make)
-       (cd interfaces/clsql-uffi; make)
+SUBDIRS=interfaces/mysql interfaces/clsql-uffi
+.PHONY: subdirs $(SUBDIRS)
+
+all: $(SUBDIRS)
+
+$(SUBDIRS):
+       $(MAKE) -C $@
 
 clean:
-       @rm -f $(PACKAGE)-*.tar.gz $(PACKAGE)-*.zip
+       @rm -f $(PKG)-*.tar.gz $(PKG)-*.zip
        @find . -type d -name .bin |xargs rm -rf 
+       @find . -type f -name "#*" -or -name \*~ -exec rm {} \;
+       @for i in $(SUBDIRS) ; do $(MAKE) -C $$i $@ ; done
 
-realclean: clean
-       @find . -type f -name \*~ -exec rm {} \;
-       @find . -type f -name "#*#" -exec rm {} \;
-
-docs:
-       @(cd doc; make dist-doc)
+distclean: clean
 
 VERSION=$(shell cat VERSION)
-DISTDIR=$(PACKAGE)-$(VERSION)
+DISTDIR=$(PKG)-$(VERSION)
 DIST_TARBALL=$(DISTDIR).tar.gz
 DIST_ZIP=$(DISTDIR).zip
-SOURCE_FILES=interfaces sql cmucl-compat doc Makefile VERSION \
+SOURCE_FILES=interfaces sql cmucl-compat doc test-suite Makefile VERSION \
        COPYING.CLSQL COPYING.MaiSQL README INSTALL ChangeLog NEWS TODO \
-       set-logical.cl test-clsql.cl \
+       set-logical.cl clsql-uffi.system \
        clsql.system clsql-aodbc.system clsql-mysql.system \
        clsql-postgresql.system clsql-postgresql-socket.system
 
-dist: realclean docs
+VERSION_UNDERSCORE=$(shell cat VERSION | tr . _)
+TAG=dist_$(VERSION_UNDERSCORE)
+
+tagcvs:
+       @cvs -q rtag -d $(TAG) $(PKG) > /dev/null
+       @cvs -q tag -F $(TAG) > /dev/null
+
+dist: distclean tagcvs
+       @$(MAKE) -C doc $@
        @rm -fr $(DISTDIR) $(DIST_TARBALL) $(DIST_ZIP)
        @mkdir $(DISTDIR)
        @cp -a $(SOURCE_FILES) $(DISTDIR)
        @find $(DISTDIR) -type d -name CVS | xargs rm -r
        @find $(DISTDIR) -type f -name .cvsignore -exec rm {} \;
-       @find $(DISTDIR)/doc -type f -name \*.tex -or -name \*.aux -or \
+       @find $(DISTDIR) -type f -and -name \*.tex -or -name \*.aux -or \
                 -name \*.log -or -name \*.out -or -name \*.dvi -or \
-                -name \*~ -or -name \*.ps -exec rm {} \;
+                -name \*~ -or -name \*.ps -or -name test.config | xargs rm -f
        @tar czf $(DIST_TARBALL) $(DISTDIR)
-       @find $(DISTDIR) -type f |grep -v .dll$ |grep -v .lib$ |xargs unix2dos -q
+       @find $(DISTDIR) -type f -name \*.cl -or -name \*.list -or \
+               -name \*.system -or -name Makefile -or -name ChangeLog -or \
+               -name COPYRIGHT -or -name TODO -or -name README -or -name INSTALL \
+               -or -name NEWS -or -name \*.sgml -or -name COPYING\* -or -name catalog \
+               | xargs unix2dos
        @zip -rq $(DIST_ZIP) $(DISTDIR)
        @rm -r $(DISTDIR)
+
+wwwdist: dist
+       @./copy