Annotation of 43BSDTahoe/new/jove/Makefile, revision 1.1.1.1

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/new/lib/jove
                     23: BINDIR = /usr/new
                     24: MANDIR = /usr/new/man/cat1
                     25: MANEXT = 0
                     26: SHELL = /bin/csh
                     27: 
                     28: # These should all just be right if the above ones are.
                     29: JOVE = $(DESTDIR)$(BINDIR)/jove
                     30: TEACHJOVE = $(DESTDIR)$(BINDIR)/teachjove
                     31: RECOVER = $(DESTDIR)$(LIBDIR)/recover
                     32: PORTSRV = $(DESTDIR)$(LIBDIR)/portsrv
                     33: JOVERC = $(DESTDIR)$(LIBDIR)/.joverc
                     34: CMDS.DOC = $(DESTDIR)$(LIBDIR)/cmds.doc
                     35: TEACH-JOVE = $(DESTDIR)$(LIBDIR)/teach-jove
                     36: JOVEM = $(DESTDIR)$(MANDIR)/jove.$(MANEXT)
                     37: TEACHJOVEM = $(DESTDIR)$(MANDIR)/teachjove.$(MANEXT)
                     38: 
                     39: # Select the right libraries for your system.
                     40: #      2.10BSD:LIBS = -ltermcap
                     41: #      v7:     LIBS = -ltermcap
                     42: #      4.1BSD: LIBS = -ltermcap -ljobs
                     43: #      4.2BSD: LIBS = -ltermcap
                     44: #      4.3BSD: LIBS = -ltermcap
                     45: #      SysV Rel. 2: LIBS = -lcurses
                     46: #      SCO Xenix: LIBS = -ltermcap -lx
                     47: 
                     48: LIBS = -ltermcap
                     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.10BSD:LDFLAGS =
                     53: #      v7:     LDFLAGS =
                     54: #      4.1BSD: LDFLAGS =
                     55: #      4.2BSD: LDFLAGS =
                     56: #      4.3BSD: LDFLAGS =
                     57: #      SysV Rel. 2: LDFLAGS = -Ml
                     58: #      SCO Xenix: LDFLAGS = -Ml -F 3000
                     59: #
                     60: # SEPFLAG should be:
                     61: #      not on a PDP-11:                SEPFLAG =
                     62: #      PDP-11 with separate I&D:       SEPFLAG = -i
                     63: #      PDP-11 without separate I&D:    SEPFLAG = -n
                     64: #
                     65: 
                     66: LDFLAGS = 
                     67: 
                     68: SEPFLAG = 
                     69: 
                     70: # for SCO Xenix, set
                     71: #      MEMFLAGS = -Mle
                     72: #      CFLAGS = -LARGE -O -F 3000 -K -Mle  (say -Mle2 for an 80286)
                     73: 
                     74: CFLAGS = -O 
                     75: 
                     76: BASESEG = funcdefs.o keymaps.o ask.o buf.o ctype.o delete.o \
                     77:          disp.o insert.o io.o jove.o marks.o misc.o re.o \
                     78:          screen.o tune.o util.o version.o
                     79: OVLAY1 = abbrev.o rec.o paragraph.o fmt.o malloc.o vars.o table.o
                     80: OVLAY2 = c.o wind.o fp.o
                     81: OVLAY3 = extend.o macros.o
                     82: OVLAY4 = iproc.o re1.o argcount.o
                     83: OVLAY5 = proc.o scandir.o term.o case.o move.o
                     84: 
                     85: OBJECTS = $(BASESEG) $(OVLAY1) $(OVLAY2) $(OVLAY3) $(OVLAY4) $(OVLAY5)
                     86: 
                     87: C_SRC = funcdefs.c abbrev.c argcount.c ask.c buf.c c.c case.c ctype.c \
                     88:        delete.c disp.c extend.c fp.c fmt.c insert.c io.c iproc.c \
                     89:        jove.c macros.c malloc.c marks.c misc.c move.c paragraph.c \
                     90:        proc.c re.c re1.c rec.c scandir.c screen.c table.c term.c util.c \
                     91:        vars.c version.c wind.c getch.c mac.c
                     92: 
                     93: SOURCES = $(C_SRC) portsrv.c recover.c setmaps.c teachjove.c
                     94: 
                     95: HEADERS = ctype.h io.h jove.h re.h rec.h table.h temp.h termcap.h \
                     96:        tune.h externs.h mac.h
                     97: 
                     98: DOCS = doc/cmds.doc.nr doc/example.rc doc/jove.1 doc/jove.2 doc/jove.3 \
                     99:        doc/jove.4 doc/jove.5 doc/jove.nr doc/system.rc \
                    100:        doc/teach-jove doc/teachjove.nr doc/README doc/jove.qref
                    101: 
                    102: MISC = Makefile Ovmakefile Makefile.dos tune.dos tune.template \
                    103:        README Readme.dos Readme.mac iproc-pipes.c iproc-ptys.c
                    104: 
                    105: SUPPORT = teachjove.c recover.c setmaps.c portsrv.c keymaps.txt \
                    106:        macvert.c menumaps.txt mjovers.Hqx
                    107: 
                    108: BACKUPS = $(HEADERS) $(C_SRC) $(DOCS) $(SUPPORT) $(MISC)
                    109: 
                    110: all:   sdate xjove recover teachjove portsrv macvert edate
                    111: 
                    112: sdate:
                    113:        @echo "**** make started at `date` ****"
                    114: 
                    115: edate:
                    116:        @echo "**** make completed at `date` ****"
                    117: 
                    118: xjove: $(OBJECTS)
                    119:        -if [ X$(SEPFLAG) = X ]; then \
                    120:                $(CC) $(LDFLAGS) -o xjove $(OBJECTS) $(LIBS); \
                    121:        elif [ X${SEPFLAG} = X-i ]; then \
                    122:                ld $(SEPFLAG) $(LDFLAGS) -X /lib/crt0.o \
                    123:                        -Z $(OVLAY1) \
                    124:                        -Z $(OVLAY2) \
                    125:                        -Z $(OVLAY3) \
                    126:                        -Z $(OVLAY4) \
                    127:                        -Z $(OVLAY5) \
                    128:                        -Y $(BASESEG) \
                    129:                        -o xjove $(LIBS) -lc; \
                    130:        else \
                    131:                echo "Need overlay scheme for nonseparate I&D"; \
                    132:        fi
                    133:        @-size xjove
                    134: 
                    135: gjove: $(OBJECTS)
                    136:        ld -X /lib/gcrt0.o -o gjove $(OBJECTS) -lc $(LIBS)
                    137:        @-size gjove
                    138: 
                    139: ovjove:        $(OBJECTS)
                    140:        ld $(SEPFLAG) $(LDFLAGS) -X /lib/crt0.o \
                    141:                -Z $(OVLAY1) \
                    142:                -Z $(OVLAY2) \
                    143:                -Z $(OVLAY3) \
                    144:                -Z $(OVLAY4) \
                    145:                -Z $(OVLAY5) \
                    146:                -Y $(BASESEG) \
                    147:                -o xjove $(LIBS) -lc; \
                    148:        @-size xjove
                    149: 
                    150: portsrv:       portsrv.o
                    151:        $(CC) $(LDFLAGS) -o portsrv $(SEPFLAG) portsrv.o $(LIBS)
                    152: 
                    153: recover:       recover.o tune.o rec.h temp.h
                    154:        $(CC) $(LDFLAGS) -o recover $(SEPFLAG) recover.o tune.o $(LIBS)
                    155: 
                    156: teachjove:     teachjove.o
                    157:        $(CC) $(LDFLAGS) -o teachjove $(SEPFLAG) teachjove.o $(LIBS)
                    158: 
                    159: setmaps:       setmaps.o funcdefs.c
                    160:        $(CC) $(LDFLAGS) -o setmaps setmaps.o
                    161: 
                    162: teachjove.o:   teachjove.c /usr/include/sys/types.h /usr/include/sys/file.h
                    163:        cc -c $(CFLAGS) -DTEACHJOVE=\"$(TEACH-JOVE)\" teachjove.c
                    164: 
                    165: # don't optimize setmaps.c because it produces bad code in some places
                    166: # for some reason
                    167: setmaps.o:     funcdefs.c keymaps.txt
                    168:        $(CC) $(MEMFLAGS) -c setmaps.c
                    169: 
                    170: # ignore error messages from setmaps
                    171: # it doesn't understand ifdefs
                    172: 
                    173: keymaps.c:     setmaps keymaps.txt
                    174:        -setmaps < keymaps.txt > keymaps.c
                    175: 
                    176: keymaps.o:     keymaps.c jove.h
                    177: 
                    178: tune.c: Makefile tune.template
                    179:        @echo "/* Changes should be made in Makefile, not to this file! */" > tune.c
                    180:        @echo "" >> tune.c
                    181:        @sed -e 's;TMPDIR;$(TMPDIR);' \
                    182:             -e 's;LIBDIR;$(LIBDIR);' \
                    183:             -e 's;BINDIR;$(BINDIR);' \
                    184:             -e 's;SHELL;$(SHELL);' tune.template >> tune.c
                    185: 
                    186: iproc.o: iproc-ptys.c iproc-pipes.c iproc.c
                    187:        $(CC) -c $(CFLAGS) iproc.c
                    188: 
                    189: macvert:       macvert.c
                    190:        $(CC) $(CFLAGS) -o macvert macvert.c
                    191: 
                    192: # install doesn't work for Xenix (no install program)
                    193: 
                    194: install: $(DESTDIR)$(LIBDIR) $(TEACH-JOVE) $(CMDS.DOC) $(JOVERC) \
                    195:         $(PORTSRV) $(RECOVER) $(JOVE) $(TEACHJOVE) $(JOVEM) \
                    196:         $(RECOVERM) $(TEACHJOVEM)
                    197: 
                    198: $(DESTDIR)$(LIBDIR):
                    199:        -mkdir $(DESTDIR)$(LIBDIR)
                    200: 
                    201: $(TEACH-JOVE): doc/teach-jove
                    202:        install -c -m 644 doc/teach-jove $(TEACH-JOVE)
                    203: 
                    204: doc/cmds.doc:  doc/cmds.doc.nr doc/jove.4 doc/jove.5
                    205:        nroff doc/cmds.doc.nr doc/jove.4 doc/jove.5 > doc/cmds.doc
                    206: 
                    207: $(CMDS.DOC): doc/cmds.doc
                    208:        install -c -m 644 doc/cmds.doc $(CMDS.DOC)
                    209: 
                    210: $(JOVERC): doc/system.rc
                    211:        install -c -m 644 doc/system.rc $(JOVERC)
                    212: 
                    213: $(PORTSRV): portsrv
                    214:        install -c -s -m 755 portsrv $(PORTSRV)
                    215: 
                    216: $(RECOVER): recover
                    217:        install -c -s -m 755 recover $(RECOVER)
                    218: 
                    219: $(JOVE): xjove
                    220:        install -c -s -m 755 xjove $(JOVE)
                    221: 
                    222: $(TEACHJOVE): teachjove
                    223:        install -c -s -m 755 teachjove $(TEACHJOVE)
                    224: 
                    225: $(JOVEM): doc/jove.nr
                    226:        @sed -e 's;TMPDIR;$(TMPDIR);' \
                    227:             -e 's;LIBDIR;$(LIBDIR);' \
                    228:             -e 's;SHELL;$(SHELL);' doc/jove.nr > /tmp/jove.nr \
                    229:        | /usr/man/manroff /tmp/jove.nr \
                    230:        > $(JOVEM)
                    231:        chmod 644 $(JOVEM)
                    232: 
                    233: $(TEACHJOVEM): doc/teachjove.nr
                    234:        @sed -e 's;TMPDIR;$(TMPDIR);' \
                    235:             -e 's;LIBDIR;$(LIBDIR);' \
                    236:             -e 's;SHELL;$(SHELL);' doc/teachjove.nr > /tmp/teachjove.nr
                    237:        install -m 644 /tmp/teachjove.nr $(TEACHJOVEM)
                    238: 
                    239: echo:
                    240:        @echo $(C-FILES) $(HEADERS)
                    241: 
                    242: lint:
                    243:        lint -n $(C_SRC) tune.c keymaps.c
                    244:        @echo Done
                    245: 
                    246: tags:
                    247:        ctags -w $(C_SRC) $(HEADERS) iproc-ptys.c
                    248: 
                    249: ciall:
                    250:        ci $(BACKUPS)
                    251: 
                    252: coall:
                    253:        co $(BACKUPS)
                    254: 
                    255: jove.shar:
                    256:        shar $(BACKUPS) > jove.shar
                    257: 
                    258: backup: $(BACKUPS)
                    259:        tar chf backup $(BACKUPS)
                    260: 
                    261: tape-backup:
                    262:        tar c $(BACKUPS)
                    263: 
                    264: srcdownload:
                    265:        kermit -s $(SUPPORT) $(MISC) $(HEADERS) $(C_SRC)
                    266: 
                    267: docdownload:
                    268:        kermit -s $(DOCS)
                    269: 
                    270: touch:
                    271:        touch $(OBJECTS)
                    272: 
                    273: clean:
                    274:        rm -f a.out core *.o keymaps.c tune.c xjove portsrv recover setmaps \
                    275:        teachjove macvert
                    276: 
                    277: # This version only works under 4.3BSD
                    278: #depend:
                    279: #      for i in ${SOURCES} ; do \
                    280: #              cc -M ${CFLAGS} $$i | awk ' { if ($$1 != prev) \
                    281: #                  { if (rec != "") print rec; rec = $$0; prev = $$1; } \
                    282: #                  else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
                    283: #                  else rec = rec " " $$2 } } \
                    284: #                  END { print rec } ' >> makedep; done
                    285: #      echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
                    286: #      echo '$$r makedep' >>eddep
                    287: #      echo 'w' >>eddep
                    288: #      cp Makefile Makefile.bak
                    289: #      ed - Makefile < eddep
                    290: #      rm eddep makedep
                    291: #      echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
                    292: #      echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
                    293: #      echo '# see make depend above' >> Makefile
                    294: #
                    295: ## DO NOT DELETE THIS LINE -- make depend uses it

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.