Commit | Line | Data |
---|---|---|
b2441318 | 1 | # SPDX-License-Identifier: GPL-2.0 |
9fffb55f DG |
2 | # scripts/dtc makefile |
3 | ||
9dffecc1 MY |
4 | hostprogs := dtc |
5 | always-$(CONFIG_DTC) += $(hostprogs) | |
6 | always-$(CHECK_DT_BINDING) += $(hostprogs) | |
9fffb55f DG |
7 | |
8 | dtc-objs := dtc.o flattree.o fstree.o data.o livetree.o treesource.o \ | |
658f29a5 | 9 | srcpos.o checks.o util.o |
9fffb55f DG |
10 | dtc-objs += dtc-lexer.lex.o dtc-parser.tab.o |
11 | ||
12 | # Source files need to get at the userspace version of libfdt_env.h to compile | |
9cc342f6 | 13 | HOST_EXTRACFLAGS := -I $(srctree)/$(src)/libfdt |
9fffb55f | 14 | |
067c650c | 15 | ifeq ($(shell pkg-config --exists yaml-0.1 2>/dev/null && echo yes),) |
0903060f | 16 | ifneq ($(CHECK_DT_BINDING)$(CHECK_DTBS),) |
4f0e3a57 RH |
17 | $(error dtc needs libyaml for DT schema validation support. \ |
18 | Install the necessary libyaml development package.) | |
19 | endif | |
f858927f RH |
20 | HOST_EXTRACFLAGS += -DNO_YAML |
21 | else | |
22 | dtc-objs += yamltree.o | |
f8d8b46c MY |
23 | # To include <yaml.h> installed in a non-default path |
24 | HOSTCFLAGS_yamltree.o := $(shell pkg-config --cflags yaml-0.1) | |
25 | # To link libyaml installed in a non-default path | |
067c650c | 26 | HOSTLDLIBS_dtc := $(shell pkg-config yaml-0.1 --libs) |
f858927f RH |
27 | endif |
28 | ||
e3fd9b53 | 29 | # Generated files need one more search path to include headers in source tree |
9cc342f6 MY |
30 | HOSTCFLAGS_dtc-lexer.lex.o := -I $(srctree)/$(src) |
31 | HOSTCFLAGS_dtc-parser.tab.o := -I $(srctree)/$(src) | |
9fffb55f DG |
32 | |
33 | # dependencies on generated files need to be listed explicitly | |
95abef88 | 34 | $(obj)/dtc-lexer.lex.o: $(obj)/dtc-parser.tab.h |