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