1#	$NetBSD: Makefile.bootxx,v 1.5 2010/05/27 06:58:13 dholland Exp $
2
3NOMAN		=
4
5BINMODE		= 0444
6
7S		= ${.CURDIR}/../../../..
8COMMON		= ${.CURDIR}/../common
9
10.PATH:		${COMMON}
11
12PROG		= ${BASE}
13SRCS		+= entry.S bootxx.c
14SRCS		+= boot_device.c floppy_2d.c floppy_2hd_ibmpc.c
15#SRCS		+= floppy_2hc.c
16BINMODE		= 444
17
18LINKFLAGS	= -T ${COMMON}/bootxx.ldscript -S -N
19MIPSFLAGS	= -mips1 -G 0 -mno-abicalls
20DEBUGFLAGS	= -Wall -Werror
21DEBUGFLAGS	+= -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith
22DEBUGFLAGS	+= -Wno-format-zero-length -Wno-sign-compare
23OPTFLAGS	= -Os -mmemcpy
24FLAGS		= ${MIPSFLAGS} ${DEBUGFLAGS} ${OPTFLAGS}
25AFLAGS		= -xassembler-with-cpp -D_LOCORE ${FLAGS}
26CFLAGS		= ${FLAGS} -ffreestanding
27
28CPPFLAGS	+= -D_STANDALONE
29CPPFLAGS	+= -nostdinc -I${.OBJDIR} -I${COMMON} -I${S}
30CPPFLAGS	+= -D__daddr_t=int32_t
31
32CLEANFILES	+= ${PROG} ${PROG}.bin ${PROG}.elf ${PROG}.tmp
33
34KERN_AS		= library
35.include	"${S}/lib/libkern/Makefile.inc"
36LIBKERN		= ${KERNLIB}
37
38LIBS		= ${LIBKERN}
39
40# XXX SHOULD NOT NEED TO DEFINE THESE!
41LIBCRT0=
42LIBC=
43LIBCRTBEGIN=
44LIBCRTEND=
45
46${PROG}: ${OBJS} ${LIBS}
47	${_MKTARGET_LINK}
48	${LD} ${LINKFLAGS} -o ${PROG}.elf ${OBJS} ${LIBS}
49	${OBJCOPY} -O binary ${PROG}.elf ${BASE}.bin
50	ls -al ${BASE}.bin
51	dd if=${BASE}.bin of=${PROG}.tmp bs=4096 conv=sync
52	mv ${PROG}.tmp ${PROG}
53	ls -al ${PROG}
54#	-rm -f ${BASE}.tmp
55
56clean cleandir distclean: .WAIT cleanlibdir
57
58cleanlibdir:
59	-rm -rf lib
60
61.include <bsd.klinks.mk>
62.include <bsd.prog.mk>
63