# Programer: Kevin M. Rosenberg
# Date Started: Mar 2002
#
-# CVS Id: $Id: Makefile,v 1.6 2002/04/06 19:54:14 kevin Exp $
+# CVS Id: $Id: Makefile,v 1.22 2002/08/01 03:09:17 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
+DEBPKG := cl-sql
+SUBDIRS := clsql clsql-uffi clsql-base clsql-mysql clsql-aodbc \
+ clsql-postgresql clsql-postgresql-socket
+DOCSUBDIRS:=doc
-all: libs
+include Makefile.common
-libs:
- (cd interfaces/mysql; make)
- (cd interfaces/clsql-uffi; make)
+LIBSUBDIRS=clsql-mysql clsql-uffi
+.PHONY: subdirs $(LIBSUBDIRS)
-clean:
- @rm -f $(PACKAGE)-*.tar.gz $(PACKAGE)-*.zip
- @find . -type d -name .bin |xargs rm -rf
- @find . -type f -name \*.a -or -name \*.so |xargs rm -rf
+.PHONY: all
+all: $(LIBSUBDIRS)
-realclean: clean
- @find . -type f -name \*~ -exec rm {} \;
- @find . -type f -name "#*#" -exec rm {} \;
+$(LIBSUBDIRS):
+ $(MAKE) -C $@
-docs:
- @(cd doc; make dist-doc)
+.PHONY: distclean
+distclean: clean
+ @$(MAKE) -C doc $@
-VERSION=$(shell cat VERSION)
-DISTDIR=$(PACKAGE)-$(VERSION)
-DIST_TARBALL=$(DISTDIR).tar.gz
-DIST_ZIP=$(DISTDIR).zip
SOURCE_FILES=interfaces sql cmucl-compat doc test-suite Makefile VERSION \
COPYING.CLSQL COPYING.MaiSQL README INSTALL ChangeLog NEWS TODO \
set-logical.cl clsql-uffi.system \
clsql.system clsql-aodbc.system clsql-mysql.system \
clsql-postgresql.system clsql-postgresql-socket.system
-dist: realclean docs
- @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) -type f -and -name \*.tex -or -name \*.aux -or \
- -name \*.log -or -name \*.out -or -name \*.dvi -or \
- -name \*~ -or -name \*.ps -or -name test.config | xargs rm -f
- @tar czf $(DIST_TARBALL) $(DISTDIR)
- @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 -q
- @zip -rq $(DIST_ZIP) $(DISTDIR)
- @rm -r $(DISTDIR)
+.PHONY: doc
+doc:
+ $(MAKE) -C doc
+
+.PHONY:dist
+dist: clean
+ @$(MAKE) -C doc $@
+
+