1# $NetBSD: Makefile,v 1.12 2001/12/14 20:32:23 christos Exp $ 2 3CPPFLAGS= ${APMCPPFLAGS} 4KSRC=${.CURDIR}/../../.. 5ARCHSRC=${.CURDIR}/../.. 6I386=${KSRC}/arch/i386 7CPPFLAGS+=-I${ARCHSRC} -I${KSRC} -I${.CURDIR} -I${.OBJDIR} -D_LKM 8 9SRCS= biostramp.S 10OBJS= biostramp.o 11DEPS= ${APMDEPS} 12STRIP?= strip 13 14all: biostramp.inc 15 16biostramp.inc: biostramp.bin Makefile 17 @([ -f biostramp.inc ] && mv -f biostramp.inc biostramp.inc.bak; exit 0) 18 sh ${.CURDIR}/bin2asm.sh biostramp.bin > biostramp.inc 19 20machine: 21 @rm -f machine && ln -s ${I386}/include machine 22 23.include <bsd.own.mk> 24 25.if ${OBJECT_FMT} == "ELF" 26biostramp.bin: biostramp.obj 27 ${OBJCOPY} --output-target=binary $? $@ 28.else 29biostramp.bin: biostramp.obj 30 cp $? $@ 31 @${STRIP} $@ 32 @sh ${.CURDIR}/rmaouthdr $@ $@.tmp 33 @if [ `ls -l $@.tmp |awk '{print $$5}'` -gt 4096 ]; then \ 34 echo "$@ too big"; \ 35 exit 1; \ 36 fi 37 @mv -f $@.tmp $@ 38.endif 39 40biostramp.obj: ${OBJS} ${DEPS} 41 ${LD} -Bstatic -N -Ttext 0 -e do_bios_call -o $@ $(OBJS) 42 43assym.h: machine ${KSRC}/kern/genassym.sh genassym.cf 44 sh ${KSRC}/kern/genassym.sh ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} \ 45 < ${.CURDIR}/genassym.cf > assym.h.tmp && \ 46 mv -f assym.h.tmp assym.h 47 48biostramp.S: assym.h 49 50biostramp.o: biostramp.S 51 ${CC} ${CPPFLAGS} -DASM -D_LOCORE -c ${.IMPSRC} 52 53clean: 54 rm -f *.o biostramp.obj biostramp.bin biostramp.sym biostramp.inc \ 55 assym.h biostramp.inc.bak machine 56 57.include <bsd.dep.mk> 58.include <bsd.subdir.mk> 59.include <bsd.obj.mk> 60