Annotation of sys/arch/landisk/stand/xxboot/Makefile, Revision 1.1.1.1
1.1 nbrk 1: # $OpenBSD: Makefile,v 1.3 2006/11/08 20:03:32 drahn Exp $
2:
3: MAN= xxboot.8
4:
5: .if ${MACHINE} == "landisk"
6: PROG= xxboot
7: LINKS= ${BINDIR}/xxboot ${BINDIR}/sdboot
8: LINKS+= ${BINDIR}/xxboot ${BINDIR}/wdboot
9: SRCS= pbr.S xxboot.S boot1.c
10: LDFLAGS=-nostdlib -Ttext 0x8c201000 -N -x -Bstatic -e start
11:
12: INSTALL_STRIP=
13:
14: XXBOOT_SECTORS?= 15
15: XXBOOT_MAXSIZE?= (( ${XXBOOT_SECTORS} * 512 ))
16:
17: CPPFLAGS+=-D_STANDALONE
18: CPPFLAGS+=-nostdinc -I${.OBJDIR} -I${.CURDIR}/.. -I${.CURDIR}/../../../..
19: CPPFLAGS+=-DLOADADDRESS=0x8ff00000 -DXXBOOT_SECTORS=${XXBOOT_SECTORS}
20: CFLAGS+=-m4-nofpu
21:
22: OBJCOPY?=objcopy
23:
24: S= ${.CURDIR}/../../../..
25: SAREL=
26: .include "${S}/lib/libsa/Makefile.inc"
27: DPADD+= $(SALIB)
28: LDADD+= $(SALIB)
29:
30: KERN_AS?= library
31: .include "${S}/lib/libkern/Makefile.inc"
32: DPADD+= $(KERNLIB)
33: LDADD+= $(KERNLIB)
34:
35: LIBGCC!=${CC} -print-libgcc-file-name
36: LDADD+= $(LIBGCC)
37:
38: ${PROG}: ${OBJS} ${DPADD}
39: ${LD} -o ${PROG}.sym ${LDFLAGS} \
40: -Map ${PROG}.map -cref ${OBJS} ${LDADD}
41: ${OBJCOPY} -O binary ${PROG}.sym ${PROG}
42: @ sz=$$(ls -ln ${PROG} | tr -s ' ' | cut -d' ' -f5); \
43: if [ "$$sz" -gt "$$${XXBOOT_MAXSIZE}" ]; then \
44: echo "### ${PROG} size $$sz is larger than ${XXBOOT_MAXSIZE}" >&2 \
45: rm -f ${PROG}; \
46: ! :; \
47: else \
48: : pad to sector boundary; \
49: pad=$$(( 512 - ( $$sz & 511 ) )); \
50: [ $$pad = 512 ] || \
51: dd if=/dev/zero bs=1 count=$$pad >>${PROG} 2>/dev/null; \
52: echo "${PROG} size $$sz, $$((${XXBOOT_MAXSIZE} - $$sz)) free"; \
53: fi
54: .else
55: NOPROG=
56: .endif
57:
58:
59: .include <bsd.prog.mk>
CVSweb