Annotation of coherent/d/usr/bin/elvis/Makefile.mix, revision 1.1

1.1     ! root        1: # combined Makefile for ELVIS - a clone of `vi`
        !             2: #
        !             3: # After editing this Makefile as described below, you should...
        !             4: #
        !             5: # Use `make` to compile all programs
        !             6: # Use `make install` to copy the programs to the BIN directory
        !             7: # Use `make clean` to remove all object files
        !             8: # Use `make clobber` to remove everything except source & documentation
        !             9: # Use `make tags` to build new "tags" and "refs" files
        !            10: # Use `make uue` to produce uuencoded compressed tar archives of the source
        !            11: # Use `make sh` to produce shar archives of the source
        !            12: # Use `make print` to print the Elvis documentation
        !            13: #
        !            14: # Several groups of Makefile settings are included below.  Choose *ONE* group
        !            15: # of settings for your particular system, and leave the others commented out.
        !            16: # The meanings of these settings are:
        !            17: #      O       the filename extension for unlinked object files -- usually .o
        !            18: #      E       the filename extension for executable files -- usually null
        !            19: #      EXTRA   version-specific object files used in elvis
        !            20: #      EXTRA2  version-specific object files used in elvis, virec, & refont
        !            21: #      LIBS    any special libraries, such as "-ltermcap"
        !            22: #      BIN     directory where executables should be installed
        !            23: #      CC      the C compiler command, possibly with "memory model" flags
        !            24: #      CFLAGS  compiler flags used to select compile-time options
        !            25: #      OF      link flag to control the output file's name -- usually -o<space>
        !            26: #      RF      flag used to denote "compile but don't link" -- usually -c
        !            27: #      DATE    a "cc" flag that defines "DATE".  e.g. DATE=-DDATE=\"7/4/76\"
        !            28: #      EVAL    the word "eval", if DATE requires it
        !            29: #      PROGS   the list of all programs
        !            30: #      CHMEM   any extra commands to be run after ELVIS is linked
        !            31: #      SORT    if the "tags" file must be sorted, then SORT=-DSORT
        !            32: #      INST    installation method: inst.dos, inst.os9, or inst.unix
        !            33: #      RM      the name of a program that deletes files
        !            34: #      PR1     used to print documentation -- typically "refont -c"
        !            35: #      PR2     used to send text to printer -- typically "| lpr"
        !            36: #      DUMMY   usually nothing, but OS9 needs "dummy"
        !            37: #      DOC     name of "doc" directory, with a trailing slash
        !            38: 
        !            39: #---- These settings are recommended for System-V UNIX and SCO XENIX-386 ----
        !            40: #O=    .o
        !            41: #E=
        !            42: #EXTRA=
        !            43: #EXTRA2=
        !            44: #LIBS= -ltermcap
        !            45: #BIN=  /usr/local/bin
        !            46: #CFLAGS=       -DM_SYSV -O
        !            47: #OF=   -o 
        !            48: #RF=   -c
        !            49: #DATE= -DDATE=\'\"`date`\"\'
        !            50: #EVAL= eval 
        !            51: #PROGS=        elvis$E ctags$E ref$E virec$E refont$E
        !            52: #CHMEM=        
        !            53: #SORT= -DSORT
        !            54: #INST= inst.unix
        !            55: #RM=   rm -f
        !            56: #PR1=  refont -c
        !            57: #PR2=  | lp
        !            58: #DUMMY=
        !            59: #DOC=  doc/
        !            60: 
        !            61: #---- These settings are recommended for SCO XENIX-286 ----
        !            62: #O=    .o
        !            63: #E=
        !            64: #EXTRA=
        !            65: #EXTRA2=
        !            66: #LIBS= -ltermcap
        !            67: #BIN=  /usr/local/bin
        !            68: #CC=   cc -M2s -i
        !            69: #CFLAGS=       -DM_SYSV -Ox -DCS_IBMPC
        !            70: #OF=   -o 
        !            71: #RF=   -c
        !            72: #DATE= -DDATE=\'\"`date`\"\'
        !            73: #EVAL= eval 
        !            74: #PROGS=        elvis$E ctags$E ref$E virec$E refont$E
        !            75: #CHMEM=        
        !            76: #SORT= -DSORT
        !            77: #INST= inst.unix
        !            78: #RM=   rm -f
        !            79: #PR1=  refont -c
        !            80: #PR2=  | lp
        !            81: #DUMMY=
        !            82: #DOC=  doc/
        !            83: 
        !            84: #---- These settings are recommended for BSD 4.3 UNIX ----
        !            85: #O=    .o
        !            86: #E=
        !            87: #EXTRA=
        !            88: #EXTRA2=
        !            89: #LIBS= -ltermcap
        !            90: #BIN=  /usr/local/bin
        !            91: #CFLAGS=       -Dbsd -O
        !            92: #OF=   -o 
        !            93: #RF=   -c
        !            94: #DATE= -DDATE=\'\"`date`\"\'
        !            95: #EVAL= eval 
        !            96: #PROGS=        elvis$E ctags$E ref$E virec$E refont$E
        !            97: #CHMEM=        
        !            98: #SORT= -DSORT
        !            99: #INST= inst.unix
        !           100: #RM=   rm -f
        !           101: #PR1=  refont -c
        !           102: #PR2=  | lpr
        !           103: #DUMMY=
        !           104: #DOC=  doc/
        !           105: 
        !           106: #---- These settings are recommended for Coherent ----
        !           107: #O=    .o
        !           108: #E=
        !           109: #EXTRA=
        !           110: #EXTRA2=
        !           111: #LIBS= -lterm
        !           112: #BIN=  /usr/local/bin
        !           113: #CC=   cc 
        !           114: #CFLAGS=       -O -DCOHERENT -DCRUNCH -DNO_CHARATTR -DNO_CURSORSHAPE \
        !           115: #      -DNO_DIGRAPH -DNO_MKEXRC
        !           116: #OF=   -o 
        !           117: #RF=   -c
        !           118: #DATE= -DDATE=\'\"`date`\"\'
        !           119: #EVAL= eval
        !           120: #PROGS=        elvis$E ctags$E ref$E virec$E refont$E
        !           121: #CHMEM=        fixstack 2000 elvis$E
        !           122: #SORT=
        !           123: #INST= inst.unix
        !           124: #RM=   rm -f
        !           125: #PR1=  refont -c
        !           126: #PR2=  | lpr
        !           127: #DUMMY=
        !           128: #DOC=  doc/
        !           129: 
        !           130: #---- These settings are recommended for Minix-ST ----
        !           131: #O=    .o
        !           132: #E=
        !           133: #EXTRA=
        !           134: #EXTRA2=
        !           135: #LIBS=
        !           136: #BIN=  /usr/bin
        !           137: #CC=   cc
        !           138: #CFLAGS=
        !           139: #OF=   -o 
        !           140: #RF=   -c
        !           141: #DATE= -DDATE=\'\"`date`\"\'
        !           142: #EVAL= eval 
        !           143: #PROGS=        elvis$E ctags$E ref$E virec$E refont$E
        !           144: #CHMEM=        chmem =18000 elvis
        !           145: #SORT=
        !           146: #INST= inst.unix
        !           147: #RM=   rm -f
        !           148: #PR1=  lpr
        !           149: #PR2=
        !           150: #DUMMY=
        !           151: #DOC=  doc/
        !           152: 
        !           153: #---- These settings are recommended for Minix-PC ----
        !           154: #O=    .s
        !           155: #E=
        !           156: #EXTRA=        tinytcap$O
        !           157: #EXTRA2=
        !           158: #LIBS=
        !           159: #BIN=  /usr/bin
        !           160: #CC=   cc -i
        !           161: #CFLAGS=       -O -DCRUNCH -DNO_MKEXRC -DNO_CURSORSHAPE -DNO_CHARATTR \
        !           162: #      -DNO_SHOWMODE -DNO_MODELINE -DNO_OPTCOLS -DNO_DIGRAPH -DNO_ABBR \
        !           163: #      -DNO_AT -DNO_SENTENCE -DNO_ERRLIST
        !           164: #### (all but -DNO_EXTENSIONS, -DNO_RECYCLE, -DNO_MAGIC, and -DNO_CHARSEARCH)
        !           165: #OF=   -o 
        !           166: #RF=   -c
        !           167: #DATE= -DDATE=\'\"`date`\"\'
        !           168: #EVAL= eval 
        !           169: #PROGS=        elvis$E ctags$E ref$E virec$E refont$E
        !           170: #CHMEM=
        !           171: #SORT=
        !           172: #INST= inst.unix
        !           173: #RM=   rm -f
        !           174: #PR1=  lpr
        !           175: #PR2=  
        !           176: #DUMMY=
        !           177: #DOC=  doc/
        !           178: 
        !           179: #---- These settings are recommended for MS-DOS + MS-C + NDMAKE ----
        !           180: #O=    .obj
        !           181: #E=    .exe
        !           182: #EXTRA=        pc$O sysdos$O tinytcap$O
        !           183: #EXTRA2=
        !           184: #LIBS=
        !           185: #BIN=  c:\dos
        !           186: #CC=   cl /M2m
        !           187: #CFLAGS=       -O -DCS_IBMPC
        !           188: #OF=   -o 
        !           189: #RF=   -c
        !           190: #DATE=
        !           191: #EVAL=
        !           192: #PROGS=        elvis$E ex$E ctags$E ref$E virec$E wildcard$E refont$E
        !           193: #CHMEM=        
        !           194: #SORT=
        !           195: #INST= inst.dos
        !           196: #RM=   del
        !           197: #PR1=  refont -c
        !           198: #PR2=  >PRN
        !           199: #DUMMY=
        !           200: #DOC=  doc\
        !           201: 
        !           202: #---- These settings are recommended for Atari TOS + Mark Williams C ----
        !           203: #O=    .o
        !           204: #E=    .ttp
        !           205: #EXTRA=        sysdos$O tinytcap$O
        !           206: #EXTRA2=       atari$O
        !           207: #LIBS=
        !           208: #BIN=  c:\
        !           209: #CC=   cc -VPEEP
        !           210: #CFLAGS=       -O
        !           211: #OF=   -o 
        !           212: #RF=   -c
        !           213: #DATE=
        !           214: #EVAL=
        !           215: #PROGS=        elvis$E ex$E ctags$E ref$E virec$E wildcard$E shell$E refont$E
        !           216: #CHMEM=        
        !           217: #SORT=
        !           218: #INST= inst.dos
        !           219: #RM=   rm -f
        !           220: #PR1=  refont -e
        !           221: #PR2=  >PRT:
        !           222: #DUMMY=
        !           223: #DOC=  doc\
        !           224: 
        !           225: #---- These settings are recommended for OS-9/68K V2.3 ----
        !           226: #O=    .r
        !           227: #E=
        !           228: #EXTRA=        date$O
        !           229: #EXTRA2=       osk$O 
        !           230: #LIBS= -l=/dd/lib/termlib.l
        !           231: #BIN=  /dd/usr/cmds
        !           232: #CC=   cc
        !           233: #ODIR= /dd/usr/src/elvis
        !           234: #CFLAGS=       -gq -m=2
        !           235: #OF=   -f=$(ODIR)/
        !           236: #RF=   -r
        !           237: #DATE=
        !           238: #EVAL=
        !           239: #PROGS=        elvis$E vi$E view$E input$E ctags$E ref$E virec$E refont$E
        !           240: #CHMEM=        touch date.r
        !           241: #SORT=
        !           242: #INST= inst.os9
        !           243: #RM=   del *.stb *.dbg
        !           244: #PR1=  refont -b
        !           245: #PR2=  >/p
        !           246: #DUMMY=        dummy
        !           247: #DOC=  doc/
        !           248: 
        !           249: ###########################################################################
        !           250: ###########################################################################
        !           251: ###                                                                     ###
        !           252: ###     The rest of this Makefile contains no user-servicable parts     ###
        !           253: ###                                                                     ###
        !           254: ###########################################################################
        !           255: ###########################################################################
        !           256: 
        !           257: OBJS=  blk$O cmd1$O cmd2$O curses$O cut$O ex$O input$O main$O misc$O \
        !           258:        modify$O move1$O move2$O move3$O move4$O move5$O opts$O recycle$O \
        !           259:        redraw$O regexp$O regsub$O system$O tio$O tmp$O vars$O vcmd$O vi$O
        !           260: 
        !           261: ALIAS= alias$O
        !           262: 
        !           263: DOCS=  $(DOC)index.doc $(DOC)intro.doc $(DOC)visual.doc $(DOC)ex.doc \
        !           264:        $(DOC)regexp.doc $(DOC)options.doc $(DOC)cutbufs.doc $(DOC)differ.doc \
        !           265:        $(DOC)internal.doc $(DOC)cflags.doc $(DOC)termcap.doc \
        !           266:        $(DOC)environ.doc $(DOC)versions.doc
        !           267: 
        !           268: SRC1=  README $(DOC)intro.doc $(DOC)visual.doc $(DOC)ex.doc \
        !           269:        $(DOC)versions.doc $(DOC)cflags.doc $(DOC)differ.doc
        !           270: SRC2=  $(DOC)cutbufs.doc $(DOC)options.doc $(DOC)environ.doc $(DOC)regexp.doc \
        !           271:        $(DOC)internal.doc $(DOC)termcap.doc $(DOC)index.doc $(DOC)ctags.man \
        !           272:        $(DOC)elvis.man $(DOC)ref.man $(DOC)refont.man $(DOC)virec.man
        !           273: SRC3=  Elvis.lnk Elvis.mak Elvis.prj Makefile.mix alias.c atari.c \
        !           274:        ctags.c pc.c ref.c shell.c sysdos.c virec.c wildcard.c \
        !           275:        profile.sh osk.c osk.h date.c
        !           276: SRC4=  blk.c cmd1.c cmd2.c config.h curses.c
        !           277: SRC5=  curses.h cut.c ex.c input.c main.c misc.c
        !           278: SRC6=  modify.c move1.c move2.c move3.c move4.c move5.c opts.c recycle.c \
        !           279:        redraw.c 
        !           280: SRC7=  regexp.c regexp.h regsub.c system.c tinytcap.c tio.c tmp.c 
        !           281: SRC8=  vars.c vcmd.c vi.c vi.h refont.c
        !           282: 
        !           283: ###########################################################################
        !           284: 
        !           285: all: $(PROGS)
        !           286:        @echo done.
        !           287: 
        !           288: elvis$E: $(OBJS) $(EXTRA) $(EXTRA2)
        !           289:        $(CC) $(CFLAGS) $(OF)elvis$E $(OBJS) $(EXTRA) $(EXTRA2) $(LIBS)
        !           290:        -$(CHMEM)
        !           291: 
        !           292: ctags$E: ctags.c
        !           293:        $(CC) $(CFLAGS) $(SORT) $(OF)ctags$E ctags.c
        !           294: 
        !           295: ref$E: ref.c
        !           296:        $(CC) $(CFLAGS) $(OF)ref$E ref.c
        !           297: 
        !           298: virec$E: virec.c
        !           299:        $(CC) $(CFLAGS) $(OF)virec$E virec.c $(EXTRA2)
        !           300: 
        !           301: view$E: $(ALIAS)
        !           302:        $(CC) $(CFLAGS) $(OF)view$E $(ALIAS)
        !           303: 
        !           304: ex$E: $(ALIAS)
        !           305:        $(CC) $(CFLAGS) $(OF)ex$E $(ALIAS)
        !           306: 
        !           307: vi$E: $(ALIAS)
        !           308:        $(CC) $(CFLAGS) $(OF)vi$E $(ALIAS)
        !           309: 
        !           310: input$E: $(ALIAS)
        !           311:        $(CC) $(CFLAGS) $(OF)input$E $(ALIAS)
        !           312: 
        !           313: wildcard$E: wildcard.c
        !           314:        $(CC) $(CFLAGS) $(OF)wildcard$E wildcard.c
        !           315: 
        !           316: refont$E: refont.c
        !           317:        $(CC) $(CFLAGS) $(OF)refont$E refont.c $(EXTRA2)
        !           318: 
        !           319: ##############################################################################
        !           320: 
        !           321: # The file cmd1.c is compiled with the extra flag -DDATE="today's date".
        !           322: cmd1$O: cmd1.c vi.h config.h
        !           323:        $(EVAL) $(CC) $(CFLAGS) $(RF) $(DATE) cmd1.c
        !           324: 
        !           325: # "It all depends..."
        !           326: $(OBJS): vi.h curses.h config.h
        !           327: 
        !           328: # OS9 must create a custom date.c file, and compile it.
        !           329: date$O: $(OBJS)
        !           330:        @echo '/* compilation date of elvis */' >-date.c
        !           331:        @echo -r 'char date[] = "' >+date.c
        !           332:        @echo -r 'echo -r ' >-/dd/tmp/date.c
        !           333:        @date >+/dd/tmp/date.c
        !           334:        @shell /dd/tmp/date.c >+date.c
        !           335:        @echo '";' >+date.c
        !           336:        @del /dd/tmp/date.c
        !           337:        $(CC) $(CFLAGS) $(RF) date.c
        !           338: 
        !           339: ##############################################################################
        !           340: install: $(INST)
        !           341:        @echo Installation complete.
        !           342: 
        !           343: inst.unix: $(DUMMY)
        !           344:        cp $(PROGS) $(BIN)
        !           345:        (cd $(BIN); chmod 755 $(PROGS))
        !           346:        (cd $(BIN); chown bin $(PROGS))
        !           347:        -ln $(BIN)/elvis $(BIN)/vi
        !           348:        -ln $(BIN)/elvis $(BIN)/ex
        !           349:        -ln $(BIN)/elvis $(BIN)/view
        !           350:        -ln $(BIN)/elvis $(BIN)/input
        !           351: 
        !           352: inst.dos: $(DUMMY)
        !           353:        copy $(PROGS) $(BIN)
        !           354:        copy $(BIN)/ex$E $(BIN)/vi$E
        !           355:        copy $(BIN)/ex$E $(BIN)/view$E
        !           356:        copy $(BIN)/ex$E $(BIN)/input$E
        !           357: 
        !           358: inst.os9: $(DUMMY)
        !           359:        copy $(PROGS) -rw=$(BIN)
        !           360:        chd $(BIN); attr -epenprnpw $(PROGS)
        !           361: 
        !           362: ##############################################################################
        !           363: clean: $(DUMMY)
        !           364:        $(RM) *$O $(DOC)*.1 elvis?.uue elvis?.sh core
        !           365: 
        !           366: clobber: clean
        !           367:        $(RM) tags refs $(PROGS)
        !           368: 
        !           369: ##############################################################################
        !           370: print: refont$E
        !           371:        $(PR1) $(DOCS) $(PR2)
        !           372: 
        !           373: tags refs: ctags$E
        !           374:        ./ctags -r *.c *.h
        !           375: 
        !           376: ##############################################################################
        !           377: uue: elvis1.uue elvis2.uue elvis3.uue elvis4.uue elvis5.uue \
        !           378:        elvis6.uue elvis7.uue elvis8.uue
        !           379: 
        !           380: elvis1.uue: $(SRC1)
        !           381:        tar cf elvis1.tar $(SRC1)
        !           382:        compress -b13 elvis1.tar
        !           383:        cp README elvis1.uue
        !           384:        uue elvis1.tar.Z - >>elvis1.uue
        !           385:        $(RM) elvis1.tar*
        !           386: 
        !           387: elvis2.uue: $(SRC2)
        !           388:        tar cf elvis2.tar $(SRC2)
        !           389:        compress -b13 elvis2.tar
        !           390:        uue elvis2.tar.Z
        !           391:        $(RM) elvis2.tar*
        !           392: 
        !           393: elvis3.uue: $(SRC3)
        !           394:        tar cf elvis3.tar $(SRC3)
        !           395:        compress -b13 elvis3.tar
        !           396:        uuencode elvis3.tar.Z <elvis3.tar.Z >elvis3.uue
        !           397:        $(RM) elvis3.tar*
        !           398: 
        !           399: elvis4.uue: $(SRC4)
        !           400:        tar cf elvis4.tar $(SRC4)
        !           401:        compress -b13 elvis4.tar
        !           402:        uuencode elvis4.tar.Z <elvis4.tar.Z >elvis4.uue
        !           403:        $(RM) elvis4.tar*
        !           404: 
        !           405: elvis5.uue: $(SRC5)
        !           406:        tar cf elvis5.tar $(SRC5)
        !           407:        compress -b13 elvis5.tar
        !           408:        uuencode elvis5.tar.Z <elvis5.tar.Z >elvis5.uue
        !           409:        $(RM) elvis5.tar*
        !           410: 
        !           411: elvis6.uue: $(SRC6)
        !           412:        tar cf elvis6.tar $(SRC6)
        !           413:        compress -b13 elvis6.tar
        !           414:        uuencode elvis6.tar.Z <elvis6.tar.Z >elvis6.uue
        !           415:        $(RM) elvis6.tar*
        !           416: 
        !           417: elvis7.uue: $(SRC7)
        !           418:        tar cf elvis7.tar $(SRC7)
        !           419:        compress -b13 elvis7.tar
        !           420:        uuencode elvis7.tar.Z <elvis7.tar.Z >elvis7.uue
        !           421:        $(RM) elvis7.tar*
        !           422: 
        !           423: elvis8.uue: $(SRC8)
        !           424:        tar cf elvis8.tar $(SRC8)
        !           425:        compress -b13 elvis8.tar
        !           426:        uuencode elvis8.tar.Z <elvis8.tar.Z >elvis8.uue
        !           427:        $(RM) elvis8.tar*
        !           428: 
        !           429: ##############################################################################
        !           430: sh: elvis1.sh elvis2.sh elvis3.sh elvis4.sh elvis5.sh elvis6.sh \
        !           431:        elvis7.sh elvis8.sh
        !           432: 
        !           433: elvis1.sh: $(SRC1)
        !           434:        cat   >elvis1.sh README
        !           435:        echo >>elvis1.sh ': ------------------------ CUT HERE --------------------'
        !           436:        echo >>elvis1.sh 'test -d doc || mkdir doc || exit 2'
        !           437:        shar >>elvis1.sh -h $(SRC1)
        !           438: 
        !           439: elvis2.sh: $(SRC2)
        !           440:        echo  >elvis2.sh ': ------------------------ CUT HERE --------------------'
        !           441:        echo >>elvis2.sh 'test -d doc || mkdir doc || exit 2'
        !           442:        shar >>elvis2.sh -h $(SRC2)
        !           443: 
        !           444: elvis3.sh: $(SRC3)
        !           445:        shar $(SRC3) >elvis3.sh
        !           446: 
        !           447: elvis4.sh: $(SRC4)
        !           448:        shar $(SRC4) >elvis4.sh
        !           449: 
        !           450: elvis5.sh: $(SRC5)
        !           451:        shar $(SRC5) >elvis5.sh
        !           452: 
        !           453: elvis6.sh: $(SRC6)
        !           454:        shar $(SRC6) >elvis6.sh
        !           455: 
        !           456: elvis7.sh: $(SRC7)
        !           457:        shar $(SRC7) >elvis7.sh
        !           458: 
        !           459: elvis8.sh: $(SRC8)
        !           460:        shar $(SRC8) >elvis8.sh
        !           461: 
        !           462: ##############################################################################
        !           463: 
        !           464: # Under XENIX only!  This stores all sources on a 3.5" 720k floppy disk.
        !           465: floppy: $(SRC1) $(SRC2) $(SRC3) $(SRC4) $(SRC5) $(SRC6) $(SRC7) $(SRC8)
        !           466:        tar c5v $(SRC1) $(SRC2) $(SRC3) $(SRC4) $(SRC5) $(SRC6) $(SRC7) $(SRC8)

unix.superglobalmegacorp.com

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