Annotation of 43BSD/contrib/rcs/src/Makefile, revision 1.1.1.1

1.1       root        1: 
                      2: #$Header: Makefile,v 3.5 86/05/15 02:25:37 lepreau Exp $
                      3: 
                      4: # Copyright (C) 1982 by Walter F. Tichy
                      5: #                       Purdue University
                      6: #                       Computer Science Department
                      7: #                       West Lafayette, IN 47907
                      8: #
                      9: # All rights reserved. No part of this software may be sold or distributed
                     10: # in any form or by any means without the prior written permission of the
                     11: # author.
                     12: # Report problems and direct all inquiries to
                     13: # tichy@purdue, tichy@purdue-tcp, decvax!pur-ee!purdue!tichy
                     14: 
                     15: 
                     16: #               INSTRUCTIONS
                     17: #               ============
                     18: #
                     19: # 0.  Do the instructions in rcsbase.h
                     20: #
                     21: # 1.  Figure out where to put the modified diff and diff3 commands, and
                     22: #     install them. (Read the instructions in the Make-files).
                     23: #     Define the macros DIFF and DIFF3 accordingly (below).
                     24: DIFF      = /bin/diff
                     25: DIFF3     = /usr/lib/diff3
                     26: 
                     27: # 2.  Implant the macro DIFF3 as modified by you into the file merge.
                     28: #     (That's a shell file.)
                     29: 
                     30: # 3.  Figure out where to put the RCS commands; define TARGETDIR
                     31: #     and merge accordingly.
                     32: DESTDIR=
                     33: TARGETDIR = /usr/new
                     34: MERGE     = /usr/new/merge
                     35: 
                     36: # 4.  Figure out where to put your old RCS commands; define OLDDIR
                     37: #     accordingly. This is not needed if you don't have an old release of RCS.
                     38: #     Instead, comment out the 5 lines in INSTALLNO that mv the old RCS
                     39: #     commands to OLDDIR.
                     40: OLDDIR    = /usr/old
                     41: 
                     42: # 5.  Decide what loader flags you need, and define LDFLAGS accordingly.
                     43: #     On the Vax you need none, on PDP-11s with split i/d you need -i.
                     44: LDFLAGS   =
                     45: #LDFLAGS  = -i
                     46: 
                     47: # 6.  RCS can maintain a log of the use of the co and ci commands. If you
                     48: #     want the logging, you must
                     49: #     a) define SNOOP (that's where the process that writes the log goes),
                     50: #     b) define SNOOPFILE (that's the file where SNOOP writes the log; it must
                     51: #        be owned by the same user that owns SNOOP),
                     52: #     c) include SNOOP and SNOOPFILE in the CFLAGS macro.
                     53: #     If you don't want the logging of command usage, omit the SNOOP and
                     54: #     SNOOPFILE definitions from CFLAGS.
                     55: #     The two variants of the CFLAG macros are given below.
                     56: SNOOPFILE = /usr/wft/RCSLOG/log
                     57: SNOOP     = /usr/wft/BIN/snoop
                     58: #CFLAGS    = -O -DCOMPAT2 -DDIFF='"$(DIFF)"' -DMERGE='"$(MERGE)"' -DTARGETDIR='"$(TARGETDIR)"' -DSNOOPFILE='"$(SNOOPFILE)"' -DSNOOP='"$(SNOOP)"'
                     59: CFLAGS   = -O -DDIFF='"$(DIFF)"' -DMERGE='"$(MERGE)"' -DTARGETDIR='"$(TARGETDIR)"' -DV4_2BSD
                     60: 
                     61: # 7.  If you don't have release 2 RCS files around (e.g., if you don't have
                     62: #     an old release of RCS), remove the word -DCOMPAT2 from whatever
                     63: #     variant of CFLAGS you selected. -DCOMPAT2 assures that release 2
                     64: #     RCS files can still be read. (After all release 2 RCS files have
                     65: #     been updated with release 3 ci or rcs, you can remake RCS without
                     66: #     -DCOMPAT2.) Also, make sure that the co commands at the end of this
                     67: #     file are commented out; otherwise, Make will complain.
                     68: #
                     69: # 8.  Now you are ready. Try to make all. If all went well, make
                     70: #     INSTALLW if you want the logging of command usage, INSTALLNO otherwise.
                     71: #
                     72: # 9.  IMPORTANT! When you have RCS installed, rename old RCS files as
                     73: #     follows (if you have any):
                     74: #     If the working file was "f.c" and the RCS file "f.c.v", rename the
                     75: #     RCS file to "f.c,v". If the working file was "f.c" and the RCS file
                     76: #     "f.v", rename the RCS file "f.c,v". Thus, suffixes are no longer
                     77: #     dropped and RCS files end in ",v" rather than ".v".
                     78: #
                     79: # 10. If you want to maintain RCS with itself, be sure you preserve the
                     80: #     original revision numbers, dates, etc. This is done by checking the
                     81: #     files in with the -k option. When done, remove the comments from the
                     82: #     co-rules at the end of this file.
                     83: 
                     84: OBJECTS = rcslex.o rcssyn.o rcsrev.o rcsgen.o rcssynTST.o rcsrevTST.o\
                     85:        rcsedit.o rcsutil.o rcsfnms.o co.o ci.o ident.o rlog.o rcs.o\
                     86:        rcsdiff.o rcsmerge.o rcskeep.o rcsfcmp.o snoop.o
                     87: RCSCOMMANDS = ci ident rcs rcsdiff rcsmerge rlog co sccstorcs
                     88: 
                     89: all:           merge $(RCSCOMMANDS)
                     90: 
                     91: INSTALLW:      INSTALLSNOOP INSTALLNO
                     92: 
                     93: install:       INSTALLNO
                     94: 
                     95: INSTALLNO:     merge $(RCSCOMMANDS)
                     96:                grep -v '^# ' merge | sed -e "s,^DIFF3=.*,DIFF3=$(DIFF3)," >$(DESTDIR)$(MERGE)
                     97: #              This takes out the comment lines and fixes the DIFF3 definition
                     98:                chmod 755 $(DESTDIR)$(MERGE) $(RCSCOMMANDS)
                     99: #              Save the old commands if you have any.
                    100: #              mv $(TARGETDIR)/co $(OLDDIR)/co
                    101: #              mv $(TARGETDIR)/ci $(OLDDIR)/ci
                    102: #              mv $(TARGETDIR)/rlog $(OLDDIR)/rlog
                    103: #              mv $(TARGETDIR)/rcs $(OLDDIR)/rcs
                    104: #              mv $(TARGETDIR)/ident $(OLDDIR)/ident
                    105:                for i in ${RCSCOMMANDS}; do \
                    106:                        (install -o root -s $$i ${DESTDIR}$(TARGETDIR)/$$i); done
                    107: 
                    108: INSTALLSNOOP:  snoop
                    109:                strip snoop
                    110:                mv snoop $(SNOOP)
                    111:                chmod u+s $(SNOOP)
                    112:                chmod 644 $(SNOOPFILE)
                    113: # CAUTION: You may have to do a chown of SNOOP and SNOOPFILE.
                    114: 
                    115: clean:         ; rm -f *.o $(RCSCOMMANDS) snoop
                    116: 
                    117: depend:;
                    118: 
                    119: $(OBJECTS):    rcsbase.h
                    120: 
                    121: partime.o maketime.o co.o ci.o rlog.o rcsutil.o:       time.h
                    122: 
                    123:  CI = ci.o rcslex.o rcssyn.o rcsgen.o rcsedit.o rcsrev.o rcsutil.o rcsfnms.o rcskeep.o rcsfcmp.o
                    124: ci:            $(CI); cc $(LDFLAGS) -o ci $(CI)
                    125: 
                    126: CO = co.o rcslex.o rcssyn.o rcsgen.o rcsedit.o rcsrev.o rcsutil.o rcsfnms.o partime.o maketime.o
                    127: co:            $(CO); cc $(LDFLAGS) -o co $(CO)
                    128: 
                    129: ident:         ident.o
                    130:                cc -o ident ident.o
                    131: 
                    132: RLOG = rlog.o rcslex.o rcssyn.o rcsrev.o rcsutil.o partime.o maketime.o rcsfnms.o
                    133: rlog:          $(RLOG); cc $(LDFLAGS) -o rlog $(RLOG)
                    134: 
                    135: RCS = rcs.o rcslex.o rcssyn.o rcsrev.o rcsutil.o rcsgen.o rcsedit.o rcsfnms.o
                    136: rcs:           $(RCS); cc $(LDFLAGS) -o rcs $(RCS)
                    137: 
                    138: RCSDIFF = rcsdiff.o rcsutil.o rcsfnms.o rcsrev.o rcssyn.o rcslex.o
                    139: rcsdiff:       $(RCSDIFF); cc -o rcsdiff $(RCSDIFF)
                    140: 
                    141: RCSMERGE = rcsmerge.o rcsutil.o rcsfnms.o rcsrev.o rcssyn.o rcslex.o
                    142: rcsmerge:      $(RCSMERGE); cc -o rcsmerge $(RCSMERGE)
                    143: 
                    144: SCCSTORCS = sccstorcs.o
                    145: sccstorcs:     $(SCCSTORCS); cc -o sccstorcs $(SCCSTORCS)
                    146: 
                    147: snoop:         snoop.o
                    148:                cc -o snoop snoop.o
                    149: 
                    150: PAIRTEST = rcsfnmsTST.o rcssyn.o rcslex.o
                    151: pairtest:      $(PAIRTEST); cc -o pairtest $(PAIRTEST)
                    152: 
                    153: rcsfnmsTST.o:   rcsfnms.c
                    154:                cc -c -DPAIRTEST rcsfnms.c
                    155:                mv rcsfnms.o rcsfnmsTST.o
                    156: 
                    157: REVTEST = rcsrevTST.o rcssyn.o rcslex.o
                    158: revtest:       $(REVTEST); cc $(REVTEST)
                    159:                echo "a.out ../TEST/rev.test.v <../TEST/rev.test.in >&! tmp" |csh
                    160:                diff tmp ../TEST/rev.test.out
                    161:                rm tmp
                    162:                mv a.out revtest
                    163: 
                    164: rcsrevTST.o:   rcsrev.c
                    165:                cc -c -DREVTEST rcsrev.c
                    166:                mv rcsrev.o rcsrevTST.o
                    167: 
                    168: SYNTEST = rcslex.o rcssynTST.o rcsrev.o
                    169: syntest:       $(SYNTEST); cc $(SYNTEST)
                    170:                echo "a.out ../TEST/syn.test >&! tmp" | csh
                    171:                diff tmp ../TEST/syn.result
                    172:                rm tmp
                    173:                mv a.out syntest
                    174: 
                    175: rcssynTST.o:   rcssyn.c
                    176:                cc -c -DSYNDB -DCOMPAT2 -DSYNTEST rcssyn.c
                    177:                mv rcssyn.o rcssynTST.o
                    178: 
                    179: lextest:       rcslex.c
                    180:                cc -DLEXDB rcslex.c
                    181:                echo "a.out ../TEST/lex.test >&! tmp" | csh
                    182:                diff tmp ../TEST/lex.result
                    183:                rm tmp
                    184:                mv a.out lextest
                    185: 
                    186: #rcsbase.h:    RCS/rcsbase.h,v; co -r3 rcsbase.h
                    187: #rcsedit.c:    RCS/rcsedit.c,v; co -r3 rcsedit.c
                    188: #rcsfcmp.c:    RCS/rcsfcmp.c,v; co -r3 rcsfcmp.c
                    189: #rcsfnms.c:    RCS/rcsfnms.c,v; co -r3 rcsfnms.c
                    190: #rcsgen.c:     RCS/rcsgen.c,v; co -r3 rcsgen.c
                    191: #rcskeep.c:    RCS/rcskeep.c,v; co -r3 rcskeep.c
                    192: #rcslex.c:     RCS/rcslex.c,v; co -r3 rcslex.c
                    193: #rcsrev.c:     RCS/rcsrev.c,v; co -r3 rcsrev.c
                    194: #rcssyn.c:     RCS/rcssyn.c,v; co -r3 rcssyn.c
                    195: #rcsutil.c:    RCS/rcsutil.c,v; co -r3 rcsutil.c
                    196: #ci.c:         RCS/ci.c,v; co -r3 ci.c
                    197: #co.c:         RCS/co.c,v; co -r3 co.c
                    198: #ident.c:      RCS/ident.c,v; co -r3 ident.c
                    199: #merge:                RCS/merge,v; co -r3 merge
                    200: #rcs.c:                RCS/rcs.c,v; co -r3 rcs.c
                    201: #rcsdiff.c:    RCS/rcsdiff.c,v; co -r3 rcsdiff.c
                    202: #rcsmerge.c:   RCS/rcsmerge.c,v; co -r3 rcsmerge.c
                    203: #rlog.c:               RCS/rlog.c,v; co -r3 rlog.c
                    204: #snoop.c:      RCS/snoop.c,v; co -r3 snoop.c
                    205: #time.h:               RCS/time.h,v; co -r1 time.h
                    206: #partime.c:    RCS/partime.c,v; co -r1 partime.c
                    207: #maketime.c:   RCS/maketime.c,v; co -r1 maketime.c

unix.superglobalmegacorp.com

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