summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile195
1 files changed, 100 insertions, 95 deletions
diff --git a/Makefile b/Makefile
index 22ff48b..3a1d5fc 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,7 @@
# Makefile for Scheme Library
-# Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998 Aubrey Jaffer.
+# Author: Aubrey Jaffer
+#
+# This code is in the public domain.
SHELL = /bin/sh
intro:
@@ -10,28 +12,39 @@ intro:
@echo
-make slib.info
-srcdir=$(HOME)/slib/
+include srcdir.mk
+srcdir.mk: .. Makefile
+ echo -e "srcdir = `pwd`/\n" > srcdir.mk
+#srcdir=$(HOME)/slib/
+PREVDOCS = prevdocs/
dvidir=../dvi/
dvi: $(dvidir)slib.dvi
-$(dvidir)slib.dvi: version.txi slib.texi $(dvidir)slib.fn
+$(dvidir)slib.dvi: version.txi slib.texi $(dvidir)slib.fn schmooz.texi
# cd $(dvidir);export TEXINPUTS=$(srcdir):;texi2dvi $(srcdir)slib.texi
-(cd $(dvidir);export TEXINPUTS=$(srcdir):;texindex slib.??)
cd $(dvidir);export TEXINPUTS=$(srcdir):;tex $(srcdir)slib.texi
$(dvidir)slib.fn:
- cd $(dvidir);export TEXINPUTS=$(srcdir):;tex $(srcdir)slib.texi
+ cd $(dvidir);export TEXINPUTS=$(srcdir):;tex $(srcdir)slib.texi \
+ $(srcdir)schmooz.texi
xdvi: $(dvidir)slib.dvi
xdvi -s 6 $(dvidir)slib.dvi
htmldir=../public_html/
-slib_toc.html: version.txi slib.texi
+slib_toc.html: version.txi slib.texi htmlform.txi schmooz.texi
texi2html -split -verbose slib.texi
-slib/slib_toc.html:
- cd slib;make slib_toc.html
- cd slib;texi2html -split -verbose slib.texi
+pdf: $(htmldir)slib.pdf
+$(htmldir)slib.pdf: version.txi slib.texi $(dvidir)slib.fn schmooz.texi
+# cd $(dvidir);dvipdf slib.dvi # doesn't have links!
+ cd $(dvidir);export TEXINPUTS=$(srcdir):;pdftex $(srcdir)slib.texi
+ mv $(dvidir)slib.pdf $(htmldir)
+xpdf: $(htmldir)slib.pdf
+ xpdf -z 3 $(htmldir)slib.pdf
html: $(htmldir)slib_toc.html
-$(htmldir)slib_toc.html: slib slib_toc.html Makefile
- hitch slib/slib_\*.html slib_\*.html $(htmldir)
+$(htmldir)slib_toc.html: slib_toc.html Makefile
+ hitch $(PREVDOCS)slib_\*.html slib_\*.html $(htmldir)
+
+rpm_prefix=/usr/src/redhat/
prefix = debian/tmp/usr
exec_prefix = $(prefix)
@@ -44,65 +57,25 @@ VM = scheme48vm
IMAGE = slib.image
INSTALL_DATA = install -c
-slib48.036:
- (echo ,load `pwd`/scheme48.init; \
- echo "(define *args* '())"; \
- echo "(define (program-arguments) (cons \"$(VM)\" *args*))"; \
- echo ,dump $(LIB)/$(IMAGE); \
- echo ,exit) | scheme48
- (echo '#!/bin/sh'; \
- echo exec '$(LIB)/$(VM)' -i '$(LIB)/$(IMAGE)' \"\$$\@\") \
- > $(bindir)/slib48
- chmod +x $(bindir)/slib48
-
$(LIB)/slibcat:
touch $(LIB)/slibcat
-slib48: $(LIB)/slibcat Makefile
- (echo ",batch on"; \
- echo ",config"; \
- echo ",load =scheme48/misc/packages.scm"; \
- echo "(define-structure slib-primitives"; \
- echo " (export s48-error"; \
- echo " s48-ascii->char"; \
- echo " s48-force-output"; \
- echo " s48-current-error-port"; \
- echo " s48-system";\
- echo " s48-with-handler";\
- echo " s48-getenv)";\
- echo " (open scheme signals ascii extended-ports i/o"; \
- echo " primitives handle unix-getenv)"; \
- echo " (begin"; \
- echo " (define s48-error error)"; \
- echo " (define s48-ascii->char ascii->char)"; \
- echo " (define s48-force-output force-output)"; \
- echo " (define s48-current-error-port current-error-port)"; \
- echo " (define (s48-system c) (vm-extension 96 c))"; \
- echo " (define s48-with-handler with-handler)"; \
- echo " (define s48-getenv getenv)))"; \
- echo ",user"; \
- echo ",open slib-primitives"; \
- echo "(define (implementation-vicinity) \"$(LIB)/\")"; \
- echo "(define (library-vicinity) \"`pwd`/\")"; \
- echo ",load scheme48.init"; \
- echo "(define *args* '())"; \
- echo "(define (program-arguments) (cons \"scheme48\" *args*))"; \
- echo "(set! *catalog* #f)"; \
- echo ",collect"; \
- echo ",batch off"; \
- echo ",dump $(IMAGE) \"(slib $(VERSION))\""; \
- echo ",exit") | scheme48
-
-install48: slib48
+slib48: $(IMAGE)
+$(IMAGE): Makefile scheme48.init
+ export S48_VERSION="`echo ,exit | scheme48 | sed -n 's/Welcome to Scheme 48 //;s/ ([^)]*)[.]//;p;q'`";\
+ export S48_VICINITY="$(LIB)/";\
+ export SCHEME_LIBRARY_PATH="`pwd`/";\
+ scheme48 < scheme48.init
+install48: $(IMAGE)
$(INSTALL_DATA) $(IMAGE) $(LIB)
- (echo '#!/bin/sh'; \
+ (echo '#!/bin/sh';\
echo exec $(RUNNABLE) -i '$(LIB)/$(IMAGE)' \"\$$\@\") \
> $(bindir)/slib48
chmod +x $(bindir)/slib48
#### Stuff for maintaining SLIB below ####
-VERSION = 2c7
+VERSION = 2d2
ver = $(VERSION)
version.txi: Makefile
echo @set SLIBVERSION $(VERSION) > version.txi
@@ -112,13 +85,12 @@ scheme = scm
htmlform.txi: *.scm
$(scheme) -rschmooz -e'(schmooz "slib.texi")'
-slib$(VERSION).info: version.txi slib.texi htmlform.txi objdoc.txi
- -mv slib.info slibtemp.info
+slib.info: version.txi slib.texi htmlform.txi objdoc.txi schmooz.texi
makeinfo slib.texi --no-split -o slib.info
mv slib.info slib$(VERSION).info
- -mv slibtemp.info slib.info
-slib.info: slib$(VERSION).info
-# infobar slib/slib.info slib$(VERSION).info slib.info
+ if [ -f $(PREVDOCS)slib.info ];\
+ then infobar $(PREVDOCS)slib.info slib$(VERSION).info slib.info;\
+ else cp slib$(VERSION).info slib.info;fi
info: installinfo
installinfo: $(infodir)/slib.info
$(infodir)/slib.info: slib.info
@@ -133,45 +105,50 @@ $(infodir)/slib.info.gz: $(infodir)/slib.info
ffiles = printf.scm format.scm genwrite.scm obj2str.scm pp.scm \
ppfile.scm strcase.scm debug.scm trace.scm lineio.scm \
strport.scm scanf.scm chap.scm qp.scm break.scm stdio.scm \
- strsrch.scm prec.scm schmooz.scm
-lfiles = sort.scm comlist.scm tree.scm logical.scm random.scm tsort.scm
+ strsrch.scm prec.scm schmooz.scm differ.scm
+lfiles = sort.scm comlist.scm tree.scm logical.scm random.scm tsort.scm \
+ coerce.scm
revfiles = sc4opt.scm sc4sc3.scm sc2.scm mularg.scm mulapply.scm \
trnscrpt.scm withfile.scm dynwind.scm promise.scm values.scm \
eval.scm
afiles = ratize.scm randinex.scm modular.scm factor.scm \
- charplot.scm root.scm cring.scm determ.scm selfset.scm \
- psxtime.scm cltime.scm timezone.scm tzfile.scm
-bfiles = collect.scm fluidlet.scm struct.scm object.scm recobj.scm yasyn.scm
+ charplot.scm root.scm minimize.scm cring.scm determ.scm \
+ selfset.scm psxtime.scm cltime.scm timezone.scm tzfile.scm
+bfiles = collect.scm fluidlet.scm object.scm recobj.scm yasyn.scm
scfiles = r4rsyn.scm scmacro.scm synclo.scm synrul.scm synchk.scm \
repl.scm macwork.scm mwexpand.scm mwdenote.scm mwsynrul.scm
scafiles = scainit.scm scaglob.scm scamacr.scm scaoutp.scm scaexpp.scm \
structure.scm
-dfiles = defmacex.scm mbe.scm
+dfiles = defmacex.scm mbe.scm srfi.scm
+srfiles = srfi-1.scm
efiles = record.scm dynamic.scm queue.scm process.scm \
priorque.scm hash.scm hashtab.scm alist.scm \
wttree.scm wttest.scm array.scm arraymap.scm \
- sierpinski.scm soundex.scm byte.scm nclients.scm
+ sierpinski.scm soundex.scm byte.scm nclients.scm pnm.scm \
+ simetrix.scm
rfiles = rdms.scm alistab.scm dbutil.scm paramlst.scm report.scm \
batch.scm makcrc.scm dbrowse.scm comparse.scm getopt.scm \
- htmlform.scm getparam.scm glob.scm fft.scm
+ htmlform.scm db2html.scm http-cgi.scm getparam.scm glob.scm \
+ fft.scm uri.scm
gfiles = tek40.scm tek41.scm
-docfiles = ANNOUNCE README FAQ slib.info slib.texi objdoc.txi fmtdoc.txi \
- ChangeLog
+docfiles = ANNOUNCE README COPYING FAQ slib.info slib.texi schmooz.texi \
+ ChangeLog coerce.txi lineio.txi nclients.txi factor.txi minimize.txi \
+ obj2str.txi randinex.txi random.txi uri.txi db2html.txi \
+ htmlform.txi http-cgi.txi version.txi fmtdoc.txi objdoc.txi
mfiles = Makefile require.scm Template.scm syncase.sh mklibcat.scm \
- Bev2slib.scm
-ifiles = bigloo.init chez.init elk.init macscheme.init \
- mitscheme.init scheme2c.init scheme48.init gambit.init t3.init \
- vscm.init mitcomp.pat scm.init scsh.init pscheme.init STk.init \
- RScheme.init umbscheme.init
-tfiles = plottest.scm formatst.scm macrotst.scm scmactst.scm \
- dwindtst.scm structst.scm
+ Bev2slib.scm slib.spec
+ifiles = bigloo.init chez.init elk.init macscheme.init mitscheme.init \
+ scheme2c.init scheme48.init s48-0_57.init gambit.init t3.init \
+ vscm.init scm.init scsh.init pscheme.init STk.init \
+ RScheme.init DrScheme.init umbscheme.init guile.init
+tfiles = plottest.scm formatst.scm macrotst.scm dwindtst.scm
sfiles = $(ffiles) $(lfiles) $(revfiles) $(afiles) $(scfiles) $(efiles) \
- $(rfiles) $(gfiles) $(scafiles) $(dfiles)
+ $(rfiles) $(gfiles) $(scafiles) $(dfiles) $(srfiles)
allfiles = $(docfiles) $(mfiles) $(ifiles) $(sfiles) $(tfiles) $(bfiles)
makedev = make -f $(HOME)/makefile.dev
CHPAT=$(HOME)/bin/chpat
-RSYNC=rsync -v --rsync-path bin/rsync
+RSYNC=rsync -avessh
dest = $(HOME)/dist/
temp/slib: $(allfiles)
-rm -rf temp
@@ -185,18 +162,27 @@ infotemp/slib: slib.info
mkdir infotemp/slib
ln slib.info slib.info-* infotemp/slib
#For change-barred HTML.
-slib:
- unzip -a $(dest)slib[0-9]*.zip
+prevdocs: srcdir.mk Makefile
+ cd prevdocs; unzip -a $(dest)slib*.zip
+ rm prevdocs/slib/slib.info
+ cd prevdocs/slib; make slib.info; make slib_toc.html
+ cd prevdocs; mv -f slib/slib.info slib/*.html ./
+ rm -rf prevdocs/slib
distinfo: $(dest)slib.info.zip
$(dest)slib.info.zip: infotemp/slib
$(makedev) TEMP=infotemp/ DEST=$(dest) PROD=slib ver=.info zip
rm -rf infotemp
-release: dist
- cp $(srcdir)ANNOUNCE $(htmldir)SLIB_ANNOUNCE
- $(RSYNC) $(htmldir)SLIB.html $(htmldir)SLIB_ANNOUNCE nestle.ai.mit.edu:public_html/
- $(RSYNC) $(dest)README $(dest)slib$(VERSION).zip nestle.ai.mit.edu:dist/
+release: dist rpm
+ cvs tag -F slib$(VERSION)
+ cp ANNOUNCE $(htmldir)SLIB_ANNOUNCE.txt
+ cp COPYING $(htmldir)SLIB_COPYING.txt
+ $(RSYNC) $(htmldir)SLIB.html $(htmldir)SLIB_ANNOUNCE.txt \
+ $(htmldir)SLIB_COPYING.txt nestle.ai.mit.edu:public_html/
+ $(RSYNC) $(dest)README $(dest)slib$(VERSION).zip \
+ $(dest)slib-$(VERSION)-1.noarch.rpm\
+ $(dest)slib-$(VERSION)-1.src.rpm nestle.ai.mit.edu:dist/
# upload $(dest)README $(dest)slib$(VERSION).zip ftp.gnu.org:gnu/jacal/
# $(MAKE) indiana
indiana:
@@ -218,7 +204,15 @@ upzip: $(HOME)/pub/slib.zip
dist: $(dest)slib$(VERSION).zip
$(dest)slib$(VERSION).zip: temp/slib
$(makedev) DEST=$(dest) PROD=slib ver=$(VERSION) zip
- cvs tag -F slib$(VERSION)
+
+rpm: pubzip
+#$(dest)slib-$(VERSION)-1.noarch.rpm: $(dest)slib$(VERSION).zip
+ cp $(HOME)/pub/slib.zip $(rpm_prefix)SOURCES/slib$(VERSION).zip
+ rpm -ba slib.spec # --clean
+ rm $(rpm_prefix)SOURCES/slib$(VERSION).zip
+ mv $(rpm_prefix)RPMS/noarch/slib-$(VERSION)-1.noarch.rpm \
+ $(rpm_prefix)SRPMS/slib-$(VERSION)-1.src.rpm $(dest)
+
shar: slib.shar
slib.shar: temp/slib
$(makedev) PROD=slib shar
@@ -270,18 +264,29 @@ new:
mv -f change ChangeLog
$(CHPAT) slib$(VERSION) slib$(ver) ANNOUNCE FAQ ../scm/ANNOUNCE \
../jacal/ANNOUNCE ../wb/README ../wb/ANNOUNCE \
+ ../synch/ANNOUNCE \
+ $(htmldir)README.html ../dist/README \
+ $(htmldir)JACAL.html \
+ $(htmldir)SCM.html $(htmldir)Hobbit.html \
+ $(htmldir)SIMSYNCH.html ../scm/scm.texi \
+ /c/scm/dist/install.bat /c/scm/dist/makefile \
+ /c/scm/dist/mkdisk.bat
+ $(CHPAT) slib-$(VERSION) slib-$(ver) ANNOUNCE FAQ ../scm/ANNOUNCE \
+ ../jacal/ANNOUNCE ../wb/README ../wb/ANNOUNCE \
+ ../synch/ANNOUNCE \
$(htmldir)README.html ../dist/README \
- $(htmldir)SLIB.html $(htmldir)JACAL.html \
+ $(htmldir)JACAL.html \
$(htmldir)SCM.html $(htmldir)Hobbit.html \
$(htmldir)SIMSYNCH.html ../scm/scm.texi \
/c/scm/dist/install.bat /c/scm/dist/makefile \
/c/scm/dist/mkdisk.bat
$(CHPAT) $(VERSION) $(ver) README slib.texi require.scm Makefile \
- $(htmldir)SLIB.html
- cvs commit -m '(*SLIB-VERSION*): Bumped from $(VERSION) to $(ver).'
- cvs tag -F slib$(ver)
+ $(htmldir)SLIB.html slib.spec scheme48.init s48-0_57.init
+ cvs commit -lm '(*SLIB-VERSION*): Bumped from $(VERSION) to $(ver).'
+ cvs tag -lF slib$(ver)
-tagfiles = version.txi slib.texi $(mfiles) $(sfiles) $(bfiles) $(tfiles)
+tagfiles = version.txi slib.texi $(mfiles) $(sfiles) $(bfiles) $(tfiles) \
+ $(ifiles)
# README and $(ifiles) cause semgentation faults in ETAGS for Emacs version 19.
tags: $(tagfiles)
etags $(tagfiles)