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