summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHongxu Jia <hongxu.jia@windriver.com>2025-04-07 23:10:44 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-04-10 11:05:35 +0100
commite7f14cfbac56c1e545e4e28111831a57b126276c (patch)
treee754bf49c15fba8023d3d77eb39dba704820819b
parent8308864fd1a0583f5d1e2b97b1d06869a59c333a (diff)
downloadpoky-e7f14cfbac56c1e545e4e28111831a57b126276c.tar.gz
barebox-tools: clean up yamltree from dtc
Refer Linux commit [dt-bindings: kbuild: Use DTB files for validation][1], clean up yamltree from dtc to avoid compile failure while include <yaml.h> in non-standard path | tmp/work/core2-64-wrs-linux/barebox-tools/2025.02.0/barebox-2025.02.0/scripts/ dtc/yamltree.c:9:10: fatal error: yaml.h: No such file or directory | 9 | #include <yaml.h> Since barebox actually doesn't do any dtb binding checks at the moment, just remove the test of /usr/include/yaml.h, hard-code the -DNO_YAML and remove yamltree.c from DTC_SOURCE [1] https://github.com/torvalds/linux/commit/ef8795f3f1ce (From OE-Core rev: 9eed65e4b527ae461b3993c455f129a80d0c2416) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-bsp/barebox/barebox-tools.bb4
-rw-r--r--meta/recipes-bsp/barebox/files/0001-scripts-dtc-clean-up-yamltree-from-dtc.patch60
2 files changed, 64 insertions, 0 deletions
diff --git a/meta/recipes-bsp/barebox/barebox-tools.bb b/meta/recipes-bsp/barebox/barebox-tools.bb
index 2a117bc9c0..f6395beb7c 100644
--- a/meta/recipes-bsp/barebox/barebox-tools.bb
+++ b/meta/recipes-bsp/barebox/barebox-tools.bb
@@ -2,6 +2,10 @@ SUMMARY = "barebox bootloader tools"
2 2
3require barebox-common.inc 3require barebox-common.inc
4 4
5SRC_URI += " \
6 file://0001-scripts-dtc-clean-up-yamltree-from-dtc.patch \
7"
8
5LICENSE = "GPL-2.0-only" 9LICENSE = "GPL-2.0-only"
6 10
7DEPENDS = "bison-native flex-native libusb1" 11DEPENDS = "bison-native flex-native libusb1"
diff --git a/meta/recipes-bsp/barebox/files/0001-scripts-dtc-clean-up-yamltree-from-dtc.patch b/meta/recipes-bsp/barebox/files/0001-scripts-dtc-clean-up-yamltree-from-dtc.patch
new file mode 100644
index 0000000000..fdab21ef72
--- /dev/null
+++ b/meta/recipes-bsp/barebox/files/0001-scripts-dtc-clean-up-yamltree-from-dtc.patch
@@ -0,0 +1,60 @@
1From 77afd065dc58e2f57066ef7f392c571f8136723d Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Mon, 7 Apr 2025 14:45:27 +0000
4Subject: [PATCH] scripts/dtc: clean up yamltree from dtc
5
6Refer Linux commit [dt-bindings: kbuild: Use DTB files for validation][1],
7clean up yamltree from dtc to avoid compile failure while include <yaml.h>
8in non-standard path
9
10Since barebox actually doesn't do any dtb binding checks at the moment, just
11remove the test of /usr/include/yaml.h, hard-code the -DNO_YAML and remove
12yamltree.c from DTC_SOURCE
13
14[1] https://github.com/torvalds/linux/commit/ef8795f3f1ce
15
16Upstream-Status: Submitted [https://github.com/barebox/barebox/pull/37]
17
18Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
19---
20 scripts/dtc/Makefile | 9 ---------
21 scripts/dtc/update-dtc-source.sh | 2 +-
22 2 files changed, 1 insertion(+), 10 deletions(-)
23
24diff --git a/scripts/dtc/Makefile b/scripts/dtc/Makefile
25index 721e8e2b..da00319f 100644
26--- a/scripts/dtc/Makefile
27+++ b/scripts/dtc/Makefile
28@@ -16,16 +16,7 @@ fdtget-objs += fdtget.o $(libfdt-objs) util.o
29 # Source files need to get at the userspace version of libfdt_env.h to compile
30 HOST_EXTRACFLAGS += -I$(src)/libfdt
31
32-ifeq ($(wildcard /usr/include/yaml.h),)
33-ifneq ($(CHECK_DTBS),)
34-$(error dtc needs libyaml for DT schema validation support. \
35- Install the necessary libyaml development package.)
36-endif
37 HOST_EXTRACFLAGS += -DNO_YAML
38-else
39-dtc-objs += yamltree.o
40-HOSTLDLIBS_dtc := -lyaml
41-endif
42
43 # Generated files need one more search path to include headers in source tree
44 HOSTCFLAGS_dtc-lexer.lex.o := -I$(src)
45diff --git a/scripts/dtc/update-dtc-source.sh b/scripts/dtc/update-dtc-source.sh
46index 141d3629..8aa5cd66 100755
47--- a/scripts/dtc/update-dtc-source.sh
48+++ b/scripts/dtc/update-dtc-source.sh
49@@ -31,7 +31,7 @@ DTC_UPSTREAM_PATH=`pwd`/../dtc
50 DTC_LINUX_PATH=`pwd`/scripts/dtc
51
52 DTC_SOURCE="checks.c data.c dtc.c dtc.h flattree.c fstree.c livetree.c srcpos.c \
53- srcpos.h treesource.c util.c util.h version_gen.h yamltree.c Makefile.dtc \
54+ srcpos.h treesource.c util.c util.h version_gen.h Makefile.dtc \
55 dtc-lexer.l dtc-parser.y fdtget.c"
56 LIBFDT_SOURCE="Makefile.libfdt fdt.c fdt.h fdt_addresses.c fdt_empty_tree.c \
57 fdt_overlay.c fdt_ro.c fdt_rw.c fdt_strerror.c fdt_sw.c \
58--
592.48.1
60