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