Home | History | Annotate | Line # | Download | only in cdboot
Makefile revision 1.14
      1 #	$NetBSD: Makefile,v 1.14 2014/01/12 15:26:29 tsutsui Exp $
      2 
      3 S=		${.CURDIR}/../../../..
      4 
      5 AFLAGS.cdboot.S= ${${ACTIVE_CC} == "clang":?-no-integrated-as:}
      6 
      7 PIE_CFLAGS=
      8 PIE_LDFLAGS=
      9 PIE_AFLAGS=
     10 
     11 NOMAN=		# defined
     12 .include <bsd.own.mk>
     13 
     14 STRIPFLAG=	# nothing
     15 
     16 LIBCRT0=	# nothing
     17 LIBCRTI=	# nothing
     18 LIBCRTBEGIN=	# nothing
     19 LIBCRTEND=	# nothing
     20 LIBC=		# nothing
     21 
     22 PRIMARY_LOAD_ADDRESS=	0x1000
     23 SECONDARY_LOAD_ADDRESS=	0x10000
     24 
     25 PROG=		bootxx_cd9660
     26 SRCS?=		cdboot.S
     27 
     28 BINDIR=		/usr/mdec
     29 BINMODE=	444
     30 
     31 .PATH:		${.CURDIR}/..
     32 
     33 LDFLAGS+=	-nostdlib -Wl,-e,start
     34 CPPFLAGS+=	-I. -I${.CURDIR}/../lib -I${S}
     35 CPPFLAGS+=	-DPRIMARY_LOAD_ADDRESS=${PRIMARY_LOAD_ADDRESS}
     36 CPPFLAGS+=	-DSECONDARY_LOAD_ADDRESS=${SECONDARY_LOAD_ADDRESS}
     37 CPPFLAGS+=	-DDISABLE_KEYPRESS
     38 
     39 .if ${MACHINE_ARCH} == "x86_64"
     40 LDFLAGS+=	-Wl,-m,elf_i386
     41 AFLAGS+=	-m32
     42 .endif
     43 
     44 BUILDSYMLINKS+=	$S/arch/i386/include	machine \
     45 		$S/arch/x86/include	x86
     46 
     47 DPSRCS+=	machine x86
     48 
     49 CLEANFILES+=	${PROG}.tmp
     50 
     51 ${PROG}: ${OBJS}
     52 	${_MKTARGET_LINK}
     53 	${CC} -o ${PROG}.tmp ${LDFLAGS} -Wl,-Ttext,${PRIMARY_LOAD_ADDRESS} \
     54 	    ${OBJS}
     55 	@ set -- $$( ${NM} -t d ${PROG}.tmp | grep '\<free_space\>' \
     56 		| ${TOOL_SED} 's/^0*//'  ); \
     57 		echo "#### There are $$1 free bytes in ${PROG}"
     58 	${OBJCOPY} -O binary ${PROG}.tmp ${PROG}
     59 	rm -f ${PROG}.tmp
     60 
     61 .include <bsd.prog.mk>
     62