diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 392 |
1 files changed, 238 insertions, 154 deletions
@@ -15,26 +15,26 @@ # the Free Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111, USA. # # As a special exception, the Free Software Foundation gives permission -# for additional uses of the text contained in its release of GUILE. +# for additional uses of the text contained in its release of SCM. # -# The exception is that, if you link the GUILE library with other files +# The exception is that, if you link the SCM library with other files # to produce an executable, this does not by itself cause the # resulting executable to be covered by the GNU General Public License. # Your use of that executable is in no way restricted on account of -# linking the GUILE library code into it. +# linking the SCM library code into it. # # This exception does not however invalidate any other reasons why # the executable file might be covered by the GNU General Public License. # # This exception applies only to the code released by the -# Free Software Foundation under the name GUILE. If you copy +# Free Software Foundation under the name SCM. If you copy # code from other Free Software Foundation releases into a copy of -# GUILE, as the General Public License permits, the exception does +# SCM, as the General Public License permits, the exception does # not apply to the code that you add in this way. To avoid misleading # anyone as to the status of such modified files, you must delete # this exception notice from them. # -# If you write modifications of your own for GUILE, it is your choice +# If you write modifications of your own for SCM, it is your choice # whether to permit this exception to apply to your modifications. # If you do not wish that, delete this exception notice. @@ -42,17 +42,39 @@ # Author: Aubrey Jaffer SHELL = /bin/sh -CPROTO = cproto -#CC = -CFLAGS = -g -O +#CC = gcc +CFLAGS = -g #LIBS = -LD = $(CC) -g -O +LD = $(CC) -g +SCMLIT = ./scmlit +SCMEXE = ./scm + +#BUILD = ./build -hsystem -p svr4-gcc-sun-ld +BUILD = ./build -hsystem + +#for RPMs +RELEASE = 1 + +intro: + @echo + @echo "This is the scm$(VERSION) distribution. Read \"scm.info\"" + @echo "to learn how to build and install SCM. Or browse" + @echo " http://swissnet.ai.mit.edu/~jaffer/SCM.html" + @echo + $(MAKE) scm + +#srcdir=$(HOME)/scm/ +#srcdir=/usr/local/src/scm/ +include srcdir.mk +srcdir.mk: Makefile + echo "CPROTO=`type cproto | sed 's%.* %%'`" > srcdir.mk + echo "srcdir=`pwd`/" >> srcdir.mk # directory where COPYING and InitXXX.scm reside. #IMPLPATH = /usr/local/src/scm/ #this one is good for bootstrapping -IMPLPATH = `pwd`/ -# Pathname where InitXXX.scm resides. +#IMPLPATH = `pwd`/ +IMPLPATH=$(srcdir) include patchlvl.h IMPLINIT = $(IMPLPATH)Init$(VERSION).scm @@ -60,30 +82,27 @@ IMPLINIT = $(IMPLPATH)Init$(VERSION).scm # SCM_INIT_PATH is the environment variable whose value is the # pathname where InitXXX.scm resides. -intro: - @echo - @echo "This is the scm$(VERSION) distribution. Read \"scm.info\"" - @echo "to learn how to build and install SCM. Or browse" - @echo " http://swissnet.ai.mit.edu/~jaffer/SCM.html" - cfiles = scmmain.c scm.c time.c repl.c ioext.c scl.c sys.c eval.c \ subr.c sc2.c unif.c rgx.c crs.c dynl.c record.c posix.c socket.c\ unix.c rope.c ramap.c gsubr.c edline.c Iedline.scm continue.c \ - findexec.c script.c + findexec.c script.c debug.c ofiles = scm.o time.o repl.o scl.o sys.o eval.o subr.o unif.o rope.o \ - continue.o findexec.o script.o + continue.o findexec.o script.o debug.o # ramap.o -ifiles = Init$(VERSION).scm Transcen.scm Link.scm Macro.scm Macroexpand.scm \ - Tscript.scm -xfiles = x.c x.h xgen.scm xevent.scm xevent.h inc2scm x11.scm +ifiles = Init$(VERSION).scm Transcen.scm Link.scm Macro.scm Macexp.scm \ + Tscript.scm compile.scm +hobfiles = hobbit.scm scmhob.scm scmhob.h +xafiles = xatoms.scm x11.scm xevent.scm keysymdef.scm +xfiles = x.c x.h xgen.scm xevent.h inc2scm $(xafiles) all: require.scm $(MAKE) mydlls - $(MAKE) myscm + $(MAKE) myscm5 + $(MAKE) x.so require.scm: cp -p requires.scm require.scm -scmlit: $(ofiles) scmmain.o require.scm +scmlit: $(ofiles) scmmain.o require.scm Makefile $(LD) -o scmlit $(ofiles) scmmain.o $(LIBS) $(MAKE) checklit scmflags.h: scmflags @@ -91,6 +110,7 @@ scmflags: echo "#ifndef IMPLINIT" > newflags.h echo "#define IMPLINIT \"$(IMPLINIT)\"" >> newflags.h echo "#endif" >> newflags.h + echo "/*#define CAUTIOUS*/" >> newflags.h -if (diff newflags.h scmflags.h) then rm newflags.h; \ else mv newflags.h scmflags.h; fi @@ -100,6 +120,7 @@ scm.o: scm.c scm.h scmfig.h scmflags.h patchlvl.h scmmain.o: scmmain.c scm.h scmfig.h scmflags.h patchlvl.h scl.o: scl.c scm.h scmfig.h scmflags.h eval.o: eval.c scm.h scmfig.h scmflags.h setjump.h +debug.o: debug.c scm.h scmfig.h scmflags.h setjump.h unif.o: unif.c scm.h scmfig.h scmflags.h #ramap.o: ramap.c scm.h scmfig.h scmflags.h repl.o: repl.c scm.h scmfig.h scmflags.h setjump.h @@ -109,17 +130,16 @@ subr.o: subr.c scm.h scmfig.h scmflags.h rope.o: rope.c scm.h scmfig.h scmflags.h continue.o: continue.c continue.h setjump.h scmflags.h -srcdir=$(HOME)/scm/ - udscm4: $(cfiles) $(hfiles) build.scm build - $(srcdir)build -hsystem -o udscm4 -s $(IMPLPATH) -Fcautious \ - bignums arrays inexact engineering-notation dump dynamic-linking + $(BUILD) -o udscm4 -s $(IMPLPATH) \ + -Fcautious bignums arrays inexact dump dynamic-linking \ + engineering-notation rm $(ofiles) scmmain.o -udscm5: $(cfiles) $(hfiles) build.scm build - $(srcdir)build -hsystem -o udscm5 -l debug -s $(IMPLPATH) -Fcautious \ - bignums arrays inexact engineering-notation dump dynamic-linking \ - macro #-DNO_SYM_GC +udscm5: $(cfiles) $(hfiles) build.scm build Makefile + $(BUILD) -o udscm5 -s $(IMPLPATH) \ + -Fcautious bignums arrays inexact dump dynamic-linking \ + macro engineering-notation #-DNO_SYM_GC rm $(ofiles) scmmain.o myscm4: udscm4 $(ifiles) require.scm @@ -127,87 +147,104 @@ myscm4: udscm4 $(ifiles) require.scm -mv scm scm~ echo "(quit)" | ./udscm4 -no-init-file -o scm -myscm: udscm5 $(ifiles) require.scm +myscm5: udscm5 $(ifiles) require.scm -rm slibcat implcat -mv scm scm~ echo "(quit)" | ./udscm5 -no-init-file -r5 -o scm $(MAKE) check + $(MAKE) checkmacro + +scm: scmlit + $(BUILD) -s $(IMPLPATH) -Fcautious bignums arrays + $(MAKE) check mylib: libscm.a libscm.a: - $(srcdir)build -hsystem -Fcautious bignums arrays inexact \ + $(BUILD) -Fcautious bignums arrays inexact \ dynamic-linking -t lib libtest: libscm.a libtest.c gcc -o libtest libtest.c libscm.a -ldl -lm -lc ./libtest pgscm: - $(srcdir)build -hsystem -s $(IMPLPATH) -Fcautious bignums arrays \ + $(BUILD) -s $(IMPLPATH) -Fcautious bignums arrays \ inexact engineering-notation dump dynamic-linking -o udscm \ --compiler-options=-pg --linker-options=-pg -DLACK_SETITIMER echo "(quit)" | ./udscm -no-init-file -o pgscm mydebug: - $(srcdir)build -hsystem -oudgdbscm -s $(IMPLPATH) -F cautious \ - bignums arrays inexact engineering-notation dump dynamic-linking \ - macro \ - debug --compiler-options=-Wall --linker-options=-Wall #-DTEST_FARLOC + $(BUILD) -oudgdbscm -s $(IMPLPATH) \ + -F cautious bignums arrays inexact engineering-notation dump \ + dynamic-linking macro debug \ + --compiler-options=-Wall --linker-options=-Wall \ + -DNO_ENV_CACHE #-DTEST_FARLOC -DTEST_SCM2PTR echo "(quit)" | ./udgdbscm -no-init-file -r5 -o gdbscm incdir=/usr/include/ -x11.scm: inc2scm Makefile +x11.scm: inc2scm rm -f x11.scm - ./inc2scm x11.scm x: $(incdir) X11/X.h X11/cursorfont.h X11/Xlib.h X11/Xutil.h -xevent.h: xgen.scm - ./xgen.scm $(incdir)X11/Xlib.h + $(SCMLIT) -l inc2scm x11.scm x: $(incdir) X11/X.h X11/cursorfont.h X11/Xlib.h \ + X11/Xutil.h +keysymdef.scm: inc2scm + rm -f keysymdef.scm + $(SCMLIT) -l inc2scm keysymdef.scm x: $(incdir) X11/keysym.h X11/keysymdef.h +xevent.h xevent.scm xatoms.scm: xgen.scm Makefile + $(SCMLIT) -l xgen.scm $(incdir)X11/Xlib.h x.h: x.c xevent.h - $(CPROTO) x.c > x.h + if [ ! -z "$(CPROTO)" ]; then $(CPROTO) x.c > x.h; fi x.so: x.c x.h xevent.h - $(srcdir)build -h system -Fx -t dll --compiler-options=-Wall -mydlls: x.so + $(BUILD) -Fx -t dll --compiler-options=-Wall +mydlls: if [ -f /usr/lib/libreadline.so ]; \ - then $(srcdir)build -h system -Fedit-line -t dll;fi - $(srcdir)build -h system -Fcurses -t dll - $(srcdir)build -h system -t dll -c sc2.c rgx.c record.c gsubr.c \ + then $(BUILD) -Fedit-line -t dll; fi + $(BUILD) -Fcurses -t dll + $(BUILD) -t dll -c sc2.c rgx.c record.c gsubr.c \ ioext.c posix.c unix.c socket.c ramap.c myturtle: - $(srcdir)build -h system -F turtlegr -t dll + $(BUILD) -Fturtlegr -t dll implcat: *.so mkimpcat.scm - ./scmlit -lmkimpcat.scm + $(SCMLIT) -lmkimpcat.scm checklit: - ./scmlit -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' + $(SCMLIT) -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' \ + -e '(or (null? errs) (quit 1))' check: r4rstest.scm - ./scm -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' + $(SCMEXE) -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' \ + -e '(or (null? errs) (quit 1))' +checkmacro: syntest1.scm syntest2.scm r4rstest.scm + $(SCMEXE) -rmacro -fsyntest1.scm -fsyntest2.scm \ + -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)' -fsyntest1 \ + -e '(or (null? errs) (quit 1))' bench: echo `whoami`@`hostname` testing scm \ - `scm -e'(display *scm-version*)'` >> BenchLog + `$(SCMEXE) -e'(display *scm-version*)'` >> BenchLog echo on `date` >> BenchLog ls -l scm >> BenchLog size scm >> BenchLog uname -a >> BenchLog - ./scm -lbench.scm + $(SCMEXE) -lbench.scm cat bench.log >> BenchLog echo >> BenchLog echo tail -20 BenchLog benchlit: echo `whoami`@`hostname` testing scmlit \ - `scmlit -e'(display *scm-version*)'` >> BenchLog + `$(SCMLIT) -e'(display *scm-version*)'` >> BenchLog echo on `date` >> BenchLog ls -l scmlit >> BenchLog size scmlit >> BenchLog uname -a >> BenchLog - ./scmlit -lbench.scm + $(SCMLIT) -lbench.scm cat bench.log >> BenchLog echo >> BenchLog echo tail -20 BenchLog report: - ./scmlit -e"(slib:report #t)" - scm -e"(slib:report #t)" + $(SCMLIT) -e"(slib:report #t)" + $(SCMEXE) -e"(slib:report #t)" +htmldir=../public_html/ dvidir=../dvi/ -dvi: $(dvidir)scm.dvi $(dvidir)Xlibscm.dvi +dvi: $(dvidir)scm.dvi $(dvidir)Xlibscm.dvi $(dvidir)hobbit.dvi $(dvidir)scm.dvi: version.txi scm.texi platform.txi features.txi\ $(dvidir)scm.fn Makefile # cd $(dvidir);export TEXINPUTS=$(srcdir):;texi2dvi $(srcdir)scm.texi @@ -215,36 +252,77 @@ $(dvidir)scm.dvi: version.txi scm.texi platform.txi features.txi\ cd $(dvidir);export TEXINPUTS=$(srcdir):;tex $(srcdir)scm.texi $(dvidir)scm.fn: cd $(dvidir);export TEXINPUTS=$(srcdir):;tex $(srcdir)scm.texi -$(dvidir)Xlibscm.dvi: version.txi Xlibscm.texi \ - $(dvidir)Xlibscm.fn Makefile +$(dvidir)Xlibscm.dvi: version.txi Xlibscm.texi $(dvidir)Xlibscm.fn Makefile # cd $(dvidir);export TEXINPUTS=$(srcdir):;texi2dvi $(srcdir)Xlibscm.texi -(cd $(dvidir);export TEXINPUTS=$(srcdir):;texindex Xlibscm.??) cd $(dvidir);export TEXINPUTS=$(srcdir):;tex $(srcdir)Xlibscm.texi $(dvidir)Xlibscm.fn: cd $(dvidir);export TEXINPUTS=$(srcdir):;tex $(srcdir)Xlibscm.texi +$(dvidir)hobbit.dvi: version.txi hobbit.texi $(dvidir)hobbit.fn Makefile +# cd $(dvidir);export TEXINPUTS=$(srcdir):;texi2dvi $(srcdir)hobbit.texi + -(cd $(dvidir);export TEXINPUTS=$(srcdir):;texindex hobbit.??) + cd $(dvidir);export TEXINPUTS=$(srcdir):;tex $(srcdir)hobbit.texi +$(dvidir)hobbit.fn: + cd $(dvidir);export TEXINPUTS=$(srcdir):;tex $(srcdir)hobbit.texi xdvi: $(dvidir)scm.dvi xdvi -s 6 $(dvidir)scm.dvi Xdvi: $(dvidir)Xlibscm.dvi xdvi -s 6 $(dvidir)Xlibscm.dvi - -htmldir=../public_html/ -html: $(htmldir)scm_toc.html $(htmldir)Xlibscm_toc.html +hobdvi: $(dvidir)hobbit.dvi + xdvi -s 6 $(dvidir)hobbit.dvi + +pdf: $(htmldir)scm.pdf $(htmldir)Xlibscm.pdf $(htmldir)hobbit.pdf +$(htmldir)scm.pdf: version.txi scm.texi platform.txi features.txi\ + $(dvidir)scm.fn Makefile + cd $(dvidir);export TEXINPUTS=$(srcdir):;pdftex $(srcdir)scm.texi + mv $(dvidir)scm.pdf $(htmldir) +$(htmldir)Xlibscm.pdf: version.txi Xlibscm.texi $(dvidir)Xlibscm.fn Makefile + cd $(dvidir);export TEXINPUTS=$(srcdir):;pdftex $(srcdir)Xlibscm.texi + mv $(dvidir)Xlibscm.pdf $(htmldir) +$(htmldir)hobbit.pdf: version.txi hobbit.texi $(dvidir)hobbit.fn Makefile + cd $(dvidir);export TEXINPUTS=$(srcdir):;pdftex $(srcdir)hobbit.texi + mv $(dvidir)hobbit.pdf $(htmldir) +xpdf: $(htmldir)scm.pdf + xpdf -z 3 $(htmldir)scm.pdf +Xpdf: $(htmldir)Xlibscm.pdf + xpdf -z 3 $(htmldir)Xlibscm.pdf +hobpdf: $(htmldir)hobbit.pdf + xpdf -z 3 $(htmldir)hobbit.pdf + +PREVDOCS = prevdocs/ +html: $(htmldir)scm_toc.html $(htmldir)Xlibscm_toc.html $(htmldir)hobbit_toc.html scm_toc.html: version.txi scm.texi platform.txi features.txi texi2html -split -verbose scm.texi -Xlibscm_toc.html: $(htmldir)Xlibscm_toc.html -$(htmldir)Xlibscm_toc.html: version.txi Xlibscm.texi - cd $(htmldir);texi2html -split -verbose $(srcdir)Xlibscm.texi - -scmprev/scm_toc.html: -# cd scmprev;make scm_toc.html - cd scmprev;texi2html -split -verbose scm.texi - -$(htmldir)scm_toc.html: scmprev/scm_toc.html scm_toc.html Makefile - hitch scmprev/scm_\*.html scm_\*.html $(htmldir) +Xlibscm_toc.html: version.txi Xlibscm.texi + texi2html -split -verbose Xlibscm.texi +hobbit_toc.html: version.txi hobbit.texi + texi2html -split -verbose hobbit.texi + +$(htmldir)scm_toc.html: scm_toc.html Makefile + -rm -f scm_stoc.html + if [ -f $(PREVDOCS)scm_toc.html ]; \ + then hitch $(PREVDOCS)scm_\*.html scm_\*.html $(htmldir); \ + else cp scm_*.html $(htmldir); fi +$(htmldir)Xlibscm_toc.html: Xlibscm_toc.html Makefile + -rm -f Xlibscm_stoc.html + cp Xlibscm_*.html $(htmldir) +$(htmldir)hobbit_toc.html: hobbit_toc.html Makefile + -rm -f hobbit_stoc.html + cp hobbit_*.html $(htmldir) + +$(PREVDOCS)scm_toc.html: +$(PREVDOCS)scm.info: srcdir.mk Makefile + cd $(PREVDOCS); unzip -a $(dest)scm*.zip + rm $(PREVDOCS)scm/scm.info + cd $(PREVDOCS)scm; make scm.info; make scm_toc.html + cd $(PREVDOCS); mv -f scm/scm.info scm/*.html ./ + rm -rf $(PREVDOCS)scm ################ INSTALL DEFINITIONS ################ +rpm_prefix=/usr/src/redhat/ + prefix = /usr/local/ exec_prefix = $(prefix) # directory where `make install' will put executable. @@ -258,23 +336,22 @@ infodir = $(prefix)info/ includedir = $(prefix)include/ README: build build.scm scm.info - scm -l build -e"(make-readme)" + $(SCMEXE) -l build -e"(make-readme)" info: installinfo -installinfo: $(infodir)scm.info $(infodir)Xlibscm.info +installinfo: $(infodir)scm.info $(infodir)Xlibscm.info $(infodir)hobbit.info platform.txi: build.scm - ./scmlit -r database-browse -l build.scm -e "(browse build 'platform)" \ + $(SCMLIT) -r database-browse -l build.scm -e "(browse build 'platform)" \ > platform.txi -features.txi: build.features build.scm - ./scmlit -l build.features -e"(make-features-txi)" -scm$(VERSION).info: version.txi scm.texi platform.txi features.txi - -mv scm.info scmtemp.info +features.txi: build build.scm + $(SCMLIT) -l build -e"(make-features-txi)" +scm.info: version.txi scm.texi platform.txi features.txi makeinfo scm.texi --no-split -o scm.info mv scm.info scm$(VERSION).info - -mv scmtemp.info scm.info -scm.info: scm$(VERSION).info -# infobar scmprev/scm.info scm$(VERSION).info scm.info + if [ -f $(PREVDOCS)scm.info ]; \ + then infobar $(PREVDOCS)scm.info scm$(VERSION).info scm.info; \ + else cp scm$(VERSION).info scm.info; fi $(infodir)scm.info: scm.info cp -p scm.info $(infodir)scm.info -install-info $(infodir)scm.info $(infodir)dir @@ -282,45 +359,52 @@ $(infodir)scm.info: scm.info Xlibscm.info: version.txi Xlibscm.texi makeinfo Xlibscm.texi --no-split -o Xlibscm.info -$(infodir)Xlibscm.info: +$(infodir)Xlibscm.info: Xlibscm.info cp Xlibscm.info $(infodir)Xlibscm.info -install-info $(infodir)Xlibscm.info $(infodir)/dir -rm $(infodir)Xlibscm.info*.gz +hobbit.info: version.txi hobbit.texi + makeinfo hobbit.texi --no-split -o hobbit.info +$(infodir)hobbit.info: hobbit.info + cp hobbit.info $(infodir)hobbit.info + -install-info $(infodir)hobbit.info $(infodir)/dir + -rm $(infodir)hobbit.info*.gz + infoz: installinfoz -installinfoz: $(infodir)scm.info.gz $(infodir)Xlibscm.info.gz +installinfoz: $(infodir)scm.info.gz $(infodir)Xlibscm.info.gz $(infodir)hobbit.info.gz $(infodir)scm.info.gz: $(infodir)scm.info gzip -f $(infodir)scm.info $(infodir)Xlibscm.info.gz: $(infodir)Xlibscm.info gzip -f $(infodir)Xlibscm.info +$(infodir)hobbit.info.gz: $(infodir)hobbit.info + gzip -f $(infodir)hobbit.info install: scm.1 test -d $(bindir) || mkdir $(bindir) test -d $(mandir) || mkdir $(mandir) test -d $(man1dir) || mkdir $(man1dir) - -cp scm $(bindir) -# -strip $(bindir)scm + -cp scm scmlit $(bindir) + -strip $(bindir)scmlit -cp scm.1 $(man1dir) test -d $(libdir) || mkdir $(libdir) test -d $(libscmdir) || mkdir $(libscmdir) - -cp Init$(VERSION).scm Link.scm Transcen.scm Macro.scm Tscript.scm \ - COPYING $(libscmdir) + -cp $(ifiles) $(hobfiles) COPYING r4rstest.scm $(libscmdir) test -f $(libscmdir)require.scm || \ cp requires.scm $(libscmdir)require.scm - -cp mkimpcat.scm Iedline.scm *.sl *.so $(libscmdir) + -cp build build.scm mkimpcat.scm Iedline.scm *.sl *.so $(xafiles)\ + $(libscmdir) installlib: test -d $(includedir) || mkdir $(includedir) - cp scm.h $(includedir)scm.h - cp scmfig.h $(includedir)scmfig.h + cp scm.h scmfig.h scmflags.h $(includedir) test -d $(libdir) || mkdir $(libdir) cp libscm.a $(libdir)libscm.a uninstall: -rm $(bindir)scm -rm $(man1dir)scm.1 - -rm $(includedir)scm.h - -rm $(includedir)scmfig.h + -rm $(includedir)scm.h $(includedir)scmfig.h $(includedir)scmflags.h -rm $(libdir)libscm.a # -rm $(libscmdir)Init$(VERSION).scm # -rm $(libscmdir)Link.scm @@ -350,18 +434,20 @@ confiles = scmconfig.h.in mkinstalldirs acconfig-1.5.h install-sh \ configure configure.in Makefile.in COPYING README.unix hfiles = scm.h scmfig.h setjump.h patchlvl.h continue.h -tfiles = r4rstest.scm example.scm pi.scm pi.c split.scm bench.scm +tfiles = r4rstest.scm example.scm pi.scm pi.c split.scm bench.scm \ + syntest2.scm syntest1.scm dfiles = ANNOUNCE README COPYING scm.1 scm.doc QUICKREF \ - scm.info scm.texi Xlibscm.info Xlibscm.texi ChangeLog + scm.info scm.texi Xlibscm.info Xlibscm.texi hobbit.info hobbit.texi \ + ChangeLog mfiles = Makefile build.scm build build.bat requires.scm \ - .gdbinit mkimpcat.scm disarm.scm + .gdbinit mkimpcat.scm disarm.scm scm.spec vfiles = setjump.mar setjump.s afiles = $(dfiles) $(cfiles) $(hfiles) $(ifiles) $(tfiles) $(mfiles) \ - $(vfiles) $(ufiles) $(xfiles) + $(hobfiles) $(vfiles) $(ufiles) $(xfiles) makedev = make -f $(HOME)/makefile.dev CHPAT=$(HOME)/bin/chpat -RSYNC=rsync -v --rsync-path bin/rsync +RSYNC=rsync -avessh dest = $(HOME)/dist/ temp/scm: $(afiles) -$(RM_R) temp @@ -369,10 +455,13 @@ temp/scm: $(afiles) mkdir temp/scm ln $(afiles) temp/scm -release: dist - cp $(srcdir)ANNOUNCE $(htmldir)SCM_ANNOUNCE - $(RSYNC) $(htmldir)SCM.html $(htmldir)SCM_ANNOUNCE nestle.ai.mit.edu:public_html/ - $(RSYNC) $(dest)README $(dest)scm$(VERSION).zip nestle.ai.mit.edu:dist/ +release: dist rpm + cvs tag -F scm$(VERSION) + cp $(srcdir)ANNOUNCE $(htmldir)SCM_ANNOUNCE.txt + $(RSYNC) $(htmldir)SCM.html $(htmldir)SCM_ANNOUNCE.txt nestle.ai.mit.edu:public_html/ + $(RSYNC) $(dest)README $(dest)scm$(VERSION).zip \ + $(dest)scm-$(VERSION)-$(RELEASE).src.rpm $(dest)scm-$(VERSION)-$(RELEASE).i386.rpm \ + nestle.ai.mit.edu:dist/ # upload $(dest)README $(dest)scm$(VERSION).zip ftp.gnu.org:gnu/jacal/ # $(MAKE) indiana indiana: @@ -385,7 +474,7 @@ 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 "SCM$(VERSION) Released" -d world upzip: $(HOME)/pub/scm.zip @@ -394,7 +483,15 @@ upzip: $(HOME)/pub/scm.zip dist: $(dest)scm$(VERSION).zip $(dest)scm$(VERSION).zip: temp/scm $(makedev) DEST=$(dest) PROD=scm ver=$(VERSION) zip - cvs tag -F scm$(VERSION) + +rpm: pubzip +# $(dest)scm-$(VERSION)-$(RELEASE).i386.rpm: $(dest)scm$(VERSION).zip + cp -f $(HOME)/pub/scm.zip $(rpm_prefix)SOURCES/scm$(VERSION).zip + rpm -ba scm.spec # --clean + rm $(rpm_prefix)SOURCES/scm$(VERSION).zip + mv $(rpm_prefix)RPMS/i386/scm-$(VERSION)-$(RELEASE).i386.rpm \ + $(rpm_prefix)SRPMS/scm-$(VERSION)-$(RELEASE).src.rpm $(dest) + shar: scm.shar scm.shar: temp/scm $(makedev) PROD=scm shar @@ -410,7 +507,7 @@ doszip: /c/scm/dist/scm$(VERSION).zip $(makedev) DEST=/c/scm/dist/ PROD=scm ver=$(VERSION) zip cd ..; zip -9ur /c/scm/dist/scm$(VERSION).zip \ scm/turtle scm/turtlegr.c scm/grtest.scm - zip -d /c/scm/dist/scm$(VERSION).zip scm/scm.info scm/Xlibscm.info + zip -d /c/scm/dist/scm$(VERSION).zip scm/scm.info scm/Xlibscm.info scm/hobbit.info pubzip: $(HOME)/pub/scm.zip $(HOME)/pub/scm.zip: temp/scm $(makedev) DEST=$(HOME)/pub/ PROD=scm zip @@ -421,45 +518,31 @@ pubdiffs: temp/scm distdiffs: temp/scm $(makedev) DEST=$(dest) PROD=scm ver=$(ver) distdiffs +CITERS = ANNOUNCE ../jacal/ANNOUNCE \ + ../wb/README ../wb/ANNOUNCE ../synch/ANNOUNCE \ + $(htmldir)README.html ../dist/README \ + $(htmldir)SLIB.html $(htmldir)JACAL.html \ + $(htmldir)SCM.html $(htmldir)SIMSYNCH.html \ + ../jacal/jacal.texi ../wb/wb.texi \ + /c/scm/dist/install.bat /c/scm/dist/makefile \ + /c/scm/dist/mkdisk.bat hobbit.texi hobbit.scm + +updates: Init$(ver).scm + $(CHPAT) scm$(VERSION) scm$(ver) $(CITERS) + $(CHPAT) scm-$(VERSION) scm-$(ver) $(CITERS) + $(CHPAT) $(VERSION) $(ver) ../wb/wb.spec $(htmldir)SCM.html scm.spec + +Init$(ver).scm: + mv -f Init$(VERSION).scm Init$(ver).scm + $(CHPAT) $(VERSION) $(ver) patchlvl.h Init$(ver).scm -HOBBITVERSION = 5x -hobfiles = README.hob hobbit.doc hobbit.tms hobbit.scm scmhob.h -#hobfiles = hobbit.doc COPYING Makefile.hob hobbit.scm scmhob.h scmhob.scm - -hobtemp/scm: $(hobfiles) - -$(RM_R) hobtemp - mkdir hobtemp - mkdir hobtemp/scm - ln $(hobfiles) hobtemp/scm - -hobdist: $(dest)hobbit$(HOBBITVERSION).zip -$(dest)hobbit$(HOBBITVERSION).zip: hobtemp/scm - $(makedev) DEST=$(dest) PROD=scm ver=-hob$(HOBBITVERSION) \ - zip TEMP=hobtemp/ - mv $(dest)scm-hob$(HOBBITVERSION).zip \ - $(dest)hobbit$(HOBBITVERSION).zip -hobbit$(HOBBITVERSION).zip: hobtemp/scm - $(makedev) TEMP=hobtemp/ name=hobbit$(HOBBITVERSION) PROD=scm zip - -new: - echo `date` \ Aubrey Jaffer \ \<`whoami`@`hostname`\>> change +new: updates + echo `date -I` \ Aubrey Jaffer \ \<`whoami`@`hostname`\>> change echo>> change echo \ \* patchlvl.h \(SCMVERSION\): Bumped from $(VERSION) to $(ver).>>change echo>> change cat ChangeLog >> change mv -f change ChangeLog - $(CHPAT) scm$(VERSION) scm$(ver) ANNOUNCE ../jacal/ANNOUNCE \ - ../wb/README ../wb/ANNOUNCE \ - $(htmldir)README.html ../dist/README \ - $(htmldir)SLIB.html $(htmldir)JACAL.html \ - $(htmldir)SCM.html $(htmldir)Hobbit.html \ - $(htmldir)SIMSYNCH.html \ - /c/scm/dist/install.bat /c/scm/dist/makefile \ - /c/scm/dist/mkdisk.bat hobbit.doc - cp -f hobbit.doc $(htmldir)hobbit.txt - mv -f Init$(VERSION).scm Init$(ver).scm - $(CHPAT) $(VERSION) $(ver) patchlvl.h \ - Init$(ver).scm $(htmldir)SCM.html cvs remove Init$(VERSION).scm cvs add Init$(ver).scm cvs commit -m 'Init$(VERSION).scm changed to Init$(ver).scm' \ @@ -505,23 +588,24 @@ name8s: scmlit }else p=1;\ l=$$1\ }END{exit stat}' - -ctags: $(hfiles) $(cfiles) $(xfiles) - etags $(hfiles) $(cfiles) $(xfiles) -TAGS: -tags: $(hfiles) $(cfiles) $(ifiles) $(vfiles) turtlegr.c\ - version.txi scm.texi Xlibscm.texi build.scm build $(xfiles) -# # $(ufiles) $(mfiles) ChangeLog hobbit.scm - etags $(hfiles) $(cfiles) $(ifiles) $(vfiles) turtlegr.c\ - Xlibscm.texi scm.texi build.scm build $(xfiles) -# # $(ufiles) $(mfiles) ChangeLog hobbit.scm + +ctagfiles = $(hfiles) $(cfiles) $(xfiles) +ctags: $(ctagfiles) + etags $(ctagfiles) + +TAGFILES = $(hfiles) $(cfiles) $(ifiles) $(vfiles)\ + version.txi scm.texi Xlibscm.texi hobbit.texi build $(xfiles) $(mfiles) +# # $(ufiles) ChangeLog hobbit.scm +TAGS: $(TAGFILES) + etags $(TAGFILES) +tags: TAGS + mostlyclean: clean: -rm -f core a.out ramap.o ramap.obj $(ofiles) scmmain.o lints -$(RM_R) *temp - -rm -f scm$(VERSION).info - distclean: clean - -rm -f $(EXECFILES) *.o *.obj a.out implcat slibcat gdbscm TAGS + -rm -f $(EXECFILES) *.o *.obj a.out TAGS implcat slibcat gdbscm realclean: distclean -rm -f scm.doc realempty: temp/scm |