dts.mk revision 1.11
1# $NetBSD: dts.mk,v 1.11 2019/04/23 13:36:42 christos Exp $ 2 3DTSARCH?=${MACHINE_CPU} 4DTSGNUARCH?=${DTSARCH} 5DTSPADDING?=1024 6 7.if !make(obj) && !make(clean) && !make(cleandir) 8.BEGIN:: 9 -@mkdir -p dts 10.for _arch in ${DTSGNUARCH} 11 -@ln -shf ${S:S@^../@../../@}/external/gpl2/dts/dist/arch/${_arch}/boot/dts dts/${_arch} 12.endfor 13.endif 14 15DTSINC?=$S/external/gpl2/dts/dist/include 16.for _arch in ${DTSARCH} 17DTSDIR+=$S/arch/${_arch}/dts 18.endfor 19.for _arch in ${DTSGNUARCH} 20DTSDIR+=$S/external/gpl2/dts/dist/arch/${_arch}/boot/dts 21.for _dir in ${DTSSUBDIR} 22.if exists($S/external/gpl2/dts/dist/arch/${_arch}/boot/dts/${_dir}) 23DTSDIR+=$S/external/gpl2/dts/dist/arch/${_arch}/boot/dts/${_dir} 24.endif 25.endfor 26.endfor 27 28DTSPATH=${DTSINC} ${DTSDIR} ${DTS_OVERLAYDIR} dts 29 30.SUFFIXES: .dtd .dtdo .dtb .dtbo .dts 31 32.dts.dtd: 33 (${CPP} -P -xassembler-with-cpp ${DTSPATH:@v@-I ${v}@} \ 34 -include ${.IMPSRC} /dev/null | \ 35 ${TOOL_DTC} ${DTSPATH:@v@-i ${v}@} -I dts -O dtb \ 36 -p ${DTSPADDING} -b 0 -@ -o /dev/null -d /dev/stdout | \ 37 ${TOOL_SED} -e 's@/dev/null@${.TARGET:.dtd=.dtb}@' \ 38 -e 's@<stdin>@${.IMPSRC}@' && \ 39 ${CPP} -P -xassembler-with-cpp ${DTSPATH:@v@-I ${v}@} \ 40 -include ${.IMPSRC} -M /dev/null | \ 41 ${TOOL_SED} -e 's@null.o@${.TARGET:.dtd=.dtb}@' \ 42 -e 's@/dev/null@@') > ${.TARGET} 43 44.dts.dtdo: 45 (${CPP} -P -xassembler-with-cpp ${DTSPATH:@v@-I ${v}@} \ 46 -include ${.IMPSRC} /dev/null | \ 47 ${TOOL_DTC} ${DTSPATH:@v@-i ${v}@} -I dts -O dtb \ 48 -@ -o /dev/null -d /dev/stdout | \ 49 ${TOOL_SED} -e 's@/dev/null@${.TARGET:.dtdo=.dtbo}@' \ 50 -e 's@<stdin>@${.IMPSRC}@' && \ 51 ${CPP} -P -xassembler-with-cpp ${DTSPATH:@v@-I ${v}@} \ 52 -include ${.IMPSRC} -M /dev/null | \ 53 ${TOOL_SED} -e 's@null.o@${.TARGET:.dtdo=.dtbo}@' \ 54 -e 's@/dev/null@@') > ${.TARGET} 55 56.dts.dtb: 57 ${CPP} -P -xassembler-with-cpp ${DTSPATH:@v@-I ${v}@} \ 58 -include ${.IMPSRC} /dev/null | \ 59 ${TOOL_DTC} ${DTSPATH:@v@-i ${v}@} -I dts -O dtb \ 60 -p ${DTSPADDING} -b 0 -@ -o ${.TARGET} 61 62.dts.dtbo: 63 ${CPP} -P -xassembler-with-cpp ${DTSPATH:@v@-I ${v}@} \ 64 -include ${.IMPSRC} /dev/null | \ 65 ${TOOL_DTC} ${DTSPATH:@v@-i ${v}@} -I dts -O dtb \ 66 -@ -o ${.TARGET} 67 68.PATH.dts: ${DTSDIR} ${DTS_OVERLAYDIR} 69 70DEPS+= ${DTS:.dts=.dtd} 71DEPS+= ${DTS_OVERLAYS:.dts=.dtdo} 72DTB= ${DTS:.dts=.dtb} 73DTBO= ${DTS_OVERLAYS:.dts=.dtbo} 74 75all: ${DTB} ${DTBO} 76