summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPavel Modilaynen <pavel.modilaynen@axis.com>2019-07-12 13:52:19 +0200
committerRob Herring <robh@kernel.org>2019-11-04 11:21:07 -0600
commit067c650c456e758f933aaf87a202f841d34be269 (patch)
tree276b47912c6e78fe14df3b50a2267260b6b9f8be
parent1ee1ffe1f0fb77fd3e86cb23acb0f81976e5dc3c (diff)
dtc: Use pkg-config to locate libyaml
Using Makefile's wildcard with absolute path to detect the presence of libyaml results in false-positive detection when cross-compiling e.g. in yocto environment. The latter results in build error: | scripts/dtc/yamltree.o: In function `yaml_propval_int': | yamltree.c: undefined reference to `yaml_sequence_start_event_initialize' | yamltree.c: undefined reference to `yaml_emitter_emit' | yamltree.c: undefined reference to `yaml_scalar_event_initialize' ... Use pkg-config to locate libyaml to address this scenario. Signed-off-by: Pavel Modilaynen <pavel.modilaynen@axis.com> [robh: silence stderr] Signed-off-by: Rob Herring <robh@kernel.org>
-rw-r--r--scripts/dtc/Makefile4
1 files changed, 2 insertions, 2 deletions
diff --git a/scripts/dtc/Makefile b/scripts/dtc/Makefile
index 82160808765c..b5a5b1c548c9 100644
--- a/scripts/dtc/Makefile
+++ b/scripts/dtc/Makefile
@@ -11,7 +11,7 @@ dtc-objs += dtc-lexer.lex.o dtc-parser.tab.o
# Source files need to get at the userspace version of libfdt_env.h to compile
HOST_EXTRACFLAGS := -I $(srctree)/$(src)/libfdt
-ifeq ($(wildcard /usr/include/yaml.h),)
+ifeq ($(shell pkg-config --exists yaml-0.1 2>/dev/null && echo yes),)
ifneq ($(CHECK_DTBS),)
$(error dtc needs libyaml for DT schema validation support. \
Install the necessary libyaml development package.)
@@ -19,7 +19,7 @@ endif
HOST_EXTRACFLAGS += -DNO_YAML
else
dtc-objs += yamltree.o
-HOSTLDLIBS_dtc := -lyaml
+HOSTLDLIBS_dtc := $(shell pkg-config yaml-0.1 --libs)
endif
# Generated files need one more search path to include headers in source tree