xref: /utopia/UTPA2-700.0.x/projects/build/scripts/dtc/Makefile (revision 53ee8cc121a030b8d368113ac3e966b4705770ef)
1*53ee8cc1Swenshuai.xi# scripts/dtc makefile
2*53ee8cc1Swenshuai.xi
3*53ee8cc1Swenshuai.xihostprogs-y	:= dtc
4*53ee8cc1Swenshuai.xialways		:= $(hostprogs-y)
5*53ee8cc1Swenshuai.xi
6*53ee8cc1Swenshuai.xidtc-objs	:= dtc.o flattree.o fstree.o data.o livetree.o treesource.o \
7*53ee8cc1Swenshuai.xi		   srcpos.o checks.o util.o
8*53ee8cc1Swenshuai.xidtc-objs	+= dtc-lexer.lex.o dtc-parser.tab.o
9*53ee8cc1Swenshuai.xi
10*53ee8cc1Swenshuai.xi# Source files need to get at the userspace version of libfdt_env.h to compile
11*53ee8cc1Swenshuai.xi
12*53ee8cc1Swenshuai.xiHOSTCFLAGS_DTC := -I$(src) -I$(src)/libfdt
13*53ee8cc1Swenshuai.xi
14*53ee8cc1Swenshuai.xiHOSTCFLAGS_checks.o := $(HOSTCFLAGS_DTC)
15*53ee8cc1Swenshuai.xiHOSTCFLAGS_data.o := $(HOSTCFLAGS_DTC)
16*53ee8cc1Swenshuai.xiHOSTCFLAGS_dtc.o := $(HOSTCFLAGS_DTC)
17*53ee8cc1Swenshuai.xiHOSTCFLAGS_flattree.o := $(HOSTCFLAGS_DTC)
18*53ee8cc1Swenshuai.xiHOSTCFLAGS_fstree.o := $(HOSTCFLAGS_DTC)
19*53ee8cc1Swenshuai.xiHOSTCFLAGS_livetree.o := $(HOSTCFLAGS_DTC)
20*53ee8cc1Swenshuai.xiHOSTCFLAGS_srcpos.o := $(HOSTCFLAGS_DTC)
21*53ee8cc1Swenshuai.xiHOSTCFLAGS_treesource.o := $(HOSTCFLAGS_DTC)
22*53ee8cc1Swenshuai.xiHOSTCFLAGS_util.o := $(HOSTCFLAGS_DTC)
23*53ee8cc1Swenshuai.xi
24*53ee8cc1Swenshuai.xiHOSTCFLAGS_dtc-lexer.lex.o := $(HOSTCFLAGS_DTC)
25*53ee8cc1Swenshuai.xiHOSTCFLAGS_dtc-parser.tab.o := $(HOSTCFLAGS_DTC)
26*53ee8cc1Swenshuai.xi
27*53ee8cc1Swenshuai.xi# dependencies on generated files need to be listed explicitly
28*53ee8cc1Swenshuai.xi$(obj)/dtc-parser.tab.o: $(obj)/dtc-parser.tab.c $(obj)/dtc-parser.tab.h
29*53ee8cc1Swenshuai.xi$(obj)/dtc-lexer.lex.o:  $(obj)/dtc-lexer.lex.c $(obj)/dtc-parser.tab.h
30*53ee8cc1Swenshuai.xi
31*53ee8cc1Swenshuai.xitargets += dtc-parser.tab.c dtc-lexer.lex.c
32*53ee8cc1Swenshuai.xi
33*53ee8cc1Swenshuai.xiclean-files += dtc-parser.tab.h
34*53ee8cc1Swenshuai.xi
35*53ee8cc1Swenshuai.xi# GENERATE_PARSER := 1		# Uncomment to rebuild flex/bison output
36*53ee8cc1Swenshuai.xi
37*53ee8cc1Swenshuai.xiifdef GENERATE_PARSER
38*53ee8cc1Swenshuai.xi
39*53ee8cc1Swenshuai.xiBISON = bison
40*53ee8cc1Swenshuai.xiFLEX = flex
41*53ee8cc1Swenshuai.xi
42*53ee8cc1Swenshuai.xiquiet_cmd_bison = BISON   $@
43*53ee8cc1Swenshuai.xi      cmd_bison = $(BISON) -o$@ -d $<; cp $@ $@_shipped
44*53ee8cc1Swenshuai.xiquiet_cmd_flex = FLEX    $@
45*53ee8cc1Swenshuai.xi      cmd_flex = $(FLEX) -o$@ $<; cp $@ $@_shipped
46*53ee8cc1Swenshuai.xi
47*53ee8cc1Swenshuai.xi$(obj)/dtc-parser.tab.c: $(src)/dtc-parser.y FORCE
48*53ee8cc1Swenshuai.xi        $(call if_changed,bison)
49*53ee8cc1Swenshuai.xi
50*53ee8cc1Swenshuai.xi$(obj)/dtc-parser.tab.h: $(obj)/dtc-parser.tab.c
51*53ee8cc1Swenshuai.xi
52*53ee8cc1Swenshuai.xi$(obj)/dtc-lexer.lex.c: $(src)/dtc-lexer.l FORCE
53*53ee8cc1Swenshuai.xi        $(call if_changed,flex)
54*53ee8cc1Swenshuai.xi
55*53ee8cc1Swenshuai.xiendif
56