minix/sys/arch/i386/stand/mbr/Makefile.mbr
Lionel Sambuc 433d6423c3 New sources layout
Change-Id: Ic716f336b7071063997cf5b4dae6d50e0b4631e9
2014-07-31 16:00:30 +02:00

72 lines
1.5 KiB
Makefile

# $NetBSD: Makefile.mbr,v 1.18 2011/05/20 15:05:02 joerg Exp $
S= ${.CURDIR}/../../../../..
NOMAN= # defined
LIBCRT0= # nothing
LIBCRTBEGIN= # nothing
LIBCRTEND= # nothing
LIBC= # nothing
PIE_CFLAGS=
PIE_LDFLAGS=
PIE_AFLAGS=
.include <bsd.own.mk>
STRIPFLAG= # override
SRCS?= mbr.S
BINDIR= /usr/mdec
BINMODE= 444
.PATH: ${.CURDIR}/..
LDFLAGS+= -nostdlib -Wl,-e,start
CPPFLAGS+= -I. -I${.CURDIR}/../../lib -I${S}
.if ${MACHINE_ARCH} == "x86_64"
LDFLAGS+= -Wl,-m,elf_i386
AFLAGS+= -m32
.endif
BUILDSYMLINKS+= $S/arch/i386/include machine \
$S/arch/x86/include x86
DPSRCS+= machine x86
CLEANFILES+= ${PROG}.tmp
LOADADDR= 0x8800
AFLAGS.mbr.S= ${${ACTIVE_CC} == "clang":?-no-integrated-as:}
AFLAGS.gpt.S= ${${ACTIVE_CC} == "clang":?-no-integrated-as:}
.if defined(__MINIX)
CPPFLAGS+= -DLOADADDR=${LOADADDR}
AFLAGS.mbr.S+= -Wa,--divide
BUILDSYMLINKS+= \
${NETBSDSRCDIR}/minix/include/arch/i386/include/stackframe.h machine/stackframe.h \
${NETBSDSRCDIR}/minix/include/arch/i386/include/fpu.h machine/fpu.h
DPSRCS+= machine/stackframe.h machine/fpu.h
.endif # defined(__MINIX)
${PROG}: ${OBJS}
${_MKTARGET_LINK}
.if defined(__MINIX)
${CC} -o ${PROG}.tmp ${LDFLAGS} -Wl,--section-start=.text=${LOADADDR} ${OBJS}
.else
${CC} -o ${PROG}.tmp ${LDFLAGS} -Wl,-Ttext,${LOADADDR} ${OBJS}
.endif
@ set -- $$( ${NM} -t d ${PROG}.tmp | grep '\<mbr_space\>' \
| ${TOOL_SED} 's/^0*//' ); \
echo "#### There are $$1 free bytes in ${PROG}"
${OBJCOPY} -O binary ${PROG}.tmp ${PROG}
rm -f ${PROG}.tmp
.include <bsd.prog.mk>