|
|
1.1 ! root 1: ########################################################################### ! 2: # This program is Copyright (C) 1986, 1987, 1988 by Jonathan Payne. JOVE # ! 3: # is provided to you without charge, and with no warranty. You may give # ! 4: # away copies of JOVE, including sources, provided that this notice is # ! 5: # included in all the files. # ! 6: ########################################################################### ! 7: ! 8: # TMPDIR is where the tmp files get stored, usually /tmp or /tmp/jove. If ! 9: # your system does not remove subdirectories of /tmp on reboot (lots do ! 10: # remove them these days) then it makes sense to make TMPDIR be /tmp/jove. ! 11: # But if you want to recover buffers on system crashes, you should create a ! 12: # directory that doesn't get clearned upon reboot, and use that instead. ! 13: # You would probably want to clean out that directory periodically with ! 14: # /etc/cron. LIBDIR is for online documentation, the PORTSRV process, ! 15: # RECOVER, and the system-wide .joverc file. BINDIR is where to put the ! 16: # executables JOVE and TEACHJOVE. MANDIR is where the manual pages go for ! 17: # JOVE, RECOVER and TEACHJOVE. MANEXT is the extension for the man pages, ! 18: # e.g., jove.1 or jove.l or jove.m. ! 19: ! 20: DESTDIR = ! 21: TMPDIR = /tmp ! 22: LIBDIR = /usr/lib/jove ! 23: BINDIR = /bin ! 24: MANDIR = /usr/man/man1 ! 25: MANEXT = 1 ! 26: SHELL = /bin/csh ! 27: ! 28: # These should all just be right if the above ones are. ! 29: JOVE = $(DESTDIR)$(BINDIR)/jove ! 30: RECOVER = $(DESTDIR)$(LIBDIR)/recover ! 31: TEACHJOVE = $(DESTDIR)$(BINDIR)/teachjove ! 32: JOVERC = $(DESTDIR)$(LIBDIR)/.joverc ! 33: CMDS.DOC = $(DESTDIR)$(LIBDIR)/cmds.doc ! 34: TEACH-JOVE = $(DESTDIR)$(LIBDIR)/teach-jove ! 35: PORTSRV = $(DESTDIR)$(LIBDIR)/portsrv ! 36: JOVEM = $(DESTDIR)$(MANDIR)/jove.$(MANEXT) ! 37: RECOVERM = $(DESTDIR)$(MANDIR)/recover.$(MANEXT) ! 38: TEACHJOVEM = $(DESTDIR)$(MANDIR)/teachjove.$(MANEXT) ! 39: ! 40: # Select the right libraries for your system. ! 41: # 2.9BSD: LIBS = -ltermlib -ljobs ! 42: # v7: LIBS = -ltermlib ! 43: # 4.1BSD: LIBS = -ltermlib -ljobs ! 44: # 4.2BSD: LIBS = -ltermlib ! 45: # 4.3BSD: LIBS = -ltermlib ! 46: ! 47: OVLIBS = -lovtermcap -lovjobs ! 48: LIBS = -ltermcap -ljobs ! 49: ! 50: # If you are not VMUNIX (vax running Berkeley Version 4), you must specify ! 51: # the -i flags (split I/D space) and maybe the -x option (for adb to work). ! 52: # 2.9BSD: LDFLAGS = -x -i ! 53: # v7: LDFLAGS = -x -i ! 54: # 4.1BSD: LDFLAGS = ! 55: # 4.2BSD: LDFLAGS = ! 56: # 4.3BSD: LDFLAGS = ! 57: ! 58: LDFLAGS = -x -i ! 59: ! 60: CFLAGS = -O -V ! 61: ! 62: COFLAGS = -rworking -q ! 63: ! 64: BASESEG = funcdefs.o keymaps.o argcount.o ask.o buf.o ctype.o delete.o disp.o fmt.o fp.o \ ! 65: insert.o io.o jove.o malloc.o marks.o misc.o move.o re.o \ ! 66: screen.o table.o tune.o util.o version.o ! 67: OVLAY1 = abbrev.o rec.o paragraph.o macros.o ! 68: OVLAY2 = c.o wind.o vars.o ! 69: OVLAY3 = extend.o ! 70: OVLAY4 = iproc.o re1.o ! 71: OVLAY5 = proc.o scandir.o term.o case.o ! 72: ! 73: OBJECTS = $(BASESEG) $(OVLAY1) $(OVLAY2) $(OVLAY3) $(OVLAY4) $(OVLAY5) ! 74: ! 75: C-FILES = funcdefs.c abbrev.c argcount.c ask.c buf.c c.c case.c ctype.c delete.c disp.c \ ! 76: extend.c fmt.c fp.c insert.c io.c iproc.c iproc-pipes.c iproc-ptys.c \ ! 77: jove.c macros.c malloc.c marks.c misc.c move.c paragraph.c proc.c \ ! 78: re.c re1.c rec.c scandir.c screen.c table.c term.c util.c vars.c version.c \ ! 79: wind.c ! 80: ! 81: H-FILES = ctype.h io.h jove.h re.h rec.h table.h temp.h termcap.h tune.h ! 82: ! 83: BACKUPS = $(C-FILES) $(H-FILES) $(DOCS) teachjove.c recover.c setmaps.c portsrv.c \ ! 84: tune.template Makefile Ovmakefile keymaps.txt README tags ! 85: ! 86: DOCS = doc/cmds.doc.nr doc/example.rc doc/jove.1 doc/jove.2 doc/jove.3 \ ! 87: doc/jove.4 doc/jove.nr doc/recover.nr doc/system.rc doc/teach-jove \ ! 88: doc/teachjove.nr doc/README ! 89: ! 90: all: xjove recover teachjove portsrv ! 91: ! 92: xjove: $(OBJECTS) ! 93: ld $(LDFLAGS) /lib/crt0.o \ ! 94: -Z $(OVLAY1) \ ! 95: -Z $(OVLAY2) \ ! 96: -Z $(OVLAY3) \ ! 97: -Z $(OVLAY4) \ ! 98: -Z $(OVLAY5) \ ! 99: -L $(BASESEG) \ ! 100: -o xjove $(OVLIBS) -lovc ! 101: checkobj xjove ! 102: @-size xjove ! 103: @-date ! 104: ! 105: portsrv: portsrv.c ! 106: cc -o portsrv -n -O portsrv.c $(LIBS) ! 107: ! 108: recover: recover.c tune.o rec.h temp.h ! 109: cc -o recover -n -O recover.c tune.o -ljobs ! 110: ! 111: teachjove: teachjove.c ! 112: cc -o teachjove -n -O -DTEACHJOVE=\"$(TEACH-JOVE)\" teachjove.c ! 113: ! 114: setmaps: setmaps.c funcdefs.c ! 115: cc -o setmaps setmaps.c ! 116: ! 117: keymaps.c: setmaps keymaps.txt ! 118: setmaps < keymaps.txt > keymaps.c ! 119: ! 120: tune.c: Makefile tune.template ! 121: @echo "/* Changes should be made in Makefile, not to this file! */" > tune.c ! 122: @echo "" >> tune.c ! 123: @sed -e 's;TMPDIR;$(TMPDIR);' \ ! 124: -e 's;LIBDIR;$(LIBDIR);' \ ! 125: -e 's;BINDIR;$(BINDIR);' \ ! 126: -e 's;SHELL;$(SHELL);' tune.template >> tune.c ! 127: ! 128: install: $(LIBDIR) $(TEACH-JOVE) $(CMDS.DOC) $(JOVERC) $(PORTSRV) $(RECOVER) \ ! 129: $(JOVE) $(TEACHJOVE) $(JOVEM) $(RECOVERM) $(TEACHJOVEM) ! 130: ! 131: $(DESTDIR)$(LIBDIR): ! 132: -mkdir (DESTDIR)$(LIBDIR) ! 133: ! 134: $(TEACH-JOVE): doc/teach-jove ! 135: install -c -m 644 doc/teach-jove $(TEACH-JOVE) ! 136: ! 137: $(CMDS.DOC): doc/cmds.doc ! 138: install -c -m 644 doc/cmds.doc $(CMDS.DOC) ! 139: ! 140: $(JOVERC): doc/system.rc ! 141: install -c -m 644 doc/system.rc $(JOVERC) ! 142: ! 143: $(PORTSRV): portsrv ! 144: install -c -m 755 portsrv $(PORTSRV) ! 145: ! 146: $(RECOVER): recover ! 147: install -c -m 755 recover $(RECOVER) ! 148: ! 149: $(JOVE): xjove ! 150: install -c -m 755 xjove $(JOVE) ! 151: ! 152: $(TEACHJOVE): teachjove ! 153: install -c -m 755 teachjove $(TEACHJOVE) ! 154: ! 155: $(JOVEM): doc/jove.nr ! 156: @sed -e 's;TMPDIR;$(TMPDIR);' \ ! 157: -e 's;LIBDIR;$(LIBDIR);' \ ! 158: -e 's;SHELL;$(SHELL);' doc/jove.nr > /tmp/jove.nr ! 159: install -m 644 /tmp/jove.nr $(JOVEM) ! 160: ! 161: $(RECOVERM): doc/recover.nr ! 162: @sed -e 's;TMPDIR;$(TMPDIR);' \ ! 163: -e 's;LIBDIR;$(LIBDIR);' \ ! 164: -e 's;SHELL;$(SHELL);' doc/recover.nr > /tmp/recover.nr ! 165: install -m 644 /tmp/recover.nr $(RECOVERM) ! 166: ! 167: $(TEACHJOVEM): doc/teachjove.nr ! 168: @sed -e 's;TMPDIR;$(TMPDIR);' \ ! 169: -e 's;LIBDIR;$(LIBDIR);' \ ! 170: -e 's;SHELL;$(SHELL);' doc/teachjove.nr > /tmp/teachjove.nr ! 171: install -m 644 /tmp/teachjove.nr $(TEACHJOVEM) ! 172: ! 173: echo: ! 174: @echo $(C-FILES) $(H-FILES) ! 175: ! 176: lint: ! 177: lint -x $(C-FILES) ! 178: echo Done ! 179: ! 180: tags: ! 181: ctags -w $(C-FILES) $(H-FILES) ! 182: ! 183: ! 184: jove.shar: ! 185: shar $(BACKUPS) doc/* > jove.shar ! 186: ! 187: backup: ! 188: tar cf backup $(BACKUPS) ! 189: ! 190: tape-backup: ! 191: tar cbf 20 /dev/rmt0 $(BACKUPS) ! 192: ! 193: clean: ! 194: rm -f a.out core $(OBJECTS) keymaps.c xjove \ ! 195: portsrv recover setmaps teachjove ! 196: ! 197: # abbrev.o: jove.h tune.h ! 198: # ask.o: jove.h tune.h ! 199: # buf.o: jove.h tune.h ! 200: # c.o: jove.h tune.h ! 201: # delete.o: jove.h tune.h ! 202: # disp.o: jove.h tune.h termcap.h ! 203: # extend.o: jove.h tune.h ! 204: # fmt.o: jove.h tune.h termcap.h ! 205: # funcdefs.o: jove.h tune.h ! 206: # insert.o: jove.h tune.h ! 207: # io.o: jove.h tune.h termcap.h temp.h ! 208: # iproc.o: jove.h tune.h ! 209: # jove.o: jove.h tune.h termcap.h ! 210: # macros.o: jove.h tune.h ! 211: # marks.o: jove.h tune.h ! 212: # misc.o: jove.h tune.h ! 213: # move.o: jove.h tune.h ! 214: # portsrv.o: jove.h tune.h ! 215: # proc.o: jove.h tune.h ! 216: # re.o: jove.h tune.h ! 217: # rec.o: jove.h tune.h temp.h rec.h ! 218: # recover.o: jove.h tune.h temp.h rec.h ! 219: # screen.o: jove.h tune.h temp.h termcap.h ! 220: # setmaps.o: jove.h tune.h ! 221: # term.o: jove.h tune.h ! 222: # tune.o: tune.h ! 223: # util.o: jove.h tune.h ! 224: # wind.o: jove.h tune.h termcap.h
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.