|
|
1.1 root 1: #
2: # Copyright (c) 1980, 1988 Regents of the University of California.
3: # All rights reserved.
4: #
5: # Redistribution and use in source and binary forms are permitted
6: # provided that the above copyright notice and this paragraph are
7: # duplicated in all such forms and that any documentation,
8: # advertising materials, and other materials related to such
9: # distribution and use acknowledge that the software was developed
10: # by the University of California, Berkeley. The name of the
11: # University may not be used to endorse or promote products derived
12: # from this software without specific prior written permission.
13: # THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
14: # IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
15: # WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
16: #
17: # %W% (Berkeley) %G%
18: #
19:
20: DESTDIR=
21: STAND= /stand
22: INCPATH=-I. -I../stand -I../sys
23: VPATH= ../stand:../vax
24: C2= /usr/libexec/c2
25: DEFS= ${INCPATH} -DSTANDALONE -DCOMPAT_42
26: MACH= -DVAX8600 -DVAX8200 -DVAX780 -DVAX750 -DVAX730 -DVAX630 -DVAX650
27: LS= /bin/ls
28:
29: # Collections of C options:
30: # COPTS device drivers/assembler, not optimized
31: # SMOPTS "small" versions for 7.5K bootxx programs
32: # 730OPTS "small" versions for 11/730-only versions
33: # CFLAGS everything else
34:
35: COPTS= ${DEFS} ${MACH}
36: CFLAGS= -O ${DEFS} ${MACH}
37: 730OPTS=-O ${DEFS} -DVAX730
38: SMOPTS= ${DEFS} -DSMALL -DVAX750 -DVAX630 -DVAX650
39:
40: RELOC= 150000
41: LIBSA= libsa.a
42:
43: SRCS= autoconf.c boot.c bootxx.c cat.c copy.c dev.c drtest.c format.c \
44: format.c getfile.c gets.c hp.c hpmaptype.c ht.c idc.c kdb.c \
45: machdep.c mba.c mt.c prf.c printn.c qdcons.c qvcons.c qfont.c \
46: rk.c rl.c sys.c tm.c tmscp.c ts.c uba.c uda.c up.c upmaptype.c \
47: ut.c conf.c ../vax/dkbad.c
48: DUMMIES=confxx.c
49: DRIVERS=autoconf.o hp.o hpmaptype.o ht.o idc.o kdb.o mba.o mt.o qdcons.o \
50: qvcons.o rk.o rl.o tm.o tmscp.o ts.o up.o upmaptype.o uba.o uda.o \
51: ut.o
52: SMOBJ= bootxx.o sm_sys.o sm_autoconf.o
53:
54: # These drivers don't have ecc correction and bad sector forwarding;
55: # they are placed in the file system boot area for 750's. If your
56: # root has bad sectors you can try and squeeze the newer drivers in...
57: ODRIVERS=sm_hp.o sm_up.o
58:
59: MDEC= boothp boothk bootkra bootup bootra bootrl
60: ALL= boot tpboot cat copy tpcopy format tpformat drtest ls \
61: 730boot 730copy 730format 730drtest ${MDEC}
62:
63: all: ${ALL}
64:
65: ${LIBSA}: conf.o dev.o dkbad.o getfile.o gets.o machdep.o prf.o printn.o \
66: qfont.o sys.o ${DRIVERS}
67: ar crv ${LIBSA} $?
68: ranlib ${LIBSA}
69:
70: ${DRIVERS}:
71: ${CC} -c -S ${COPTS} $*.c
72: ${C2} -i $*.s | as -o $*.o
73: rm -f $*.s
74:
75: # startups
76:
77: srt0.o: srt0.c ../vax/mtpr.h ../vax/cpu.h
78: ${CC} -E -DRELOC=0x${RELOC} ${COPTS} srt0.c | as -o srt0.o
79:
80: tpsrt0.o: srt0.c ../vax/mtpr.h ../vax/cpu.h
81: ${CC} -E -DRELOC=0x${RELOC} -DTP ${COPTS} srt0.c | as -o tpsrt0.o
82:
83: relsrt0.o: srt0.c ../vax/mtpr.h ../vax/cpu.h
84: ${CC} -E -DRELOC=0x${RELOC} -DREL ${COPTS} srt0.c | as -o relsrt0.o
85:
86: # bootable from tape
87:
88: tpboot: tpboot.o relsrt0.o ${LIBSA}
89: ld -N -T ${RELOC} relsrt0.o tpboot.o ${LIBSA} -lc
90: strip a.out; dd if=a.out of=tpboot ibs=32 skip=1; rm -f a.out
91:
92: tpboot.o: boot.o
93: rm -f $*.c
94: ln -s boot.c $*.c
95: ${CC} -c ${CFLAGS} -DJUSTASK $*.c
96: rm -f $*.c
97:
98: tpcopy: copy.o tpsrt0.o ${LIBSA}
99: ld -N tpsrt0.o copy.o ${LIBSA} -lc
100: strip a.out; dd if=a.out of=tpcopy ibs=32 skip=1; rm -f a.out
101:
102: tpformat: tpformat.o tpsrt0.o confhpup.o ${LIBSA}
103: ld -N tpsrt0.o tpformat.o confhpup.o ${LIBSA} -lc
104: strip a.out; dd if=a.out of=tpformat ibs=32 skip=1; rm -f a.out
105:
106: tpformat.o: format.o
107: rm -f $*.c
108: ln -s format.c $*.c
109: ${CC} -c ${CFLAGS} -DJUSTEXIT $*.c
110: rm -f $*.c
111:
112: # bootable from floppy or real disks
113:
114: boot: boot.o relsrt0.o bootconf.o ${LIBSA}
115: ld -N -T ${RELOC} -o $@ relsrt0.o boot.o bootconf.o ${LIBSA} -lc
116:
117: bootconf.o: conf.o
118: rm -f $*.c
119: ln -s conf.c $*.c
120: ${CC} -c ${CFLAGS} -DBOOT $*.c
121: rm -f $*.c
122:
123: copy: copy.o srt0.o getfile.o ${LIBSA}
124: ld -N -o $@ srt0.o copy.o getfile.o ${LIBSA} -lc
125:
126: cat: cat.o srt0.o getfile.o ${LIBSA}
127: ld -N -o $@ srt0.o cat.o getfile.o ${LIBSA} -lc
128:
129: ls: ls.o srt0.o ${LIBSA}
130: ld -N -o $@ srt0.o ls.o ${LIBSA} -lc
131:
132: format: format.o srt0.o confhpup.o ${LIBSA}
133: ld -N -o $@ srt0.o format.o confhpup.o ${LIBSA} -lc
134:
135: drtest: drtest.o srt0.o confhpup.o ${LIBSA}
136: ld -N -o $@ srt0.o drtest.o confhpup.o ${LIBSA} -lc
137:
138: # for 730s minimize size to avoid microcode botch
139: # (won't load files larger than 12.5 Kbytes)
140:
141: 730boot.o: boot.o
142: rm -f $*.c
143: ln -s boot.c $*.c
144: ${CC} -c ${730OPTS} $*.c
145: rm -f $*.c
146:
147: 730boot: 730boot.o relsrt0.o 730bootconf.o ${LIBSA}
148: ld -N -T ${RELOC} -o 730boot relsrt0.o 730boot.o 730bootconf.o ${LIBSA} -lc
149:
150: 730bootconf.o: conf.o
151: rm -f $*.c
152: ln -s conf.c $*.c
153: ${CC} -c ${730OPTS} -DBOOT $*.c
154: rm -f $*.c
155:
156: 730copy: copy.o srt0.o 730conf.o ${LIBSA}
157: ld -N -o $@ srt0.o copy.o 730conf.o ${LIBSA} -lc
158:
159: 730drtest: drtest.o srt0.o confup.o ${LIBSA}
160: ld -N -o $@ srt0.o drtest.o confup.o ${LIBSA} -lc
161:
162: 730format: format.o srt0.o confup.o ${LIBSA}
163: ld -N -o $@ srt0.o format.o confup.o ${LIBSA} -lc
164:
165: 730conf.o: conf.o
166: rm -f $*.c
167: ln -s conf.c $*.c
168: ${CC} -c ${730OPTS} $*.c
169: rm -f $*.c
170:
171: # bootstrap from ether
172:
173: ### not yet, rosin, not yet ###
174:
175: # getting booted from disc
176:
177: boothk: relsrt0.o confrk.o ${SMOBJ} ${LIBSA}
178: ld -N -T ${RELOC} relsrt0.o confrk.o ${SMOBJ} ${LIBSA} -lc
179: size a.out
180: rm -f $@
181: strip a.out;dd if=a.out of=$@ ibs=32 skip=1;rm -f a.out
182: ${LS} -l $@
183:
184: boothp: relsrt0.o confhp.o sm_hp.o ${SMOBJ} ${LIBSA}
185: ld -N -T ${RELOC} relsrt0.o confhp.o sm_hp.o ${SMOBJ} ${LIBSA} -lc
186: size a.out
187: rm -f $@
188: strip a.out;dd if=a.out of=$@ ibs=32 skip=1;rm -f a.out
189: ${LS} -l $@
190:
191: bootkra: relsrt0.o confkra.o ${SMOBJ} ${LIBSA}
192: ld -N -T ${RELOC} relsrt0.o confkra.o ${SMOBJ} ${LIBSA} -lc
193: size a.out
194: rm -f $@
195: strip a.out;dd if=a.out of=$@ ibs=32 skip=1;rm -f a.out
196: ${LS} -l $@
197:
198: bootup: relsrt0.o confup.o sm_up.o ${SMOBJ} ${LIBSA}
199: ld -N -T ${RELOC} relsrt0.o confup.o sm_up.o ${SMOBJ} ${LIBSA} -lc
200: size a.out
201: rm -f $@
202: strip a.out;dd if=a.out of=$@ ibs=32 skip=1;rm -f a.out
203: ${LS} -l $@
204:
205: bootra: relsrt0.o confra.o ${SMOBJ} ${LIBSA}
206: ld -N -T ${RELOC} relsrt0.o confra.o ${SMOBJ} ${LIBSA} -lc
207: size a.out
208: rm -f $@
209: strip a.out;dd if=a.out of=$@ ibs=32 skip=1;rm -f a.out
210: ${LS} -l $@
211:
212: bootrl: relsrt0.o confrl.o ${SMOBJ} ${LIBSA}
213: ld -N -T ${RELOC} relsrt0.o confrl.o ${SMOBJ} ${LIBSA} -lc
214: size a.out
215: rm -f $@
216: strip a.out;dd if=a.out of=$@ ibs=32 skip=1;rm -f a.out
217: ${LS} -l $@
218:
219: sm_hp.o: hp.o
220: rm -f sm_hp.c
221: ln -s hp.c sm_hp.c
222: ${CC} -S ${SMOPTS} sm_hp.c
223: ${C2} -i sm_hp.s | as -o sm_hp.o
224: rm -f sm_hp.s sm_hp.c
225:
226: sm_up.o: up.o
227: rm -f sm_up.c
228: ln -s up.c sm_up.c
229: ${CC} -S ${SMOPTS} sm_up.c
230: ${C2} -i sm_up.s | as -o sm_up.o
231: rm -f sm_up.s sm_up.c
232:
233: sm_sys.o: ../stand/sys.c
234: rm -f sm_sys.c
235: ln -s ../stand/sys.c sm_sys.c
236: ${CC} -c -O ${SMOPTS} sm_sys.c
237: rm -f sm_sys.c
238:
239: sm_autoconf.o: autoconf.o
240: rm -f sm_autoconf.c
241: ln -s autoconf.c sm_autoconf.c
242: ${CC} -c -O ${SMOPTS} sm_autoconf.c
243: rm -f sm_autoconf.c
244:
245: confrk.o: confrk.c confxx.o
246: confhp.o: confhp.c confxx.o
247: confkra.o: confkra.c confxx.o
248: confup.o: confup.c confxx.o
249: confra.o: confra.c confxx.o
250: confrl.o: confrl.c confxx.o
251:
252: confxx.o:
253: touch confxx.o
254:
255: confrk.c: confxx.c ../stand/dev.c
256: sed -e 's/io->i_dev/0/g' < ../stand/dev.c > confrk.c
257: sed -e 's/XX/hk/' -e 's/xx/rk/g' < confxx.c >> confrk.c
258: confhp.c: confxx.c ../stand/dev.c
259: sed -e 's/io->i_dev/0/g' < ../stand/dev.c > confhp.c
260: sed -e 's/XX/hp/' -e 's/xx/hp/g' < confxx.c >> confhp.c
261: confkra.c: confxx.c ../stand/dev.c
262: sed -e 's/io->i_dev/0/g' < ../stand/dev.c > confkra.c
263: sed -e 's/XX/kra/' -e 's/xx/kra/g' < confxx.c >> confkra.c
264: confup.c: confxx.c ../stand/dev.c
265: sed -e 's/io->i_dev/0/g' < ../stand/dev.c > confup.c
266: sed -e 's/XX/up/' -e 's/xx/up/g' < confxx.c >> confup.c
267: confra.c: confxx.c ../stand/dev.c
268: sed -e 's/io->i_dev/0/g' < ../stand/dev.c > confra.c
269: sed -e 's/XX/ra/' -e 's/xx/ra/g' < confxx.c >> confra.c
270: confrl.c: confxx.c ../stand/dev.c
271: sed -e 's/io->i_dev/0/g' < ../stand/dev.c > confrl.c
272: sed -e 's/XX/rl/' -e 's/xx/rl/g' < confxx.c >> confrl.c
273:
274: clean:
275: rm -f *.o *.exe *.i sm_*.c libsa.a
276: rm -f boot[a-wyz][a-z].c conf[a-wyz][a-z].c confkra.c
277: rm -f ${ALL} a.out core errs sboot bootconf.c
278:
279: cleandir: clean
280: rm -f ${MAN} tags .depend
281:
282: depend: ${SRCS}
283: mkdep ${INCPATH} -DSTANDALONE ${SRCS} ${DUMMIES}
284:
285: install: FRC
286: install -c -s -o bin -g bin -m 644 format cat copy drtest ls ${DESTDIR}${STAND}
287: [ -d ../vaxdist/tp ] || mkdir ../vaxdist/tp
288: cp tpcopy ../vaxdist/tp/copy
289: cp tpboot ../vaxdist/tp/boot
290: cp tpformat ../vaxdist/tp/format
291: cp boot a.out; strip a.out; \
292: dd if=a.out of=../floppy/boot bs=32 skip=1; rm a.out
293: cp 730boot a.out; strip a.out; \
294: dd if=a.out of=../cassette/boot.730 bs=32 skip=1; rm a.out
295: cp ../floppy/boot ../cassette/boot.750
296: cp ../floppy/boot ../consolerl/boot
297: cp copy a.out; strip a.out; \
298: dd if=a.out of=../floppy/copy bs=32 skip=1; rm a.out
299: cp 730copy a.out; strip a.out; \
300: dd if=a.out of=../cassette/copy.730 bs=32 skip=1; rm a.out
301: cp ../floppy/copy ../cassette/copy.750
302: cp ../floppy/copy ../consolerl/copy
303: cp format a.out; strip a.out; \
304: dd if=a.out of=../floppy/format bs=32 skip=1; rm a.out
305: cp 730format a.out; strip a.out; \
306: dd if=a.out of=../cassette/format.730 bs=32 skip=1; rm a.out
307: cp ../floppy/format ../cassette/format.750
308: cp ../floppy/format ../consolerl/format
309: cp drtest a.out; strip a.out; \
310: dd if=a.out of=../floppy/drtest bs=32 skip=1; rm a.out
311: cp 730drtest a.out; strip a.out; \
312: dd if=a.out of=../cassette/drtest.730 bs=32 skip=1; rm a.out
313: cp ../floppy/drtest ../cassette/drtest.750
314: cp ../floppy/drtest ../consolerl/drtest
315: install -c -o bin -g bin -m 444 ${MDEC} ${DESTDIR}/usr/mdec
316: rm -f ${DESTDIR}/usr/mdec/bootrd
317: ln ${DESTDIR}/usr/mdec/bootra ${DESTDIR}/usr/mdec/bootrd
318:
319: lint: ${SRCS}
320: lint ${COPTS} -hxbn boot.c ${SRCS} | \
321: sed -e '/possible pointer alignment/d' \
322: -e '/struct\/union .* never defined/d'
323:
324: tags: ${SRCS}
325: ctags ${SRCS} ${DUMMIES}
326:
327: FRC:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.