# $NetBSD: Makefile.bootxx,v 1.9 2016/09/08 14:42:33 christos Exp $
NOMAN =
NOPIE =
include <bsd.init.mk>
BINMODE = 0444
S = ${.CURDIR}/../../../..
COMMON = ${.CURDIR}/../common
PATH: ${COMMON}
PROG = ${BASE}
SRCS += entry.S bootxx.c
SRCS += boot_device.c floppy_2d.c floppy_2hd_ibmpc.c
#SRCS += floppy_2hc.c
BINMODE = 444
LINKFLAGS = -T ${COMMON}/bootxx.ldscript -S -N
MIPSFLAGS = -mips1 -G 0 -mno-abicalls
DEBUGFLAGS = -Wall -Werror
DEBUGFLAGS += -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith
DEBUGFLAGS += -Wno-format-zero-length -Wno-sign-compare
OPTFLAGS = -Os -mmemcpy -fno-unwind-tables
FLAGS = ${MIPSFLAGS} ${DEBUGFLAGS} ${OPTFLAGS}
AFLAGS = -xassembler-with-cpp -D_LOCORE ${FLAGS}
CFLAGS = ${FLAGS} -ffreestanding
CPPFLAGS += -D_STANDALONE
CPPFLAGS += -nostdinc -I${.OBJDIR} -I${COMMON} -I${S}
CPPFLAGS += -D__daddr_t=int32_t
CLEANFILES += ${PROG} ${PROG}.bin ${PROG}.elf ${PROG}.tmp
KERN_AS = library
include "${S}/lib/libkern/Makefile.inc"
LIBKERN = ${KERNLIB}
LIBS = ${LIBKERN}
# XXX SHOULD NOT NEED TO DEFINE THESE!
LIBCRT0=
LIBCRTI=
LIBC=
LIBCRTBEGIN=
LIBCRTEND=
${PROG}: ${OBJS} ${LIBS}
${_MKTARGET_LINK}
${LD} ${LINKFLAGS} -o ${PROG}.elf ${OBJS} ${LIBS}
${OBJCOPY} -O binary ${PROG}.elf ${BASE}.bin
ls -al ${BASE}.bin
dd if=${BASE}.bin of=${PROG}.tmp bs=4096 conv=sync
mv ${PROG}.tmp ${PROG}
ls -al ${PROG}
# -rm -f ${BASE}.tmp
cleandir distclean: .WAIT cleanlibdir
cleanlibdir:
-rm -rf lib
include <bsd.klinks.mk>
include <bsd.prog.mk>