Makefile.bootxx revision 1.2.2.1 1 # $NetBSD: Makefile.bootxx,v 1.2.2.1 2004/08/03 10:33:26 skrll Exp $
2
3 NOMAN= # defined
4
5 # for OBJECT_FMT
6 .include <bsd.own.mk>
7
8 PROG= bootxx
9 SRCS= bootxx.c filesystem.c
10
11 STRIPFLAG=
12 BINDIR= /usr/mdec/${BTYPE:tl}
13 BINMODE=${NONBINMODE}
14
15 LIBCRT0=
16
17 DEFS= -D_STANDALONE -DHEAP_VARIABLE
18 INCL= -I. -I${S_LIBTOS} -I${S_MACHSA} -I${S_KERN} -I${S_SA} -I${S}
19
20 CPPFLAGS+= ${DEFS} ${INCL}
21 CFLAGS+= -Wall -Wno-uninitialized
22 CFLAGS+= -fomit-frame-pointer -fno-function-cse -fstrength-reduce
23 CFLAGS+= -ffreestanding
24 .if ${OBJECT_FMT} == "ELF"
25 LDFLAGS= -static -nostdlib -Wl,-x,-N,-e,bootxx,-Ttext,${LOADADDR}
26 .else
27 LDFLAGS= -static -nostdlib -Wl,-N,-Ttext,${LOADADDR}
28 .endif
29
30 # logically src/sys
31 S=${.CURDIR}/../../../../..
32 S_SA=${S}/lib/libsa
33 S_KERN=${S}/lib/libkern
34 S_MACHSA=${S}/arch/atari/stand/libsa
35 S_LIBTOS=${S}/arch/atari/stand/tostools/libtos
36
37 S_MACHSAOBJ!= cd ${S_MACHSA} && ${PRINTOBJDIR}
38
39 LIBSA=${S_MACHSAOBJ}/libsa.a
40
41 DPADD= ${LIBSA}
42 LDADD= ${LIBSA}
43
44 beforeinstall:
45 @len=`${SIZE} ${PROG} | awk 'NR==2 { print $$1+$$2 }'`; \
46 if [ $$len -gt 6656 ]; then \
47 ${SIZE} ${PROG}; \
48 false; \
49 fi; \
50 ${OBJCOPY} -O binary ${PROG} ${PROG}XX
51 @${TOOL_CAT} ${PROG}XX /dev/zero | dd of=${PROG}X \
52 bs=1 count=6656 2>/dev/null
53 @mv -f ${PROG} ${PROG}XX
54 @mv -f ${PROG}X ${PROG};
55 ${INSTALL_DIR} ${DESTDIR}${BINDIR}
56
57 afterinstall:
58 @mv -f ${PROG}XX ${PROG}
59
60 .s.o: ../../xxboot/${BTYPE}_LOADADDR
61 ${CPP} ${CPPFLAGS} ${.IMPSRC} | ${AS} ${ASFLAGS} -o ${.TARGET}
62
63 .c.o:
64 ${CC} ${CFLAGS} ${CPPFLAGS} -c ${.IMPSRC} -o ${.TARGET}
65
66 ${PROG}:
67 ${CC} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
68
69 ${PROG}: ../../xxboot/${BTYPE}_LOADADDR
70
71 .PATH: ${.CURDIR}/.. ${S_LIBTOS}
72
73 .include "../../xxboot/${BTYPE}_LOADADDR"
74 .include <bsd.prog.mk>
75