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