|
|
1.1 root 1: #
2: # makefile 4.1 10/9/80
3: #
4: # C Shell with process control; VM/UNIX VAX Makefile
5: # Bill Joy UC Berkeley; Jim Kulp IIASA, Austria
6: #
7: CFLAGS= -O -DTELL -DVMUNIX -Ddebug -DVFORK
8: XSTR= /usr/ucb/xstr
9: ED= -ed
10: AS= -as
11: RM= -rm
12: CXREF= /usr/ucb/cxref
13: VGRIND= csh /usr/ucb/vgrind
14: CTAGS= /usr/ucb/ctags
15: LIBES= -ljobs
16: SCCS= /usr/local/sccs
17:
18: # strings.o must be last in OBJS since it can change when previous files compile
19: OBJS= sh.o sh.dol.o sh.err.o sh.exec.o sh.exp.o sh.func.o sh.glob.o \
20: sh.hist.o sh.lex.o sh.misc.o sh.parse.o sh.print.o sh.sem.o sh.set.o \
21: sh.proc.o sh.dir.o sh.time.o alloc.o sh.init.o printf.o \
22: strings.o doprnt.o
23:
24: # Special massaging of C files for sharing of strings
25: .c.o:
26: ${CC} -E ${CFLAGS} $*.c | ${XSTR} -c -
27: ${CC} -c ${CFLAGS} x.c
28: mv x.o $*.o
29:
30: csh: ${OBJS} sh.local.h
31: rm -f csh
32: cc ${OBJS} -o csh ${LIBES}
33:
34: csh.prof: ${OBJS} sh.prof.o sh.local.h mcrt0.o
35: rm -f csh.prof
36: ld -X mcrt0.o ${OBJS} -o csh.prof ${LIBES} -lc
37:
38: sh.o.prof:
39: cp sh.c sh.prof.c
40: cc -c ${CFLAGS} -DPROF sh.prof.c
41:
42: .DEFAULT:
43: ${SCCS} get $<
44:
45: # need an old doprnt, whose output we can trap
46: doprnt.o: doprnt.c
47: cc -E doprnt.c > doprnt.s
48: as -o doprnt.o doprnt.s
49: rm -f doprnt.s
50:
51: # strings.o and sh.init.o are specially processed to be shared
52: strings.o: strings
53: ${XSTR}
54: ${CC} -c -R xs.c
55: mv xs.o strings.o
56:
57: sh.init.o:
58: ${CC} -E ${CFLAGS} sh.init.c | ${XSTR} -c -
59: ${CC} ${CFLAGS} -c -R x.c
60: mv x.o sh.init.o
61:
62: lint:
63: lint ${CFLAGS} sh*.c
64:
65: print:
66: @pr READ_ME
67: @pr makefile makefile.*
68: @(size -l a.out; size *.o) | pr -h SIZES
69: @${CXREF} sh*.c | pr -h XREF
70: @ls -l | pr
71: @pr sh*.h [a-rt-z]*.h sh*.c alloc.c
72:
73: vprint:
74: @pr -l84 READ_ME TODO
75: @pr -l84 makefile makefile.*
76: @(size -l a.out; size *.o) | pr -l84 -h SIZES
77: @${CXREF} sh*.c | pr -l84 -h XREF
78: @ls -l | pr -l84
79: @${CXREF} sh*.c | pr -l84 -h XREF
80: @pr -l84 sh*.h [a-rt-z]*.h sh*.c alloc.c
81:
82: vgrind:
83: @cp /dev/null index
84: @for i in *.h; do vgrind -t -h "C Shell" $$i >/crp/bill/csh/$$i.t; done
85: @for i in *.c; do vgrind -t -h "C Shell" $$i >/crp/bill/csh/$$i.t; done
86: @vgrind -t -x -h Index index >/crp/bill/csh/index.t
87:
88: install: csh sh.local.h
89: install -s csh ${DESTDIR}/bin/csh
90:
91: clean:
92: ${RM} -f a.out strings x.c xs.c csh
93: ${RM} -f *.o sh.prof.c
94:
95: tags: /tmp
96: ${CTAGS} sh*.c
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.