198944Sobrien# $FreeBSD: stable/11/gnu/usr.bin/dtc/Makefile 317993 2017-05-08 23:57:54Z gonzo $
298944Sobrien
398944Sobrien.include <bsd.own.mk>
498944Sobrien
598944SobrienDTCDIR=	${.CURDIR}/../../../contrib/dtc
698944Sobrien_LIBFDTDIR= ${.CURDIR}/../../../sys/contrib/libfdt
798944Sobrien.PATH: ${DTCDIR} ${_LIBFDTDIR}
898944Sobrien
998944SobrienPROG=	dtc
1098944Sobrien
1198944SobrienSRCS=	dtc.c checks.c fstree.c livetree.c treesource.c data.c \
1298944Sobrien	flattree.c srcpos.c util.c \
1398944Sobrien	fdt.c fdt_ro.c fdt_rw.c fdt_strerror.c \
1498944Sobrien	fdt_sw.c fdt_wip.c ${DTCVERSIONFILE}
1598944Sobrien
1698944SobrienWARNS?=	2
1798944SobrienCFLAGS+= -I. -I${.CURDIR} -I${DTCDIR} -I${_LIBFDTDIR}
1898944Sobrien
1998944SobrienVERSIONMAJ!= awk '/^VERSION =/ { print $$3 }' ${DTCDIR}/Makefile
2098944SobrienVERSIONMIN!= awk '/^PATCHLEVEL =/ { print $$3 }' ${DTCDIR}/Makefile
2198944SobrienVERSIONSUB!= awk '/^SUBLEVEL =/ { print $$3 }' ${DTCDIR}/Makefile
2298944SobrienVERSIONEXTRA=
2398944Sobrien
2498944SobrienDTCVERSION:=	${VERSIONMAJ}.${VERSIONMIN}.${VERSIONSUB}${VERSIONEXTRA}
2598944SobrienDTCVERSIONFILE:=	version_gen.h
2698944Sobrien
2798944SobrienMAN=
2898944Sobrien
2998944SobrienBISON=	yacc
3098944SobrienLEX=	lex
3198944Sobrien
3298944SobrienOBJS+= dtc-parser.tab.o dtc-lexer.lex.o
3398944Sobrien
3498944SobrienCLEANFILES+= dtc-parser.tab.o dtc-lexer.lex.o dtc-parser.tab.c \
3598944Sobrien		dtc-parser.tab.h dtc-lexer.lex.c ${DTCVERSIONFILE}
3698944Sobrien
3798944Sobrien${DTCVERSIONFILE}: ${DTCDIR}/Makefile
3898944Sobrien	@echo '#define DTC_VERSION "DTC ${DTCVERSION}"' > ${DTCVERSIONFILE}
3998944Sobrien
4098944Sobriendtc-parser.tab.o:	dtc-parser.tab.c dtc-parser.tab.h
4198944Sobriendtc-lexer.lex.o:	dtc-lexer.lex.c dtc-parser.tab.h
4298944Sobrien
4398944Sobriendtc-parser.tab.c:	dtc-parser.y
44130803Smarcel	${BISON} -o$@ -d ${DTCDIR}/dtc-parser.y
45130803Smarcel
46130803Smarceldtc-parser.tab.h:	dtc-parser.tab.c
4798944Sobrien
4898944Sobriendtc-lexer.lex.c: dtc-lexer.l
4998944Sobrien	${LEX} -o$@ ${DTCDIR}/dtc-lexer.l
5098944Sobrien
5198944Sobrien.include <bsd.prog.mk>
5298944Sobrien