Home | History | Annotate | Line # | Download | only in bootxx
Makefile.bootxx revision 1.7.2.1
      1  1.7.2.1  skrll #	$NetBSD: Makefile.bootxx,v 1.7.2.1 2009/01/19 13:16:01 skrll Exp $
      2      1.1    leo 
      3      1.1    leo NOMAN=	# defined
      4      1.1    leo 
      5      1.1    leo # for OBJECT_FMT
      6      1.1    leo .include <bsd.own.mk>
      7      1.1    leo 
      8      1.1    leo PROG=	bootxx
      9      1.1    leo 
     10      1.1    leo STRIPFLAG=
     11      1.1    leo BINMODE=${NONBINMODE}
     12      1.1    leo 
     13  1.7.2.1  skrll # XXX SHOULD NOT NEED TO DEFINE THESE!
     14      1.1    leo LIBCRT0=
     15  1.7.2.1  skrll LIBC=
     16  1.7.2.1  skrll LIBCRTBEGIN=
     17  1.7.2.1  skrll LIBCRTEND=
     18      1.1    leo 
     19      1.1    leo # logically src/sys
     20      1.1    leo S=${.CURDIR}/../../../../..
     21      1.1    leo S_SA=${S}/lib/libsa
     22      1.1    leo S_KERN=${S}/lib/libkern
     23      1.1    leo S_MACHSA=${S}/arch/atari/stand/libsa
     24      1.1    leo S_LIBTOS=${S}/arch/atari/stand/tostools/libtos
     25      1.1    leo 
     26      1.1    leo S_MACHSAOBJ!=	cd ${S_MACHSA} && ${PRINTOBJDIR}
     27      1.1    leo 
     28      1.1    leo LIBSA=${S_MACHSAOBJ}/libsa.a
     29      1.1    leo 
     30  1.7.2.1  skrll .include "../../Makefile.booters"
     31  1.7.2.1  skrll .include "../../xxboot/${BTYPE}_LOADADDR"
     32      1.1    leo 
     33      1.1    leo 
     34  1.7.2.1  skrll BOOTXX_MAXSIZE=		6656
     35  1.7.2.1  skrll 
     36  1.7.2.1  skrll CPPFLAGS+=	-I. -I${S_LIBTOS} -I${S_MACHSA} -I${S_KERN} -I${S_SA} -I${S}
     37  1.7.2.1  skrll .if ${OBJECT_FMT} == "ELF"
     38  1.7.2.1  skrll LINKFLAGS=	-static -N -e start -Ttext ${LOADADDR}
     39  1.7.2.1  skrll .else
     40  1.7.2.1  skrll LINKFLAGS=	-static -N -Ttext ${LOADADDR}
     41  1.7.2.1  skrll .endif
     42  1.7.2.1  skrll 
     43  1.7.2.1  skrll .PATH: ${.CURDIR}/.. ${S_LIBTOS}
     44      1.1    leo 
     45  1.7.2.1  skrll #
     46  1.7.2.1  skrll # Warning: start.S should be the first source!
     47  1.7.2.1  skrll #
     48  1.7.2.1  skrll SRCS=	start.S bootxx.c filesystem.c
     49      1.1    leo 
     50  1.7.2.1  skrll LIBS=	${LIBSA}
     51      1.1    leo 
     52  1.7.2.1  skrll beforeinstall:
     53  1.7.2.1  skrll 	${INSTALL_DIR} ${DESTDIR}${BINDIR}
     54      1.1    leo 
     55  1.7.2.1  skrll ${PROG}:	${OBJS} ${LIBS}
     56  1.7.2.1  skrll 	${_MKTARGET_LINK}
     57  1.7.2.1  skrll 	${LD} ${LINKFLAGS} -o ${.TARGET}.elf ${OBJS} ${LIBS}
     58  1.7.2.1  skrll 	${OBJCOPY} -O binary ${PROG}.elf ${PROG}.bin
     59  1.7.2.1  skrll 	${SIZE} ${PROG}.elf
     60  1.7.2.1  skrll 	@len=`${SIZE} ${PROG}.elf |					\
     61  1.7.2.1  skrll 	    ${TOOL_AWK} 'NR==2 { print $$1+$$2 }'`;			\
     62  1.7.2.1  skrll 	if [ "$$len" -gt ${BOOTXX_MAXSIZE} ]; then			\
     63  1.7.2.1  skrll 		echo "### ${PROG} text+data size $$len is"		\
     64  1.7.2.1  skrll 		    "larger than ${BOOTXX_MAXSIZE}" >&2; \
     65  1.7.2.1  skrll 		exit 1;							\
     66  1.7.2.1  skrll 	fi;
     67  1.7.2.1  skrll 	${TOOL_CAT} ${PROG}.bin /dev/zero |				\
     68  1.7.2.1  skrll 	    dd of=${PROG}.tmp bs=1 count=6656  2>/dev/null
     69  1.7.2.1  skrll 	mv ${PROG}.tmp ${.TARGET}
     70      1.1    leo 
     71  1.7.2.1  skrll CLEANFILES+=	${PROG}.elf ${PROG}.bin ${PROG}.tmp
     72      1.1    leo 
     73      1.1    leo .include <bsd.prog.mk>
     74