diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 116 |
1 files changed, 77 insertions, 39 deletions
@@ -1,4 +1,4 @@ -# Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996 Free Software Foundation, Inc. +# Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -38,14 +38,14 @@ # whether to permit this exception to apply to your modifications. # If you do not wish that, delete this exception notice. -# "Makefile" for scm4e6 Scheme Interpreter +# "Makefile" for scm5b3 Scheme Interpreter # Author: Aubrey Jaffer SHELL = /bin/sh #CC = -CFLAGS = #-g +CFLAGS = -g #LIBS = -LD = $(CC) #-g +LD = $(CC) -g # directory where COPYING and Init.scm reside. #IMPLPATH = /usr/local/src/scm/ @@ -84,9 +84,14 @@ intro: @echo " If this reports no errors, use scmlit to build.scm" @echo " fancier versions of scm, with optional features." +cfiles = 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 ofiles = time.o repl.o scl.o sys.o eval.o subr.o unif.o rope.o \ - continue.o findexec.o + continue.o findexec.o script.o # ramap.o +ifiles = Init.scm Transcen.scm Link.scm Macro.scm all: scmlit scmlit: $(ofiles) scm.o @@ -95,9 +100,11 @@ scm.o: scm.c scm.h scmfig.h patchlvl.h scmflags.h $(CC) $(CFLAGS) -c $(DFLAG) scm.c scmflags.h: scmflags scmflags: - echo "#ifndef IMPLINIT" > scmflags.h - echo "#define IMPLINIT \"$(IMPLINIT)\"" >> scmflags.h - echo "#endif" >> scmflags.h + echo "#ifndef IMPLINIT" > newflags.h + echo "#define IMPLINIT \"$(IMPLINIT)\"" >> newflags.h + echo "#endif" >> newflags.h + -if (diff newflags.h scmflags.h) then rm newflags.h; \ + else mv newflags.h scmflags.h; fi .c.o: $(CC) -c $(CFLAGS) $< -o $@ @@ -110,17 +117,30 @@ sys.o: sys.c scm.h scmfig.h scmflags.h setjump.h time.o: time.c scm.h scmfig.h scmflags.h 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 +continue.o: continue.c continue.h setjump.h scmflags.h $(CC) $(CFLAGS) -c continue.c srcdir=$(HOME)/scm/ -udscm: - $(srcdir)build.scm -hsystem -Fcautious bignums arrays inexact \ - engineering-notation dump dynamic-linking -o udscm +udscm4: $(cfiles) build.scm + $(srcdir)build.scm -hsystem -o udscm4 -Fcautious \ + bignums arrays inexact engineering-notation dump dynamic-linking + +udscm5: $(cfiles) build.scm + $(srcdir)build.scm -hsystem -o udscm5 -Fcautious \ + bignums arrays inexact engineering-notation dump dynamic-linking \ + macro + +myscm4: udscm4 $(ifiles) + -rm slibcat implcat + -mv scm scm~ + ./udscm4 -o scm + +myscm: udscm5 $(ifiles) + -rm slibcat implcat + -mv scm scm~ + ./udscm5 -r5 -o scm -myscm: udscm $(ifiles) - ./udscm -o scm mylib: $(srcdir)build.scm -hsystem -Fcautious bignums arrays inexact \ engineering-notation dump dynamic-linking -tlib @@ -130,9 +150,10 @@ pgscm: --compiler-options=-pg --linker-options=-pg ./udscm -o pgscm mydebug: - $(srcdir)build.scm -hsystem -Fcautious bignums arrays inexact \ - engineering-notation dump dynamic-linking debug -ogdbscm \ - --compiler-options=-Wall --linker-options=-Wall + $(srcdir)build.scm -hsystem -ogdbscm -F cautious \ + bignums arrays inexact engineering-notation dump dynamic-linking \ + macro \ + debug --compiler-options=-Wall --linker-options=-Wall #-DTEST_FARLOC mydlls: $(srcdir)build.scm -h system -t dll -c sc2.c rgx.c crs.c edline.c \ record.c gsubr.c ioext.c posix.c unix.c socket.c \ @@ -140,12 +161,16 @@ mydlls: myturtle: $(srcdir)build.scm -h system -F turtlegr -t dll +implcat: *.so mkimpcat.scm + ./scmlit -lmkimpcat.scm + checklit: r4rstest.scm ./scmlit -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' check: r4rstest.scm ./scm -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' bench: - echo `whoami`@`hostname` testing scm >> BenchLog + echo `whoami`@`hostname` testing scm \ + `scm -e'(display *scm-version*)'` >> BenchLog echo on `date` >> BenchLog ls -l scm >> BenchLog size scm >> BenchLog @@ -156,7 +181,8 @@ bench: echo tail -20 BenchLog benchlit: - echo `whoami`@`hostname` testing scmlit >> BenchLog + echo `whoami`@`hostname` testing scmlit \ + `scmlit -e'(display *scm-version*)'` >> BenchLog echo on `date` >> BenchLog ls -l scmlit >> BenchLog size scmlit >> BenchLog @@ -166,6 +192,9 @@ benchlit: echo >> BenchLog echo tail -20 BenchLog +report: + scmlit -e"(slib:report #t)" + scm -e"(slib:report #t)" dvidir=../dvi/ dvi: $(dvidir)scm.dvi @@ -176,7 +205,7 @@ $(dvidir)scm.dvi: $(srcdir)scm.texi $(dvidir)scm.fn Makefile $(dvidir)scm.fn: cd $(dvidir);tex $(srcdir)scm.texi xdvi: $(dvidir)scm.dvi - xdvi -s 3 $(dvidir)scm.dvi + xdvi -s 6 $(dvidir)scm.dvi htmldir=../public_html/ html: $(htmldir)scm_toc.html $(htmldir)scm_toc.html: $(srcdir)scm.texi @@ -185,7 +214,7 @@ $(htmldir)scm_toc.html: $(srcdir)scm.texi ################ INSTALL DEFINITIONS ################ prefix = /usr/local/ -exec_prefix = $(prefix)/ +exec_prefix = $(prefix) # directory where `make install' will put executable. bindir = $(exec_prefix)bin/ libdir = $(exec_prefix)lib/ @@ -197,11 +226,11 @@ includedir = $(prefix)include/ info: $(infodir)/scm.info $(infodir)/scm.info: scm.texi makeinfo scm.texi -o $(infodir)/scm.info + -rm $(infodir)/scm.info*.gz infoz: $(infodir)/scm.info.gz $(infodir)/scm.info.gz: $(infodir)/scm.info - -rm $(infodir)/scm.info*.gz - gzip $(infodir)/scm.info* + gzip -f $(infodir)/scm.info* install: scm.1 test -d $(bindir) || mkdir $(bindir) @@ -229,7 +258,7 @@ uninstall: -rm $(includedir)scmfig.h -rm $(libdir)libscm.a # -rm $(IMPLPATH)Init.scm -# -cp $(IMPLPATH)Link.scm +# -rm $(IMPLPATH)Link.scm # -rm $(IMPLPATH)Transcen.scm # -rm $(IMPLPATH)COPYING @@ -238,23 +267,25 @@ scm.doc: scm.1 #### Stuff for maintaining SCM below #### -VERSION = 4e6 +VERSION = 5b3 ver = $(VERSION) RM_R = rm -rf -cfiles = 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 -ufiles = pre-crt0.c ecrt0.c gmalloc.c unexec.c unexelf.c +ufiles = pre-crt0.c ecrt0.c gmalloc.c unexec.c unexelf.c unexhp9k800.c \ + unexsunos4.c unexalpha.c + +# cxux-crt0.s ecrt0.c gmalloc.c pre-crt0.c unexaix.c unexalpha.c \ +# unexapollo.c unexconvex.c unexec.c unexelf.c unexelf1.c \ +# unexencap.c unexenix.c unexfx2800.c unexhp9k800.c unexmips.c \ +# unexnext.c unexnt.c unexsgi.c unexsni.c unexsunos4.c + 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 -ifiles = Init.scm Transcen.scm Link.scm tfiles = r4rstest.scm example.scm pi.scm pi.c split.scm bench.scm dfiles = ANNOUNCE README COPYING scm.1 scm.doc QUICKREF \ scm.texi ChangeLog -mfiles = Makefile build.scm build.bat +mfiles = Makefile build.scm build.bat .gdbinit mkimpcat.scm vfiles = setjump.mar setjump.s afiles = $(dfiles) $(cfiles) $(hfiles) $(ifiles) $(tfiles) $(mfiles) \ $(vfiles) $(ufiles) @@ -316,14 +347,20 @@ hobbit$(HOBBITVERSION).zip: hobtemp/scm $(makedev) TEMP=hobtemp/ name=hobbit$(HOBBITVERSION) PROD=scm zip new: + echo `date` \ 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 \ ../public_html/README.html ../dist/README \ ../public_html/SLIB.html ../public_html/JACAL.html \ ../public_html/SCM.html ../public_html/Hobbit.html \ /c/scm/dist/install.bat /c/scm/dist/makefile \ - /c/scm/dist/mkdisk.bat - $(CHPAT) $(VERSION) $(ver) README scm.texi patchlvl.h \ + /c/scm/dist/mkdisk.bat README + $(CHPAT) $(VERSION) $(ver) scm.texi patchlvl.h \ Init.scm ../public_html/SCM.html Makefile configtemp/scm: $(confiles) @@ -354,8 +391,8 @@ SED_TO_STRIP_NM=sed -e '/.*\.o$$/d' -e 's/.* _//' -e 's/.* T //' #SED_TO_STRIP_NM=sed -e '/^[A-Za-z][A-za-z0-9_]*[ |].*|extern|!d' -e 's/|/ /g' name8: name8s -name8s: scm - nm scm |\ +name8s: scmlit + nm scmlit |\ $(SED_TO_STRIP_NM) |\ sort -u|\ awk '{ if (substr(l,1,8)==substr($$1,1,8)) {\ @@ -373,12 +410,13 @@ tags: $(hfiles) $(cfiles) $(ifiles) $(vfiles) $(ufiles)\ hobbit.scm scm.texi README build.scm # $(mfiles) ChangeLog mostlyclean: clean: - -rm -f *~ *.bak *.orig *.rej core a.out ramap.o $(ofiles) scm.o \ - lints tmp* \#* *\# + -rm -f core a.out ramap.o ramap.obj $(ofiles) scm.o lints -$(RM_R) *temp distclean: clean - -rm -f $(EXECFILES) *.o a.out TAGS + -rm -f $(EXECFILES) *.o *.obj a.out TAGS implcat slibcat gdbscm realclean: distclean -rm -f scm.doc realempty: temp/scm -rm -f $(afiles) +myclean: clean + -rm -f *~ *.bak *.orig *.rej tmp* \#* *\# |