diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 309 |
1 files changed, 191 insertions, 118 deletions
@@ -9,146 +9,214 @@ intro: @echo "Welcome to SLIB. Read \"README\" and \"slib.info\" (or" @echo "\"slib.texi\") to learn how to install and use SLIB." @echo - @echo -make slib.info 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 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 \ - $(srcdir)schmooz.texi -xdvi: $(dvidir)slib.dvi - xdvi -s 6 $(dvidir)slib.dvi -htmldir=../public_html/ -slib_toc.html: version.txi slib.texi htmlform.txi schmooz.texi - 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_toc.html Makefile - hitch $(PREVDOCS)slib_\*.html slib_\*.html $(htmldir) +VERSION = 3a1 +RELEASE = 1 rpm_prefix=/usr/src/redhat/ - -prefix = /usr/local +prefix = /usr/local/ exec_prefix = $(prefix) -bindir = $(exec_prefix)/bin -libdir = $(exec_prefix)/lib -infodir = $(exec_prefix)/info +# directory where `make install' will put executable. +bindir = $(exec_prefix)bin/ +libdir = $(exec_prefix)lib/ +infodir = $(prefix)info/ + +PREVDOCS = prevdocs/ + +htmldir=../public_html/ +dvidir=../dvi/ + RUNNABLE = scheme48 -LIB = $(libdir)/$(RUNNABLE) +LIB = $(libdir)$(RUNNABLE)/ VM = scheme48vm IMAGE = slib.image INSTALL_DATA = install -c -$(LIB)/slibcat: - touch $(LIB)/slibcat +$(LIB)slibcat: + touch $(LIB)slibcat + +catalogs: + -if type scm; then scm -c "(require 'new-catalog)"; fi + -if type guile; then guile -l guile.init -c\ + "(use-modules (ice-9 slib)) (require 'new-catalog)"; fi + -if type umb-scheme; then export SCHEME_INIT=umbscheme.init;\ + echo "(require 'new-catalog)" | umb-scheme; fi + -if type mzscheme; then export SCHEME_LIBRARY_PATH=`pwd`/;\ + mzscheme -g -f DrScheme.init -e "(require 'new-catalog)" </dev/null; fi + -if type scheme48; then make install48; fi + +MKNMDB = (require 'color-database) (make-slib-color-name-db) (slib:exit) +clrnamdb: clrnamdb.scm +clrnamdb.scm: mkclrnam.scm Makefile + if type scm; then scm -e"$(MKNMDB)";\ + elif type guile; then guile -l guile.init -c\ + "(use-modules (ice-9 slib)) $(MKNMDB)";\ + elif type slib48; then echo -e "$(MKNMDB)\n,exit" | slib48 -h 3000000;\ + elif type umb-scheme; then export SCHEME_INIT=`pwd`/umbscheme.init;\ + echo "$(MKNMDB)" | umb-scheme;\ + elif type mzscheme; then export SCHEME_LIBRARY_PATH=`pwd`/;\ + echo "$(MKNMDB)" | mzscheme -f DrScheme.init;\ + fi 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 S48_VICINITY="$(LIB)";\ export SCHEME_LIBRARY_PATH="`pwd`/";\ scheme48 < scheme48.init install48: $(IMAGE) $(INSTALL_DATA) $(IMAGE) $(LIB) - (echo '#!/bin/sh';\ - echo exec $(RUNNABLE) -i '$(LIB)/$(IMAGE)' \"\$$\@\") \ - > $(bindir)/slib48 - chmod +x $(bindir)/slib48 + (echo '#! /bin/sh';\ + echo exec $(RUNNABLE) -i '$(LIB)$(IMAGE)' \"\$$\@\") \ + > $(bindir)slib48 + chmod +x $(bindir)slib48 + +install: + test -d $(bindir) || mkdir $(bindir) + echo '#! /bin/sh' > $(bindir)slib + echo export SCHEME_LIBRARY_PATH=$(libdir)slib/ >> $(bindir)slib + echo VERSION=$(VERSION) >> $(bindir)slib + cat slib.sh >> $(bindir)slib + chmod +x $(bindir)slib #### Stuff for maintaining SLIB below #### -VERSION = 2d2 ver = $(VERSION) version.txi: Makefile - echo @set SLIBVERSION $(VERSION) > version.txi + echo @set SLIBVERSION $(ver) > version.txi echo @set SLIBDATE `date +"%B %Y"` >> version.txi scheme = scm -htmlform.txi: *.scm - $(scheme) -rschmooz -e'(schmooz "slib.texi")' -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 - 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 - cp -a slib.info $(infodir)/slib.info - -install-info $(infodir)/slib.info $(infodir)/dir - -rm $(infodir)/slib.info.gz -infoz: installinfoz -installinfoz: $(infodir)/slib.info.gz -$(infodir)/slib.info.gz: $(infodir)/slib.info - gzip -f $(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 differ.scm -lfiles = sort.scm comlist.scm tree.scm logical.scm random.scm tsort.scm \ - coerce.scm +collect.sc: + echo "(require 'macros-that-work)" > collect.sc + echo "(require 'pprint-file)" >> collect.sc + echo "(require 'yasos)" >> collect.sc + echo "(pprint-filter-file \"collect.scm\" macwork:expand \"collectx.scm\")" >> collect.sc + echo "(slib:exit #t)" >> collect.sc + +collectx.scm: collect.scm macwork.scm collect.sc + $(scheme) < collect.sc + +ffiles = printf.scm genwrite.scm pp.scm \ + ppfile.scm strcase.scm debug.scm trace.scm \ + strport.scm scanf.scm qp.scm break.scm stdio.scm \ + strsrch.scm prec.scm schmooz.scm defmacex.scm mbe.scm +lfiles = sort.scm comlist.scm logical.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 minimize.scm cring.scm determ.scm \ + trnscrpt.scm withfile.scm dynwind.scm promise.scm \ + values.scm eval.scm null.scm +afiles = charplot.scm root.scm cring.scm \ selfset.scm psxtime.scm cltime.scm timezone.scm tzfile.scm -bfiles = collect.scm fluidlet.scm object.scm recobj.scm yasyn.scm +bfiles = fluidlet.scm object.scm recobj.scm yasyn.scm collect.scm collectx.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 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 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 db2html.scm http-cgi.scm getparam.scm glob.scm \ - fft.scm uri.scm -gfiles = tek40.scm tek41.scm -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 slib.spec +srfiles = srfi-9.scm +efiles = record.scm dynamic.scm process.scm hash.scm \ + wttree.scm wttest.scm sierpinski.scm soundex.scm simetrix.scm +rfiles = rdms.scm alistab.scm paramlst.scm \ + batch.scm crc.scm dbrowse.scm getopt.scm dbinterp.scm \ + dbcom.scm dbsyn.scm +gfiles = colorspc.scm cie1931.xyz cie1964.xyz resenecolours.txt saturate.txt + +txiscms =grapheps.scm glob.scm getparam.scm \ + vet.scm top-refs.scm hashtab.scm chap.scm comparse.scm\ + alist.scm ratize.scm modular.scm dirs.scm priorque.scm queue.scm\ + srfi.scm srfi-1.scm srfi-2.scm srfi-8.scm\ + pnm.scm http-cgi.scm htmlform.scm html4each.scm db2html.scm uri.scm\ + fft.scm solid.scm random.scm randinex.scm obj2str.scm ncbi-dna.scm\ + minimize.scm factor.scm determ.scm daylight.scm colornam.scm\ + mkclrnam.scm color.scm subarray.scm dbutil.scm array.scm transact.scm\ + arraymap.scm phil-spc.scm lineio.scm differ.scm cvs.scm tree.scm\ + coerce.scm byte.scm bytenumb.scm matfile.scm tsort.scm manifest.scm +txifiles =grapheps.txi glob.txi getparam.txi\ + vet.txi top-refs.txi hashtab.txi chap.txi comparse.txi\ + alist.txi ratize.txi modular.txi dirs.txi priorque.txi queue.txi\ + srfi.txi srfi-1.txi srfi-2.txi srfi-8.txi\ + pnm.txi http-cgi.txi htmlform.txi html4each.txi db2html.txi uri.txi\ + fft.txi solid.txi random.txi randinex.txi obj2str.txi ncbi-dna.txi\ + minimize.txi factor.txi determ.txi daylight.txi colornam.txi\ + mkclrnam.txi color.txi subarray.txi dbutil.txi array.txi transact.txi\ + arraymap.txi phil-spc.txi lineio.txi differ.txi cvs.txi tree.txi\ + coerce.txi byte.txi bytenumb.txi matfile.txi tsort.txi manifest.txi +% = `echo $(txiscms) | sed 's%.scm%.txi%g'` + +docfiles = ANNOUNCE README COPYING FAQ slib.info slib.texi schmooz.texi\ + ChangeLog version.txi object.texi $(txifiles) +mkfiles = Makefile require.scm Template.scm syncase.sh mklibcat.scm \ + Bev2slib.scm slib.spec slib.sh grapheps.ps 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 +tfiles = plottest.scm macrotst.scm dwindtst.scm sfiles = $(ffiles) $(lfiles) $(revfiles) $(afiles) $(scfiles) $(efiles) \ - $(rfiles) $(gfiles) $(scafiles) $(dfiles) $(srfiles) -allfiles = $(docfiles) $(mfiles) $(ifiles) $(sfiles) $(tfiles) $(bfiles) + $(rfiles) $(gfiles) $(scafiles) $(txiscms) $(srfiles) +allfiles = $(docfiles) $(mkfiles) $(ifiles) $(sfiles) $(tfiles) $(bfiles) + +$(txifiles): $(txiscms) schmooz.scm + $(scheme) -rschmooz -e'(schmooz "slib.texi")' + +dvi: $(dvidir)slib.dvi +$(dvidir)slib.dvi: version.txi slib.texi $(dvidir)slib.fn \ + $(txifiles) object.texi 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 \ + $(srcdir)schmooz.texi +xdvi: $(dvidir)slib.dvi + xdvi -s 3 $(dvidir)slib.dvi + +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 + +TEXI2HTML = /usr/local/bin/texi2html -split -verbose +slib_toc.html: $(txifiles) version.txi slib.texi schmooz.texi + ${TEXI2HTML} slib.texi +html: $(htmldir)slib_toc.html +$(htmldir)slib_toc.html: slib_toc.html Makefile + -rm -f slib_stoc.html + if [ -f $(PREVDOCS)slib_toc.html ]; \ + then hitch $(PREVDOCS)slib_\*.html slib_\*.html $(htmldir); \ + else cp slib_*.html $(htmldir);fi + +slib$(VERSION).info: $(txifiles) version.txi slib.texi schmooz.texi + makeinfo slib.texi --no-warn --no-split -o slib.info + mv slib.info slib$(VERSION).info +slib.info: slib$(VERSION).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 + cp -a slib.info $(infodir)slib.info + -install-info $(infodir)slib.info $(infodir)dir + -rm $(infodir)slib.info.gz +infoz: installinfoz +installinfoz: $(infodir)slib.info.gz +$(infodir)slib.info.gz: $(infodir)slib.info + gzip -f $(infodir)slib.info makedev = make -f $(HOME)/makefile.dev CHPAT=$(HOME)/bin/chpat RSYNC=rsync -avessh +UPLOADEE=swissnet_upload dest = $(HOME)/dist/ temp/slib: $(allfiles) -rm -rf temp @@ -162,27 +230,29 @@ infotemp/slib: slib.info mkdir infotemp/slib ln slib.info slib.info-* infotemp/slib #For change-barred HTML. -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 +$(PREVDOCS)slib_toc.html: +$(PREVDOCS)slib.info: srcdir.mk Makefile + cd $(PREVDOCS); unzip -ao $(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 rpm +release: dist pdf tar.gz # 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/ + $(htmldir)SLIB_COPYING.txt $(UPLOADEE):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/ + $(dest)slib$(VERSION).tar.gz $(htmldir)slib.pdf \ + $(dest)slib-$(VERSION)-$(RELEASE).noarch.rpm \ + $(dest)slib-$(VERSION)-$(RELEASE).src.rpm $(UPLOADEE):dist/ # upload $(dest)README $(dest)slib$(VERSION).zip ftp.gnu.org:gnu/jacal/ # $(MAKE) indiana indiana: @@ -195,23 +265,27 @@ indiana: postnews: echo -e "Newsgroups: comp.lang.scheme\n" | cat - ANNOUNCE | \ inews -h -O -S \ - -f "announce@docupress.com (Aubrey Jaffer & Radey Shouman)" \ + -f "announce@voluntocracy.org (Aubrey Jaffer & Radey Shouman)" \ -t "SLIB$(VERSION) Released" -d world upzip: $(HOME)/pub/slib.zip - $(RSYNC) $(HOME)/pub/slib.zip nestle.ai.mit.edu:pub/ + $(RSYNC) $(HOME)/pub/slib.zip $(UPLOADEE):pub/ dist: $(dest)slib$(VERSION).zip $(dest)slib$(VERSION).zip: temp/slib $(makedev) DEST=$(dest) PROD=slib ver=$(VERSION) zip +tar.gz: $(dest)slib$(VERSION).tar.gz +$(dest)slib$(VERSION).tar.gz: temp/slib + $(makedev) DEST=$(dest) PROD=slib ver=$(VERSION) tar.gz + rpm: pubzip -#$(dest)slib-$(VERSION)-1.noarch.rpm: $(dest)slib$(VERSION).zip +#$(dest)slib-$(VERSION)-$(RELEASE).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) + mv $(rpm_prefix)RPMS/noarch/slib-$(VERSION)-$(RELEASE).noarch.rpm \ + $(rpm_prefix)SRPMS/slib-$(VERSION)-$(RELEASE).src.rpm $(dest) shar: slib.shar slib.shar: temp/slib @@ -222,7 +296,7 @@ slib.com: temp/slib $(makedev) PROD=slib com zip: slib.zip slib.zip: temp/slib - $(makedev) PROD=slib zip + $(makedev) DEST=../ PROD=slib zip doszip: /c/scm/dist/slib$(VERSION).zip /c/scm/dist/slib$(VERSION).zip: temp/slib $(makedev) DEST=/c/scm/dist/ PROD=slib ver=$(VERSION) zip @@ -256,7 +330,7 @@ $(dest)slib-psd.tar.gz: psdtemp/slib $(makedev) DEST=$(dest) PROD=slib ver=-psd tar.gz TEMP=psdtemp/ new: - echo `date` \ Aubrey Jaffer \ \<`whoami`@`hostname`\>> change + echo `date -I` \ Aubrey Jaffer \ \<`whoami`@`hostname`\>> change echo>> change echo \ \* require.scm \(*SLIB-VERSION*\): Bumped from $(VERSION) to $(ver).>>change echo>> change @@ -267,7 +341,7 @@ new: ../synch/ANNOUNCE \ $(htmldir)README.html ../dist/README \ $(htmldir)JACAL.html \ - $(htmldir)SCM.html $(htmldir)Hobbit.html \ + $(htmldir)SCM.html \ $(htmldir)SIMSYNCH.html ../scm/scm.texi \ /c/scm/dist/install.bat /c/scm/dist/makefile \ /c/scm/dist/mkdisk.bat @@ -276,7 +350,7 @@ new: ../synch/ANNOUNCE \ $(htmldir)README.html ../dist/README \ $(htmldir)JACAL.html \ - $(htmldir)SCM.html $(htmldir)Hobbit.html \ + $(htmldir)SCM.html \ $(htmldir)SIMSYNCH.html ../scm/scm.texi \ /c/scm/dist/install.bat /c/scm/dist/makefile \ /c/scm/dist/mkdisk.bat @@ -285,19 +359,18 @@ new: cvs commit -lm '(*SLIB-VERSION*): Bumped from $(VERSION) to $(ver).' cvs tag -lF slib$(ver) -tagfiles = version.txi slib.texi $(mfiles) $(sfiles) $(bfiles) $(tfiles) \ - $(ifiles) +tagfiles = README version.txi slib.texi \ + $(mkfiles) $(sfiles) $(bfiles) $(tfiles) $(ifiles) # README and $(ifiles) cause semgentation faults in ETAGS for Emacs version 19. tags: $(tagfiles) etags $(tagfiles) test: $(sfiles) - scheme Template.scm $(sfiles) + $(scheme) Template.scm $(sfiles) rights: - scm -ladmin -e"(admin:check-all)" $(sfiles) $(tfiles) \ + $(scheme) -ladmin -e"(admin:check-all)" $(sfiles) $(tfiles) \ $(bfiles) $(ifiles) report: - scmlit -e"(slib:report #t)" - scm -e"(slib:report #t)" + $(scheme) -e"(slib:report #t)" clean: -rm -f *~ *.bak *.orig *.rej core a.out *.o \#* -rm -rf *temp |