|
|
1.1 root 1: #
2: # Makefile for Berkeley Virtual Vax/Unix, February 1981
3: #
4: # This makefile is constructed from a machine description:
5: # config machine
6: # Most changes should be made in the machine description
7: # /usr/sys/conf/``machineid''
8: # after which you should do
9: # config machineid
10: # Generic makefile changes should be made in
11: # /usr/sys/conf/makefile
12: # after which config should be rerun for all machines.
13: #
14: # N.B.: NO DEPENDENCIES ON FOLLOWING FLAGS ARE VISIBLE TO MAKEFILE
15: # IF YOU CHANGE THE DEFINITION OF ANY OF THESE RECOMPILE EVERYTHING
16: #
17: # -DINSECURE old style non-vanishing suid bits
18: # -DUNFAST don't compile in inline expansions and speedups
19: # -DPGINPROF gather statistics about pagein/pageout activity
20: # -DDISKMON monitor disk cacheing activity (bio.c)
21: # -DINTRLVE compile in code for file systems interleaved across drives
22: # -DTRACE compile in kernel tracing hooks
23: #
24: C2= /lib/c2
25:
26: COPTS= ${IDENT} -DKERNEL -DVMUNIX
27: CFLAGS= -O ${COPTS}
28:
29: AHEADS= ../h/pcb.m
30:
31: %OBJS
32:
33: %CFILES
34:
35: %LOAD
36:
37: clean:
38: rm -f eddep *vmunix* tags *.o locore.i [a-tv-z]*.s touch errs linterrs
39:
40: lint: /tmp
41: @lint -hbxn -I. -DGENERIC ${COPTS} ../sys/Locore.c \
42: ${CFILES} ../dev/swapgeneric.c ioconf.c | \
43: grep -v 'struct/union .* never defined' | \
44: grep -v 'possible pointer alignment problem'
45:
46: ../sys/symbols.sort: ../sys/symbols.raw
47: grep -v '^#' ../sys/symbols.raw \
48: | sed 's/^ //' | sort | uniq > ../sys/symbols.sort
49:
50: locore.o: assym.s ${AHEADS} ../sys/scb.s ../sys/locore.s ubglue.s \
51: ../h/mtpr.h ../h/trap.h ../h/psl.h ../h/pte.h ../h/cpu.h ../h/mtpr.h mba.h
52: cat assym.s ../sys/scb.s ../sys/locore.s ubglue.s > locore.c
53: cc -E -DLOCORE ${COPTS} locore.c > locore.i
54: @echo 'as -o locore.o $${AHEADS} locore.i'
55: @as -o locore.o ${AHEADS} locore.i
56: @rm locore.i
57:
58: # the following is necessary because autoconf.o depends on #if GENERIC
59: autoconf.o: makefile
60:
61: # the following are necessary because the files depend on the types of
62: # vax cpu's included in the system configuration
63: clock.o machdep.o autoconf.o conf.o cons.o flp.o mba.o uba.o vaxcpu.o : makefile
64:
65: assym.s: ../h/param.h ../h/pte.h ../h/buf.h ../h/vmparam.h ../h/vmmeter.h \
66: ../h/dir.h ../h/cmap.h ../h/map.h ../h/ubavar.h ../h/proc.h
67: cc ${IDENT} ../conf/genassym.c; ./a.out >assym.s; rm -f a.out
68:
69: ../h/param.h: /usr/include/signal.h touch
70: ./touch ../h/param.h
71: ../h/tty.h: /usr/include/sgtty.h ../h/ioctl.h touch
72: ./touch ../h/tty.h
73: ../h/user.h: ../h/pcb.h ../h/dmap.h ../h/vtimes.h ../h/types.h \
74: /usr/include/errno.h touch
75: ./touch ../h/user.h
76: ../h/vm.h: ../h/vmmac.h ../h/vmmeter.h ../h/vmparam.h ../h/vmsystm.h touch
77: ./touch ../h/vm.h
78: ../sys/sysent.c: ../sys/vmsysent.c touch
79: ./touch ../sys/sysent.c
80:
81: touch: ../conf/touch.c
82: cc ../conf/touch.c -o touch
83:
84: depend:
85: grep '^#include' ${CFILES} | grep -v '<' | \
86: sed 's/:[^"]*"\([^"]*\)".*/: \1/' | \
87: sed 's/\.c/.o/' | sed 's,../[a-z]*/,,' | \
88: awk ' { if ($$1 != prev) { print rec; rec = $$0; prev = $$1; } \
89: else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
90: else rec = rec " " $$2 } } \
91: END { print rec } ' > makedep
92: echo '$$r makedep' >>eddep
93: echo '/^# DO NOT DELETE THIS LINE/+1,$$d' >eddep
94: echo '$$r makedep' >>eddep
95: echo 'w' >>eddep
96: cp makefile makefile.bak
97: ed - makefile < eddep
98: rm eddep makedep
99:
100: tags:
101: /usr/ucb/ctags ${CFILES}
102:
103: print:
104: @pr -f makefile ../sys/TODO linterrs
105: @/usr/ucb/ctags -x ${CFILES} | pr -f -h XREF
106: @(size vmunix *.o) | pr -f -h sizes
107: @ls -ls | pr -f
108: @cd ../h; ls -ls | pr -f ; pr -f *.m *.h
109: @cd ../sys; pr -f asm.sed Locore.c scb.s locore.s
110: @pr -f ${CFILES}
111:
112: ioconf.o: ioconf.c ../h/param.h ../h/pte.h ../h/buf.h ../h/map.h \
113: ../h/mbavar.h ../h/vm.h ../h/ubavar.h
114: ${CC} -I. -c -S ${COPTS} ioconf.c
115: ${C2} ioconf.s | sed -f ../sys/asm.sed | ${AS} -o ioconf.o
116: rm -f ioconf.s
117:
118: param.c: ../sys/param.c
119: cp ../sys/param.c .
120:
121: param.o: param.c makefile
122: ${CC} -c -O ${IDENT} ${PARAM} param.c
123:
124: %RULES
125:
126: # DO NOT DELETE THIS LINE -- make depend uses it
127:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.