Home | History | Annotate | Line # | Download | only in cdboot
Makefile revision 1.13
      1 #	$NetBSD: Makefile,v 1.13 2013/09/12 05:54:38 joerg 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 LIBCRTBEGIN=	# nothing
     18 LIBCRTEND=	# nothing
     19 LIBC=		# nothing
     20 
     21 PRIMARY_LOAD_ADDRESS=	0x1000
     22 SECONDARY_LOAD_ADDRESS=	0x10000
     23 
     24 PROG=		bootxx_cd9660
     25 SRCS?=		cdboot.S
     26 
     27 BINDIR=		/usr/mdec
     28 BINMODE=	444
     29 
     30 .PATH:		${.CURDIR}/..
     31 
     32 LDFLAGS+=	-nostdlib -Wl,-e,start
     33 CPPFLAGS+=	-I. -I${.CURDIR}/../lib -I${S}
     34 CPPFLAGS+=	-DPRIMARY_LOAD_ADDRESS=${PRIMARY_LOAD_ADDRESS}
     35 CPPFLAGS+=	-DSECONDARY_LOAD_ADDRESS=${SECONDARY_LOAD_ADDRESS}
     36 CPPFLAGS+=	-DDISABLE_KEYPRESS
     37 
     38 .if ${MACHINE_ARCH} == "x86_64"
     39 LDFLAGS+=	-Wl,-m,elf_i386
     40 AFLAGS+=	-m32
     41 .endif
     42 
     43 BUILDSYMLINKS+=	$S/arch/i386/include	machine \
     44 		$S/arch/x86/include	x86
     45 
     46 DPSRCS+=	machine x86
     47 
     48 CLEANFILES+=	${PROG}.tmp
     49 
     50 ${PROG}: ${OBJS}
     51 	${_MKTARGET_LINK}
     52 	${CC} -o ${PROG}.tmp ${LDFLAGS} -Wl,-Ttext,${PRIMARY_LOAD_ADDRESS} \
     53 	    ${OBJS}
     54 	@ set -- $$( ${NM} -t d ${PROG}.tmp | grep '\<free_space\>' \
     55 		| ${TOOL_SED} 's/^0*//'  ); \
     56 		echo "#### There are $$1 free bytes in ${PROG}"
     57 	${OBJCOPY} -O binary ${PROG}.tmp ${PROG}
     58 	rm -f ${PROG}.tmp
     59 
     60 .include <bsd.prog.mk>
     61