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 | ||
