1 # $NetBSD: Makefile,v 1.14 2013/12/05 16:26:04 joerg Exp $ 2 3 S= ${.CURDIR}/../../../.. 4 5 PROG= bootmini2440 6 SRCS= entry.S main.c devopen.c netif.c dev_net.c dm9000.c dev_sdmmc.c 7 SRCS+= s3csdi.c vers.c 8 9 .include <bsd.own.mk> 10 .include <bsd.klinks.mk> 11 12 CLEANFILES+= vers.c ${PROG}.elf 13 CFLAGS+= -Wall -Wno-main -ffreestanding -fno-unwind-tables 14 CPPFLAGS+= -D_STANDALONE -DSUPPORT_DHCP -DLIBSA_PRINTF_WIDTH_SUPPORT 15 CPPFLAGS+= -DDM9000MAC="0x08,0x08,0x11,0x18,0x12,0x27" 16 CPPFLAGS+= -DDEFAULT_BOOTFILE="ld0a:netbsd;net:" 17 CPPFLAGS+= -nostdinc -I. -I${.OBJDIR} -I${S} -I${S}/arch 18 CPPFLAGS+= -march=armv4 -mabi=apcs-gnu -mfloat-abi=soft 19 .if ${HAVE_LLVM:Uno} != "no" || ${HAVE_GCC:U0} >= 48 20 CPPFLAGS+= -marm 21 .else 22 CPPFLAGS+= -mno-thumb -mno-thumb-interwork 23 .endif 24 CPUFLAGS= 25 DBG= -Os 26 27 CWARNFLAGS.clang+= -Wno-asm-operand-widths 28 29 LIBCRT0= # nothing 30 LIBCRTBEGIN= # nothing 31 LIBCRTEND= # nothing 32 LIBC= # nothing 33 34 MAN= # no manual page 35 NOMAN= # defined 36 STRIPFLAG= 37 BINMODE= 444 38 39 RELOC= 0x30A00000 40 ENTRY= _start 41 42 ### find out what to use for libkern 43 KERN_AS= library 44 .include "${S}/lib/libkern/Makefile.inc" 45 LIBKERN= ${KERNLIB} 46 47 ### find out what to use for libz 48 Z_AS= library 49 .include "${S}/lib/libz/Makefile.inc" 50 LIBZ= ${ZLIB} 51 52 ### find out what to use for libsa 53 SA_AS= library 54 SAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes 55 .include "${S}/lib/libsa/Makefile.inc" 56 LIBSA= ${SALIB} 57 58 .PHONY: vers.c 59 vers.c: version 60 ${HOST_SH} ${S}/conf/newvers_stand.sh -K \ 61 ${${MKREPRO} == "yes" :?:-D} ${.CURDIR}/version "evbarm" 62 63 ${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 64 ${_MKTARGET_LINK} 65 ${LD} -N -Ttext ${RELOC} -Bstatic -e ${ENTRY} -o ${.TARGET}.elf \ 66 ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 67 ${OBJCOPY} -S -O binary ${.TARGET}.elf ${.TARGET} 68 69 .include <bsd.prog.mk> 70