1# $NetBSD: Makefile.mbr,v 1.18 2011/05/20 15:05:02 joerg Exp $ 2 3S= ${.CURDIR}/../../../../.. 4 5NOMAN= # defined 6 7LIBCRT0= # nothing 8LIBCRTBEGIN= # nothing 9LIBCRTEND= # nothing 10LIBC= # nothing 11 12PIE_CFLAGS= 13PIE_LDFLAGS= 14PIE_AFLAGS= 15 16.include <bsd.own.mk> 17 18STRIPFLAG= # override 19 20SRCS?= mbr.S 21 22BINDIR= /usr/mdec 23BINMODE= 444 24 25.PATH: ${.CURDIR}/.. 26 27LDFLAGS+= -nostdlib -Wl,-e,start 28CPPFLAGS+= -I. -I${.CURDIR}/../../lib -I${S} 29.if defined(__MINIX) 30CPPFLAGS+= -DLOADADDR=${LOADADDR} 31AFLAGS+= -Wa,--divide 32 33BUILDSYMLINKS+= \ 34 ${NETBSDSRCDIR}/include/arch/i386/include/stackframe.h machine/stackframe.h \ 35 ${NETBSDSRCDIR}/include/arch/i386/include/fpu.h machine/fpu.h 36 37DPSRCS+= machine/stackframe.h machine/fpu.h 38.endif # defined(__MINIX) 39 40.if ${MACHINE_ARCH} == "x86_64" 41LDFLAGS+= -Wl,-m,elf_i386 42AFLAGS+= -m32 43.endif 44 45BUILDSYMLINKS+= $S/arch/i386/include machine \ 46 $S/arch/x86/include x86 47 48DPSRCS+= machine x86 49 50CLEANFILES+= ${PROG}.tmp 51 52LOADADDR= 0x8800 53 54AFLAGS.mbr.S= ${${ACTIVE_CC} == "clang":?-no-integrated-as:} 55AFLAGS.gpt.S= ${${ACTIVE_CC} == "clang":?-no-integrated-as:} 56 57${PROG}: ${OBJS} 58 ${_MKTARGET_LINK} 59 ${CC} -o ${PROG}.tmp ${LDFLAGS} -Wl,-Ttext,${LOADADDR} ${OBJS} 60 @ set -- $$( ${NM} -t d ${PROG}.tmp | grep '\<mbr_space\>' \ 61 | ${TOOL_SED} 's/^0*//' ); \ 62 echo "#### There are $$1 free bytes in ${PROG}" 63 ${OBJCOPY} -O binary ${PROG}.tmp ${PROG} 64 rm -f ${PROG}.tmp 65 66.include <bsd.prog.mk> 67