Home | History | Annotate | Line # | Download | only in stand
Makefile.booters revision 1.5
      1 #	$NetBSD: Makefile.booters,v 1.5 1995/01/18 06:53:36 mellon Exp $
      2 #	@(#)Makefile	8.3 (Berkeley) 2/16/94
      3 
      4 DESTDIR=
      5 STAND=	../../stand
      6 #VPATH=	${STAND}
      7 
      8 # RELOC=80200000 allows for boot prog up to 1D0000 (1900544) bytes long
      9 RELOC=	80200000
     10 
     11 S=      ${.CURDIR}/../../..
     12 
     13 DEFS= -DSTANDALONE -DSMALL
     14 CFLAGS=	-O2 ${INCPATH} ${DEFS}
     15 AFLAGS=	-O2 ${INCPATH} ${DEFS} -DLOCORE
     16 
     17 .PATH: ${S}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}
     18 .PATH: ${S}/stand ${S}/lib/libsa
     19 
     20 #INCPATH=-I. -I/sys
     21 INCPATH=-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"
     29 LIBSA=  ${SA_LIB}
     30 
     31 # not yet: need to write libsa/Makefile.inc first
     32 LIBS=  ${.OBJDIR}/libdrive.a ${.CURDIR}/libsa/libsa.a  ${KERNLIB}
     33 #LIBS=	libdrive.a libsa/libsa.a ../../libkern/obj/libkern.a 
     34 
     35 DRIVERS= rz.c
     36 SRCS=	${DRIVERS}
     37 #STUFF=	callvec.c devopen.c getenv.c gets.c strcmp.c
     38 STUFF=
     39 
     40 ALL=	boot mkboot mkboottape dec_label rzboot bootrz
     41 
     42 .s.o:
     43 	${CPP} -E ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} | \
     44 	    ${AS} -o ${.TARGET}
     45 
     46 all: ${ALL}
     47 
     48 boot: ${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
     60 bootconf.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 
     69 boot:	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 
     73 start.o: ${.CURDIR}/start.S
     74 
     75 #	${CPP} -E ${CFLAGS:M-[ID]*} -DLOCORE ${AINC} ${.IMPSRC} | \
     76 #	    ${AS} -o ${.TARGET}
     77 
     78 mkboot: ${.CURDIR}/mkboot.c
     79 	${CC} ${CFLAGS} -o mkboot ${.CURDIR}/mkboot.c
     80 
     81 mkboottape: ${.CURDIR}/mkboottape.c
     82 	${CC} ${CFLAGS} -o mkboottape ${.CURDIR}/mkboottape.c
     83 
     84 dec_label: ${.CURDIR}/dec_label.c
     85 	${CC} ${CFLAGS} -o dec_label ${.CURDIR}/dec_label.c
     86 
     87 rzboot bootrz:	mkboot boot
     88 	./mkboot boot rzboot bootrz
     89 
     90 # utilities
     91 
     92 clean 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 
     99 install:
    100 	./mkboot boot rzboot bootrz
    101 	install -o bin -g bin -m 444 rzboot ${DESTDIR}/usr/mdec
    102 	install -o bin -g bin -m 444 bootrz ${DESTDIR}/usr/mdec
    103 
    104 depend: ${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