Makefile revision 1.2
1#	from: @(#)Makefile	7.9 (Berkeley) 5/8/91
2#
3# PATCHES MAGIC                LEVEL   PATCH THAT GOT US HERE
4# --------------------         -----   ----------------------
5# CURRENT PATCH LEVEL:         1       00088
6# --------------------         -----   ----------------------
7#
8# 23 Oct 92	Joerg Lohse		added rule to compile 'trimhd'
9#					(trimhd = 'dd bs=1 skip=32')
10# 10 Mar 93	Rodney W. Grimes	Fixed DESTDIR and STANDIR so
11#					that make install works correctly
12#
13
14DESTDIR=/usr
15LD=/usr/bin/ld
16STAND=	/sys/stand
17INCPATH=-I/sys/sys -I/sys -I/sys/ufs  -I${STAND}
18VPATH=	${STAND}
19STANDDIR= ${DESTDIR}/mdec
20
21CC=	cc -traditional
22CPP=	cpp -traditional ${INCPATH} -DSTANDALONE -DAT386
23
24RELOC=	98000
25RELOC2=	98200
26
27CFLAGS=	-DSTANDALONE -DAT386 -O ${INCPATH}
28
29DRIVERS=cga.c fd.c kbd.c wd.c as.c
30SRCS=	boot.c fdbootblk.c prf.c \
31	srt0.c wdbootblk.c ${DRIVERS} ${SASRC}
32
33ALL= wdboot bootwd fdboot bootfd asboot bootas
34
35all: ${ALL}
36
37# startups
38
39srt0.o: srt0.c
40	${CPP} -E -DLOCORE -DRELOC=0x${RELOC} srt0.c | ${AS} -o srt0.o
41
42wsrt0.o: srt0.c
43	${CPP} -E -DLOCORE -DSMALL -DRELOC=0x${RELOC} -DREL srt0.c | \
44	    ${AS} -o wsrt0.o
45
46relsrt0.o: srt0.c
47	${CPP} -E -DLOCORE -DRELOC=0x${RELOC} -DREL srt0.c | ${AS} -o relsrt0.o
48
49# block 0 boots
50
51wdbootblk.o: wdbootblk.c 
52	${CPP} -E -DLOCORE -DRELOC=0x${RELOC} wdbootblk.c | ${AS} -o $@
53
54fdbootblk.o: fdbootblk.c 
55	${CPP} -E -DLOCORE -DRELOC=0x${RELOC} fdbootblk.c | ${AS} -o $@
56
57asbootblk.o: asbootblk.c 
58	cc -c -O -DRELOC=0x${RELOC} ${INCPATH} asbootblk.c
59
60# getting booted from disc
61
62wdboot: wdbootblk.o trimhd
63	${LD} -N -T ${RELOC} wdbootblk.o
64	rm -f $@; strip a.out; trimhd 32 <a.out >$@; rm -f a.out; ls -l $@
65
66bootwd:	wsrt0.o boot.o bmap.o cga.o fs.o kbd.o prf.o wd.o printf.o breadwd.o trimhd
67	${LD} -N -T ${RELOC2} wsrt0.o boot.o bmap.o cga.o kbd.o prf.o printf.o \
68		breadwd.o fs.o wd.o -lc
69	size a.out
70	rm -f $@; strip a.out; trimhd 32 <a.out >$@; rm -f a.out; ls -l $@
71
72fdboot: fdbootblk.o trimhd
73	${LD} -N -T ${RELOC} fdbootblk.o
74	rm -f $@; strip a.out; trimhd 32 <a.out >$@; rm -f a.out; ls -l $@
75
76bootfd:	wsrt0.o boot.o bmap.o cga.o fs.o kbd.o prf.o fd.o printf.o breadfd.o trimhd
77	${LD} -N -T ${RELOC2} wsrt0.o boot.o bmap.o cga.o kbd.o prf.o printf.o \
78		breadfd.o fs.o fd.o -lc
79	size a.out
80	rm -f $@; strip a.out; trimhd 32 <a.out >$@; rm -f a.out; ls -l $@
81
82asboot:	asbootblk.o trimhd
83	${LD} -N -T 7c00 asbootblk.o
84	rm -f $@; strip a.out; trimhd 32 <a.out >$@; rm -f a.out; ls -l $@
85
86bootas:	wsrt0.o boot.o bmap.o cga.o fs.o kbd.o prf.o as.o printf.o breadas.o trimhd
87	${LD} -N -T ${RELOC2} wsrt0.o boot.o bmap.o cga.o kbd.o prf.o printf.o \
88		breadas.o fs.o as.o -lc
89	size a.out
90	rm -f $@; strip a.out; trimhd 32 <a.out >$@; rm -f a.out; ls -l $@
91
92
93breadwd.o: breadwd.c breadxx.o
94breadfd.o: breadfd.c breadxx.o
95breadas.o: breadas.c breadxx.o
96
97breadxx.o:
98	touch breadxx.o
99
100breadwd.c: breadxx.c
101	rm -f breadwd.c
102	sed -e 's/XX/wd/' -e 's/xx/wd/g'	< breadxx.c >> breadwd.c
103
104breadfd.c: breadxx.c
105	rm -f breadfd.c
106	sed -e 's/XX/fd/' -e 's/xx/fd/g'	< breadxx.c >> breadfd.c
107
108breadas.c: breadxx.c
109	rm -f breadas.c
110	sed -e 's/XX/as/' -e 's/xx/as/g'	< breadxx.c >> breadas.c
111
112trimhd:	trimhd.c
113	${CC} ${CFLAGS} -s -o trimhd trimhd.c
114
115clean:
116	rm -f *.o *.exe *.i sm_*.c trimhd
117	rm -f a.out bfd bwd fdb wdb ${ALL}
118	rm -f boot[a-wyz]? boot[a-wyz]?? boot[a-wyz]?.c boot[a-wyz]??.c \
119		conf[a-wyz]?.c conf[a-wyz]??.c bread[a-wyz]?.c
120
121cleandir: clean
122	rm -f ${MAN} tags .depend
123
124depend: ${SRCS}
125	mkdep ${INCPATH} -DSTANDALONE ${SRCS} ${DUMMIES}
126
127install: ${ALL}
128	cp ${ALL} ${STANDDIR}
129