Makefile revision 1.9
1#	$NetBSD: Makefile,v 1.9 2009/02/14 13:52:51 abs Exp $
2
3S=	${.CURDIR}/../../../..
4
5NOMAN=		# defined
6STRIPFLAG=	# nothing
7
8LIBCRT0=	# nothing
9LIBCRTBEGIN=	# nothing
10LIBCRTEND=	# nothing
11LIBC=		# nothing
12
13PRIMARY_LOAD_ADDRESS=0x600
14SECONDARY_LOAD_ADDRESS=0x10000
15
16PIE_CFLAGS=
17PIE_LDFLAGS=
18PIE_AFLAGS=
19
20.include <bsd.own.mk>
21
22PROG=	cdboot
23SRCS?=	cdboot.S
24
25BINDIR=	/usr/mdec
26BINMODE=444
27
28.PATH:	${.CURDIR}/..
29
30LDFLAGS+= -nostdlib -Wl,-e,start
31CPPFLAGS+= -I. -I${.CURDIR}/../lib -I${S}
32CPPFLAGS+= -DPRIMARY_LOAD_ADDRESS=${PRIMARY_LOAD_ADDRESS}
33CPPFLAGS+= -DSECONDARY_LOAD_ADDRESS=${SECONDARY_LOAD_ADDRESS}
34#CPPFLAGS+= -DDISABLE_KEYPRESS
35
36.if ${MACHINE_ARCH} == "x86_64"
37LDFLAGS+=  -Wl,-m,elf_i386
38AFLAGS+=   -m32
39.endif
40
41.if !make(obj) && !make(clean) && !make(cleandir)
42.BEGIN: machine x86
43.NOPATH: machine x86
44.endif
45
46realdepend realall: machine x86
47CLEANFILES+= machine x86
48
49machine::
50	-rm -f $@
51	ln -s $S/arch/i386/include $@
52
53x86::
54	-rm -f $@
55	ln -s $S/arch/x86/include $@
56
57${OBJS}: machine x86
58
59CLEANFILES+= ${PROG}.tmp
60
61${PROG}: ${OBJS}
62	${_MKTARGET_LINK}
63	${CC} -o ${PROG}.tmp ${LDFLAGS} -Wl,-Ttext,${PRIMARY_LOAD_ADDRESS} ${OBJS}
64	@ set -- $$( ${NM} -t d ${PROG}.tmp | grep '\<free_space\>' \
65		    | ${TOOL_SED} 's/^0*//'  ); \
66		echo "#### There are $$1 free bytes in ${PROG}"
67	${OBJCOPY} -O binary ${PROG}.tmp ${PROG}
68	rm -f ${PROG}.tmp
69
70.include <bsd.prog.mk>
71