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