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