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