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