Makefile revision 1.17
11.17Schristos#	$NetBSD: Makefile,v 1.17 2006/06/06 15:41:50 christos Exp $
21.1Sjtk
31.4SmycroftCPPFLAGS=	${APMCPPFLAGS}
41.7SjtkKSRC=${.CURDIR}/../../..
51.7SjtkARCHSRC=${.CURDIR}/../..
61.7SjtkI386=${KSRC}/arch/i386
71.14SjmcX86=${KSRC}/arch/x86
81.15SthorpejCPPFLAGS+=-I${ARCHSRC} -I${KSRC} -I${.CURDIR} -I${.OBJDIR} -D_LKM -D_KERNEL
91.4Smycroft
101.4SmycroftSRCS=	biostramp.S
111.4SmycroftOBJS=	biostramp.o
121.4SmycroftDEPS=	${APMDEPS}
131.10StsutsuiSTRIP?=	strip
141.17SchristosTRAMP=	${.CURDIR}/biostramp.inc
151.5Sjtk
161.17Schristosall: ${TRAMP}
171.1Sjtk
181.17Schristos${TRAMP}: biostramp.bin Makefile
191.17Schristos	@([ -f ${TRAMP} ] && mv -f ${TRAMP} ${TRAMP}.bak; exit 0)
201.17Schristos	${HOST_SH} ${.CURDIR}/bin2asm.sh biostramp.bin > ${.TARGET}
211.3Sjtk
221.12Schristosmachine:
231.12Schristos	@rm -f machine && ln -s ${I386}/include machine
241.12Schristos
251.14Sjmcx86:
261.14Sjmc	@rm -f x86 && ln -s ${X86}/include x86
271.14Sjmc
281.8Sjtk.include <bsd.own.mk>
291.8Sjtk
301.8Sjtk.if ${OBJECT_FMT} == "ELF"
311.8Sjtkbiostramp.bin: biostramp.obj
321.11Stv	${OBJCOPY} --output-target=binary $? $@
331.8Sjtk.else
341.8Sjtkbiostramp.bin: biostramp.obj
351.8Sjtk	cp $? $@
361.10Stsutsui	@${STRIP} $@
371.13Slukem	@${HOST_SH} ${.CURDIR}/rmaouthdr $@ $@.tmp
381.8Sjtk	@if [ `ls -l $@.tmp |awk '{print $$5}'` -gt 4096 ]; then \
391.8Sjtk		echo "$@ too big"; \
401.3Sjtk		exit 1; \
411.3Sjtk	fi
421.8Sjtk	@mv -f $@.tmp $@
431.8Sjtk.endif
441.8Sjtk
451.8Sjtkbiostramp.obj: ${OBJS} ${DEPS}
461.12Schristos	${LD} -Bstatic -N -Ttext 0 -e do_bios_call -o $@ $(OBJS)
471.1Sjtk
481.15Sthorpejassym.h: machine x86 genassym.cf
491.15Sthorpej	${TOOL_GENASSYM} -- ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} \
501.12Schristos	    < ${.CURDIR}/genassym.cf > assym.h.tmp && \
511.7Sjtk	mv -f assym.h.tmp assym.h
521.5Sjtk
531.5Sjtkbiostramp.S: assym.h
541.12Schristos
551.5Sjtkbiostramp.o: biostramp.S
561.12Schristos	${CC} ${CPPFLAGS} -DASM -D_LOCORE -c ${.IMPSRC}
571.5Sjtk
581.1Sjtkclean:
591.17Schristos	rm -f *.o biostramp.obj biostramp.bin biostramp.sym ${TRAMP} \
601.17Schristos	    assym.h ${TRAMP}.bak machine
611.1Sjtk
621.4Smycroft.include <bsd.dep.mk>
631.4Smycroft.include <bsd.subdir.mk>
641.12Schristos.include <bsd.obj.mk>
65