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