|
|
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
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.