diff options
Diffstat (limited to 'scripts/dtc/Makefile')
-rw-r--r-- | scripts/dtc/Makefile | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/scripts/dtc/Makefile b/scripts/dtc/Makefile new file mode 100644 index 000000000000..01cdb36fc583 --- /dev/null +++ b/scripts/dtc/Makefile | |||
@@ -0,0 +1,54 @@ | |||
1 | # scripts/dtc makefile | ||
2 | |||
3 | hostprogs-y := dtc | ||
4 | always := $(hostprogs-y) | ||
5 | |||
6 | dtc-objs := dtc.o flattree.o fstree.o data.o livetree.o treesource.o \ | ||
7 | srcpos.o checks.o | ||
8 | dtc-objs += dtc-lexer.lex.o dtc-parser.tab.o | ||
9 | |||
10 | # Source files need to get at the userspace version of libfdt_env.h to compile | ||
11 | |||
12 | HOSTCFLAGS_DTC := -I$(src) -I$(src)/libfdt | ||
13 | |||
14 | HOSTCFLAGS_checks.o := $(HOSTCFLAGS_DTC) | ||
15 | HOSTCFLAGS_data.o := $(HOSTCFLAGS_DTC) | ||
16 | HOSTCFLAGS_dtc.o := $(HOSTCFLAGS_DTC) | ||
17 | HOSTCFLAGS_flattree.o := $(HOSTCFLAGS_DTC) | ||
18 | HOSTCFLAGS_fstree.o := $(HOSTCFLAGS_DTC) | ||
19 | HOSTCFLAGS_livetree.o := $(HOSTCFLAGS_DTC) | ||
20 | HOSTCFLAGS_srcpos.o := $(HOSTCFLAGS_DTC) | ||
21 | HOSTCFLAGS_treesource.o := $(HOSTCFLAGS_DTC) | ||
22 | |||
23 | HOSTCFLAGS_dtc-lexer.lex.o := $(HOSTCFLAGS_DTC) | ||
24 | HOSTCFLAGS_dtc-parser.tab.o := $(HOSTCFLAGS_DTC) | ||
25 | |||
26 | # dependencies on generated files need to be listed explicitly | ||
27 | $(obj)/dtc-parser.tab.o: $(obj)/dtc-parser.tab.c $(obj)/dtc-parser.tab.h | ||
28 | $(obj)/dtc-lexer.lex.o: $(obj)/dtc-lexer.lex.c $(obj)/dtc-parser.tab.h | ||
29 | |||
30 | targets += dtc-parser.tab.c dtc-lexer.lex.c | ||
31 | |||
32 | clean-files += dtc-parser.tab.h | ||
33 | |||
34 | # GENERATE_PARSER := 1 # Uncomment to rebuild flex/bison output | ||
35 | |||
36 | ifdef GENERATE_PARSER | ||
37 | |||
38 | BISON = bison | ||
39 | FLEX = flex | ||
40 | |||
41 | quiet_cmd_bison = BISON $@ | ||
42 | cmd_bison = $(BISON) -o$@ -d $<; cp $@ $@_shipped | ||
43 | quiet_cmd_flex = FLEX $@ | ||
44 | cmd_flex = $(FLEX) -o$@ $<; cp $@ $@_shipped | ||
45 | |||
46 | $(obj)/dtc-parser.tab.c: $(src)/dtc-parser.y FORCE | ||
47 | $(call if_changed,bison) | ||
48 | |||
49 | $(obj)/dtc-parser.tab.h: $(obj)/dtc-parser.tab.c | ||
50 | |||
51 | $(obj)/dtc-lexer.lex.c: $(src)/dtc-lexer.l FORCE | ||
52 | $(call if_changed,flex) | ||
53 | |||
54 | endif | ||