# Programer: Kevin M. Rosenberg, M.D.
# Date Started: Mar 2002
#
-# CVS Id: $Id: Makefile,v 1.41 2002/04/28 02:28:45 kevin Exp $
+# CVS Id: $Id: Makefile,v 1.42 2002/04/28 03:52:01 kevin Exp $
#
# This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
#
.PHONY: distclean
distclean: clean
- ./debian/rules clean
+# ./debian/rules clean
VERSION=$(shell cat VERSION)
@cvs -q rtag -d $(TAG) $(PKG) > /dev/null
@cvs -q tag -F $(TAG) > /dev/null
+.PHONY: doc
+doc:
+ $(MAKE) -C doc
+
.PHONY: dist
dist: distclean
$(MAKE) -C doc $@
@mkdir $(DISTDIR)
@cp -a $(SOURCE_FILES) $(DISTDIR)
@find $(DISTDIR) -type d -name CVS |xargs rm -rf
+ @rm -rf $(DISTDIR)/debian
@find $(DISTDIR) -type f -name .cvsignore -exec rm {} \;
@find $(DISTDIR)/doc -type f -name \*.tex -or -name \*.aux -or \
-name \*.log -or -name \*.out -or -name \*.dvi -or \
-- Split implementation-dependent code into separate files in preparation
-for MCL and CormanLisp ports.
+- Run test-suite on MCL port
+
# Add here commands to install the package into debian/uffi.
$(INSTALL) $(INSTALLDIRFLAGS) $(SOURCESDEST) $(SOURCESDEST)/mcl $(SYSDIR) $(DOCDIR) $(DOCDIR)/html
- $(INSTALL) $(INSTALLFLAGS) uffi.system $(SYSDIR)
+ $(INSTALL) $(INSTALLFLAGS) uffi.system.debian $(SYSDIR)
+ mv $(SYSDIR)/uffi.system.debian $(SYSDIR)/uffi.system
$(INSTALL) $(INSTALLFLAGS) $(shell echo src/*.cl) $(SOURCESDEST)
$(INSTALL) $(INSTALLFLAGS) $(shell echo src/mcl/*.cl) $(SOURCESDEST)/mcl
$(INSTALL) $(INSTALLFLAGS) doc/html/* $(DOCDIR)/html
# Programer: Kevin M. Rosenberg
# Date Started: Mar 2002
#
-# CVS Id: $Id: Makefile,v 1.15 2002/04/28 03:05:52 kevin Exp $
+# CVS Id: $Id: Makefile,v 1.16 2002/04/28 03:52:02 kevin Exp $
#
# This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
#
TMPFILES=${DOCFILE_BASE}.aux ${DOCFILE_BASE}.out ${DOCFILE_BASE}.log
DOCFILES=$(shell echo *.sgml)
-.PHONY: all dist check html tex pdf ps clean distclean
-
+.PHONY: all
all: html pdf ps dvi
-dist: html pdf ps
+.PHONY: dist
+dist: html pdf
+
+.PHONY: doc
+doc: html ps
CHECK=nsgmls -s -C ${CATALOG} || exit 1
+.PHONY: check
check:
$(CHECK)
+.PHONY: html
html: html/book1.htm
html/book1.htm: ${DOCFILES}
$(CHECK)
( rm -rf html ; mkdir html; cd html ; jade -t sgml -c ../${CATALOG} -d ${DSSSL_HTML} ../${DOCFILE}; cd ..)
+.PHONY: tex
tex: ${TEXFILE}
${TEXFILE}: ${DOCFILES}
$(CHECK)
@jade -t tex -c ${CATALOG} -d ${DSSSL_PRINT} ${DOCFILE}
+.PHONY: pdf
pdf: ${PDFFILE}
${PDFFILE}: ${TEXFILE}
@pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
@pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
+.PHONY: dvi
dvi: ${DVIFILE}
${DVIFILE}: ${TEXFILE}
jadetex ${TEXFILE}
jadetex ${TEXFILE}
+.PHONY: ps
ps: ${PSFILE}
${PSFILE}: ${DVIFILE}
dvips -o ${PSFILE} ${DVIFILE}
+.PHONY: clean
clean:
@rm -rf html
@rm -f *~ *.bak *.orig "#*"
@rm -f ${PSFILE} ${PDFFILE} ${DVIFILE} ${TEXFILE}
@rm -f ${TMPFILES}
+.PHONY: distclean
distclean: clean
--- /dev/null
+;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*-
+;;;; *************************************************************************
+;;;; FILE IDENTIFICATION
+;;;;
+;;;; Name: uffi.system
+;;;; Purpose: Defsystem-3/4 system definition file for UFFI package
+;;;; Programmer: Kevin M. Rosenberg
+;;;; Date Started: Feb 2002
+;;;;
+;;;; $Id: uffi.system.debian,v 1.1 2002/04/28 03:52:01 kevin Exp $
+;;;;
+;;;; This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
+;;;;
+;;;; UFFI users are granted the rights to distribute and use this software
+;;;; as governed by the terms of the Lisp Lesser GNU Public License
+;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
+;;;; *************************************************************************
+
+(declaim (optimize (debug 3) (speed 3) (safety 1) (compilation-speed 0)))
+(in-package :mk)
+
+
+
+;;; UFFI system definition
+
+(mk:defsystem :uffi
+ :source-pathname
+ #+(or cmu allegro lispworks) "cl-library:"
+ #+mcl "cl-library:mcl;"
+ #-(or cmu allegro lispworks) nil
+ :source-extension "cl"
+ :components
+ ((:file "package")
+ (:file "primitives" :depends-on ("package"))
+ (:file "strings" :depends-on ("primitives"))
+ (:file "objects" :depends-on ("primitives"))
+ (:file "aggregates" :depends-on ("primitives"))
+ (:file "functions" :depends-on ("primitives"))
+ (:file "libraries" :depends-on ("package")))
+ :finally-do
+ (pushnew :uffi cl:*features*))
+