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