xref: /netbsd-src/sys/arch/pmax/stand/Makefile.booters (revision 037708cbd4616ccd0d7d0381ebd3964d6696c188)
1#	$NetBSD: Makefile.booters,v 1.8 1996/10/18 06:08:15 thorpej Exp $
2#	@(#)Makefile	8.3 (Berkeley) 2/16/94
3
4DESTDIR=
5STAND=	../../stand
6#VPATH=	${STAND}
7
8# RELOC=80200000 allows for boot prog up to 1D0000 (1900544) bytes long
9RELOC=	80200000
10
11S=      ${.CURDIR}/../../..
12
13DEFS= -DSTANDALONE -DSMALL
14CFLAGS=	-O2 ${INCPATH} ${DEFS}
15AFLAGS=	-O2 ${INCPATH} ${DEFS} -D_LOCORE
16
17.PATH: ${S}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}
18.PATH: ${S}/stand ${S}/lib/libsa
19
20#INCPATH=-I. -I/sys
21INCPATH=-I${.CURDIR} -I${.CURDIR}/../.. -I${S} -I${S}/lib/libsa
22
23### find out what to use for libkern
24.include "$S/lib/libkern/Makefile.inc"
25#LIBKERN= ${KERNLIB}
26#KERNLIB= ${.CURDIR}/../compile/libkern.a
27
28.include "$S/lib/libsa/Makefile.inc"
29LIBSA=  ${SA_LIB}
30
31# not yet: need to write libsa/Makefile.inc first
32LIBS=  ${.OBJDIR}/libdrive.a ${.CURDIR}/libsa/libsa.a  ${KERNLIB}
33#LIBS=	libdrive.a libsa/libsa.a ../../libkern/obj/libkern.a
34
35DRIVERS= rz.c
36SRCS=	${DRIVERS}
37#STUFF=	callvec.c devopen.c getenv.c gets.c strcmp.c
38STUFF=
39
40ALL=	boot mkboot mkboottape dec_label rzboot bootrz
41
42.s.o:
43	${CPP} -E ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} | \
44	    ${AS} -o ${.TARGET}
45
46all: ${ALL}
47
48boot: ${LIBS}
49
50#libsa/libsa.a::
51#	cd libsa; make
52
53${.OBJDIR}/libdrive.a: conf.o ${DRIVERS:.c=.o}
54	ar crv $@ $?
55	ranlib $@
56
57# depend on DEFS
58
59#before other deps on bootconf.o
60bootconf.o: conf.o
61	rm -f bootconf.c
62	ln -s ${.CURDIR}/conf.c bootconf.c
63	${CC} -c ${CFLAGS} -DBOOT bootconf.c
64	rm -f bootconf.c
65
66
67# bootable from real disks
68
69boot:	start.o boot.o bootconf.o filesystem.o ${LIBS}
70	ld -Map boot.map -N -Ttext ${RELOC} -e start start.o boot.o bootconf.o filesystem.o ${LIBS} -o boot.elf
71	elf2aout boot.elf boot
72
73start.o: ${.CURDIR}/start.S
74
75#	${CPP} -E ${CFLAGS:M-[ID]*} -D_LOCORE ${AINC} ${.IMPSRC} | \
76#	    ${AS} -o ${.TARGET}
77
78mkboot: ${.CURDIR}/mkboot.c
79	${CC} ${CFLAGS} -o mkboot ${.CURDIR}/mkboot.c
80
81mkboottape: ${.CURDIR}/mkboottape.c
82	${CC} ${CFLAGS} -o mkboottape ${.CURDIR}/mkboottape.c
83
84dec_label: ${.CURDIR}/dec_label.c
85	${CC} ${CFLAGS} -o dec_label ${.CURDIR}/dec_label.c
86
87rzboot bootrz:	mkboot boot
88	./mkboot boot rzboot bootrz
89
90# utilities
91
92clean cleandir:
93	rm -f .depend *.o *.exe *.i errs make.out core*
94	rm -f a.out ${ALL}
95	rm -f boot[a-z][a-z] [a-z][a-z]boot
96	rm -f libdrive.a
97	cd libsa; make cleandir
98
99install:
100	./mkboot boot rzboot bootrz
101	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 rzboot ${DESTDIR}/usr/mdec
102	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 bootrz ${DESTDIR}/usr/mdec
103
104depend: ${SRCS}
105	mkdep ${INCPATH} ${DEFS} ${SRCS}
106	mkdep -a -p ${INCPATH} ${DEFS} mkboot.c mkboottape.c
107	cd libsa; make depend
108
109.include <bsd.dep.mk>
110.include <bsd.obj.mk>
111