Makefile revision 1.15
11.15Smycroft#	$NetBSD: Makefile,v 1.15 2002/09/11 01:46:36 mycroft Exp $
21.1Sdbj
31.1SdbjS=	${.CURDIR}/../../../..
41.1Sdbj
51.1Sdbj### find out what to use for libkern
61.1SdbjKERN_AS=        library
71.1Sdbj.include "${S}/lib/libkern/Makefile.inc"
81.1Sdbj#LIBKERN=        ${KERNLIB}
91.1Sdbj
101.1Sdbj### find out what to use for libz
111.1SdbjZ_AS=           library
121.1Sdbj.include "${S}/lib/libz/Makefile.inc"
131.1Sdbj#LIBZ=           ${ZLIB}
141.1Sdbj
151.1Sdbj### find out what to use for libsa
161.1SdbjSA_AS=          library
171.9SchsSAMISCMAKEFLAGS= SA_USE_LOADFILE=yes # SA_USE_CREAD=yes
181.1Sdbj.include "${S}/lib/libsa/Makefile.inc"
191.1Sdbj#LIBSA=          ${SALIB}
201.1Sdbj
211.1SdbjRELOC=	4380000
221.1Sdbj
231.15SmycroftDEFS+=		-DDISABLE_NEXT_BMAP_CHIP
241.15SmycroftDEFS+=		-g
251.1Sdbj# XXX make defs arch-indep.
261.12SjdolecekINCLUDES+=	-I${.OBJDIR} -I${S}/arch -I${S} -I${S}/lib/libsa 
271.7SdbjDEFS+=		-D_STANDALONE -DMC68040 -DSUPPORT_BOOTP -DSUPPORT_DHCP  -DDEBUG -DSD_DEBUG -DSCSI_DEBUG # -DEN_DEBUG   -DNETIF_DEBUG  
281.1SdbjSAMISCCPPFLAGS=	-DSUPPORT_DHCP -DSUPPORT_BOOTP -DINSECURE # -DBOOTP_DEBUG -DETHER_DEBUG -DNET_DEBUG # -DNETIF_DEBUG -DNFS_DEBUG  -DARP_DEBUG 
291.5StvWARNS=1
301.11SjdolecekCFLAGS+=	 -ffreestanding -nostdinc ${INCLUDES} ${DEFS}
311.1SdbjLIBCRT0=
321.1Sdbj
331.1SdbjPROG=	boot
341.8SjdolecekSRCS=   boot.c machdep.c conf.c devopen.c rtc.c sd.c scsi.c en.c vers.c build.c
351.12Sjdolecek
361.1Sdbj# @@@ dev_net.c should really be in libsa, but it doesn't
371.1Sdbj# declare ip_convertaddr correctly, so I put it here _temporarily_.
381.12Sjdolecek.PATH: ${S}/lib/libsa
391.12SjdolecekSRCS+=	dev_net.c
401.1Sdbj
411.9SchsCLEANFILES+= srt0.o boot.elf boot.raw machine ${MACHINE_ARCH} limits.h
421.8SjdolecekCLEANFILES+= vers.c build.c build	# generated dynamically
431.8Sjdolecek
441.10StvNOMAN=	# defined
451.1SdbjBINDIR=	/usr/mdec
461.1Sdbj#LIBS=	${SALIB} ${KERNLIB} ${ZLIB}
471.1SdbjLIBS=	${SALIB} ${KERNLIB}
481.13Sjdolecek
491.13Sjdolecek# do not strip ${PROG} on install
501.13SjdolecekSTRIPFLAG=	# defined
511.7Sdbj
521.9SchsAWKPROG='\
531.15Smycroftfunction x(v) { printf "\\0\\%o\\%o\\%o", (v / 65536) % 256, (v / 256) % 256, v % 256 } \
541.9Schs{ \
551.15Smycroft	printf "\047\\0\\207\\01\\07"; \
561.9Schs	x($$1); \
571.9Schs	x($$2); \
581.9Schs	x($$3); \
591.14Schristos	printf "\\0\\0\\0\\0\\04\\070\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\047" \
601.9Schs}'
611.9Schs
621.11Sjdolecek${PROG}: srt0.o ${OBJS} ${LIBS}
631.9Schs	${LD} -N -Ttext ${RELOC} -e start srt0.o ${OBJS} ${LIBS} -o $@.elf
641.15Smycroft	${SIZE} $@.elf
651.15Smycroft	${OBJCOPY} -O binary $@.elf $@.raw
661.15Smycroft	(${SIZE} $@.elf | tail +2 | awk ${AWKPROG} | xargs printf ; cat $@.raw) > $@
671.1Sdbj
681.1Sdbj# startup
691.1Sdbj
701.1Sdbjsrt0.o: ${.CURDIR}/srt0.s
711.9Schs	${CC} -m68040 -x assembler-with-cpp ${INCLUDES} ${DEFS} -c ${.CURDIR}/srt0.s
721.1Sdbj
731.8Sjdolecek.PHONY: build.c
741.8Sjdolecekbuild.c:
751.1Sdbj	sh ${.CURDIR}/newvers.sh
761.8Sjdolecek
771.8Sjdolecekvers.c: version
781.8Sjdolecek	sh ${S}/conf/newvers_stand.sh -MD ${.CURDIR}/version "next68k"
791.1Sdbj
801.1Sdbj#installboot: ${.CURDIR}/installboot.sh
811.1Sdbj#	@rm -f installboot
821.1Sdbj#	cp -p ${.CURDIR}/installboot.sh installboot
831.1Sdbj
841.1Sdbj# utilities
851.1Sdbj
861.11Sjdolecek.if !make(obj) && !make(clean) && !make(cleandir)
871.11Sjdolecek.BEGIN:
881.1Sdbj	rm -f machine
891.1Sdbj	ln -s ${S}/arch/${MACHINE}/include machine
901.1Sdbj	rm -f ${MACHINE_ARCH}
911.1Sdbj	ln -s ${S}/arch/${MACHINE_ARCH}/include ${MACHINE_ARCH}
921.11Sjdolecek.endif
931.1Sdbj
941.1Sdbj.include <bsd.prog.mk>
95