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