1 # SPDX-License-Identifier: GPL-2.0 << 2 # scripts/dtc makefile 1 # scripts/dtc makefile 3 2 4 # *** Also keep .gitignore in sync when changi !! 3 hostprogs-y := dtc 5 hostprogs-always-$(CONFIG_DTC) += dtc !! 4 always := $(hostprogs-y) 6 hostprogs-always-$(CHECK_DTBS) += dtc << 7 5 8 dtc-objs := dtc.o flattree.o fstree.o d 6 dtc-objs := dtc.o flattree.o fstree.o data.o livetree.o treesource.o \ 9 srcpos.o checks.o util.o !! 7 srcpos.o checks.o 10 dtc-objs += dtc-lexer.lex.o dtc-parser. 8 dtc-objs += dtc-lexer.lex.o dtc-parser.tab.o 11 9 12 # The upstream project builds libfdt as a sepa << 13 # instead directly link the libfdt object file << 14 libfdt-objs := fdt.o fdt_ro.o fdt_wip.o fd << 15 libfdt = $(addprefix libfdt/,$(libfdt << 16 fdtoverlay-objs := $(libfdt) fdtoverlay.o util << 17 << 18 # Source files need to get at the userspace ve 10 # Source files need to get at the userspace version of libfdt_env.h to compile 19 HOST_EXTRACFLAGS += -I $(src)/libfdt << 20 HOST_EXTRACFLAGS += -DNO_YAML << 21 11 22 # Generated files need one more search path to !! 12 HOSTCFLAGS_DTC := -I$(src) -I$(src)/libfdt 23 HOSTCFLAGS_dtc-lexer.lex.o := -I $(src) !! 13 24 HOSTCFLAGS_dtc-parser.tab.o := -I $(src) !! 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 25 26 # dependencies on generated files need to be l 26 # dependencies on generated files need to be listed explicitly 27 $(obj)/dtc-lexer.lex.o: $(obj)/dtc-parser.tab. !! 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
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.