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