Home | History | Annotate | Line # | Download | only in stand
Makefile.booters revision 1.8
      1  1.8  drochner #	$NetBSD: Makefile.booters,v 1.8 1997/08/20 16:53:31 drochner Exp $
      2  1.1     perry 
      3  1.1     perry BINDIR= /usr/mdec
      4  1.2   thorpej STRIPFLAG=
      5  1.1     perry BINMODE=444
      6  1.1     perry 
      7  1.8  drochner I386_STAND_DIR?= $S/arch/i386/stand
      8  1.8  drochner 
      9  1.8  drochner .PATH: ${I386_STAND_DIR}/lib/crt/bootsect ${I386_STAND_DIR}/lib
     10  1.3  drochner BSSTART= start_bootsect.o fraglist.o bootsectmain.o biosdisk_ll.o bios_disk.o diskbuf.o
     11  1.8  drochner .PATH: ${I386_STAND_DIR}/lib/crt/rom
     12  1.1     perry ROMSTART= start_rom.o
     13  1.8  drochner GENPROMDIR= ${I386_STAND_DIR}/genprom
     14  1.8  drochner .PATH: ${I386_STAND_DIR}/lib/crt/dos
     15  1.4  drochner DOSSTART= start_dos.o doscommain.o exec_fromdos.o
     16  1.1     perry 
     17  1.8  drochner CPPFLAGS += -I${.OBJDIR} -I$S -I${I386_STAND_DIR}/lib -I$S/lib/libsa
     18  1.5  drochner CPPFLAGS+= -D_STANDALONE
     19  1.1     perry 
     20  1.7   thorpej CLEANFILES+= vers.c vers.o
     21  1.7   thorpej 
     22  1.6  drochner .BEGIN: ${.OBJDIR}/machine
     23  1.6  drochner depend all: ${.OBJDIR}/machine
     24  1.6  drochner CLEANFILES+= ${.OBJDIR}/machine
     25  1.6  drochner 
     26  1.6  drochner ${.OBJDIR}/machine::
     27  1.6  drochner 	-rm $@
     28  1.6  drochner 	ln -s $S/arch/i386/include $@
     29  1.6  drochner 
     30  1.1     perry .include <bsd.prog.mk>
     31  1.1     perry 
     32  1.1     perry ### find out what to use for libkern
     33  1.1     perry KERN_AS=	library
     34  1.1     perry # XXX only bzero is missing in libkern, but we have to list all we need
     35  1.1     perry KERNMISCMAKEFLAGS= "SRCS=bzero.S bcmp.S strchr.c strncpy.c strcmp.S __main.c"
     36  1.1     perry .include "${S}/lib/libkern/Makefile.inc"
     37  1.1     perry LIBKERN=	${KERNLIB}
     38  1.1     perry 
     39  1.1     perry ### find out what to use for libz
     40  1.1     perry Z_AS=		library
     41  1.1     perry .include "${S}/lib/libz/Makefile.inc"
     42  1.1     perry LIBZ=		${ZLIB}
     43  1.1     perry 
     44  1.1     perry ### find out what to use for libsa
     45  1.1     perry SA_AS=		library
     46  1.1     perry .include "${S}/lib/libsa/Makefile.inc"
     47  1.1     perry LIBSA=		${SALIB}
     48  1.1     perry 
     49  1.1     perry ### find out what to use for libi386
     50  1.8  drochner I386DIR= ${I386_STAND_DIR}/lib
     51  1.1     perry .include "${I386DIR}/Makefile.inc"
     52  1.1     perry LIBI386=		${I386LIB}
     53  1.1     perry 
     54  1.7   thorpej vers.o:
     55  1.8  drochner 	sh ${I386_STAND_DIR}/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
     56  1.7   thorpej 	${COMPILE.c} vers.c
     57  1.7   thorpej 
     58  1.7   thorpej ${PROG}.sym: ${BSSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} vers.o
     59  1.1     perry 	${LD} -o ${PROG}.sym -M -e _start -N -Ttext 0 $(BSSTART) $(OBJS) \
     60  1.7   thorpej 	vers.o ${LIBI386} ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} >${PROG}.list
     61  1.1     perry 
     62  1.7   thorpej ${PROG}.rom: ${GENPROM} ${ROMSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} vers.o
     63  1.1     perry 	${LD} -o ${PROG}.sym -M -e _start -N -Ttext ${RELOC} $(ROMSTART) $(OBJS) \
     64  1.7   thorpej 	vers.o ${LIBI386} ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} >${PROG}.list
     65  1.1     perry 	cp ${PROG}.sym ${PROG}.bin
     66  1.1     perry 	strip ${PROG}.bin
     67  1.8  drochner 	(cd ${GENPROMDIR}; ${MAKE} rom BINFILE=${.OBJDIR:Q}/${PROG:Q}.bin \
     68  1.8  drochner 		ROMFILE=${.OBJDIR:Q}/${PROG:Q}.rom ROM_SIZE=${ROM_SIZE:Q})
     69  1.1     perry 	rm -f ${PROG}.bin
     70  1.1     perry 
     71  1.7   thorpej ${PROG}.com: ${DOSSTART} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBI386} vers.o
     72  1.1     perry 	${LD} -o ${PROG}.sym -M -e _start -N -Ttext 0x100 $(DOSSTART) $(OBJS) \
     73  1.7   thorpej 	vers.o ${LIBI386} ${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} >${PROG}.list
     74  1.1     perry 	cp ${PROG}.sym ${PROG}.bin
     75  1.1     perry 	strip ${PROG}.bin
     76  1.1     perry 	dd if=${PROG}.bin of=${PROG}.com ibs=32 skip=1 obs=1024b
     77  1.1     perry 	rm -f ${PROG}.bin
     78