1 # $NetBSD: dts.mk,v 1.3 2017/09/07 21:22:19 jmcneill Exp $ 2 3 DTSARCH?=${MACHINE_CPU} 4 DTSGNUARCH?=${DTSARCH} 5 DTSPADDING?=1024 6 7 DTSINC?=$S/external/gpl2/dts/dist/include 8 .for _arch in ${DTSARCH} 9 DTSDIR+=$S/arch/${_arch}/dts 10 .endfor 11 .for _arch in ${DTSGNUARCH} 12 DTSDIR+=$S/external/gpl2/dts/dist/arch/${_arch}/boot/dts 13 .for _dir in ${DTSSUBDIR} 14 .if exists($S/external/gpl2/dts/dist/arch/${_arch}/boot/dts/${_dir}) 15 DTSDIR+=$S/external/gpl2/dts/dist/arch/${_arch}/boot/dts/${_dir} 16 .endif 17 .endfor 18 .endfor 19 20 DTSPATH=${DTSINC} ${DTSDIR} 21 22 .SUFFIXES: .dtd .dtb .dts 23 24 .dts.dtd: 25 (${CPP} -P -xassembler-with-cpp ${DTSPATH:@v@-I ${v}@} \ 26 -include ${.IMPSRC} /dev/null | \ 27 ${TOOL_DTC} ${DTSPATH:@v@-i ${v}@} -I dts -O dtb \ 28 -p ${DTSPADDING} -b 0 -o /dev/null -d /dev/stdout | \ 29 ${TOOL_SED} -e 's@/dev/null@${.TARGET:.dtd=.dtb}@' \ 30 -e 's@<stdin>@${.IMPSRC}@' && \ 31 ${CPP} -P -xassembler-with-cpp ${DTSPATH:@v@-I ${v}@} \ 32 -include ${.IMPSRC} -M /dev/null | \ 33 ${TOOL_SED} -e 's (a] null.o@${.TARGET:.dtd=.dtb}@' \ 34 -e 's@/dev/null@@') > ${.TARGET} 35 36 37 .dts.dtb: 38 ${CPP} -P -xassembler-with-cpp ${DTSPATH:@v@-I ${v}@} \ 39 -include ${.IMPSRC} /dev/null | \ 40 ${TOOL_DTC} ${DTSPATH:@v@-i ${v}@} -I dts -O dtb \ 41 -p ${DTSPADDING} -b 0 -o ${.TARGET} 42 43 .PATH.dts: ${DTSDIR} 44 45 DEPS+= ${DTS:.dts=.dtd} 46 DTB= ${DTS:.dts=.dtb} 47 48 all: ${DTB} 49