I suspect the problem is the rebase of the symbol visibility patch went wrong?
Ross > On 26 Sep 2024, at 12:50, Ross Burton <[email protected]> wrote: > > This breaks meta-virt, which uses python3-dtc in its build: > > Traceback (most recent call last): > File > "[...]/work/qemuarm64-poky-linux/xen-image-minimal/1.0/recipe-sysroot-native/usr/bin/lopper", > line 8, in <module> > sys.exit(main()) > ^^^^^^ > File > "[...]/work/qemuarm64-poky-linux/xen-image-minimal/1.0/recipe-sysroot-native/usr/lib/python3.12/site-packages/lopper/__main__.py", > line 220, in main > import lopper.fdt > File > "[...]/work/qemuarm64-poky-linux/xen-image-minimal/1.0/recipe-sysroot-native/usr/lib/python3.12/site-packages/lopper/fdt.py", > line 46, in <module> > import libfdt > File > "[...]/work/qemuarm64-poky-linux/xen-image-minimal/1.0/recipe-sysroot-native/usr/lib/python3.12/site-packages/libfdt.py", > line 12, in <module> > import _libfdt > ImportError: > [...]/work/qemuarm64-poky-linux/xen-image-minimal/1.0/recipe-sysroot-native/usr/lib/python3.12/site-packages/_libfdt.cpython-312-x86_64-linux-gnu.so: > undefined symbol: fdt_get_symbol > > Ross > >> On 24 Sep 2024, at 16:00, Trevor Gamblin via lists.openembedded.org >> <[email protected]> wrote: >> >> Patch '0001-Revert-libfdt-overlay-make-overlay_get_target-public.patch' >> had to be adjusted to apply on the latest version. >> >> Changelog: >> >> 99031e3 (tag: v1.7.1, origin/master, origin/main, origin/HEAD, master) Bump >> version to v1.7.1 >> 3d5e376 setup: Move setting of srcdir down to the bottom >> e277553 setup: Collect top-level code together >> 7e5a889 setup: Move version and full_description into a function >> 78b6a85 Tidy up some pylint warnings >> 3501d37 Require Python 3 >> bcd02b5 fdtoverlay: remove wrong singular article in a comment >> 84b056a checks: relax graph checks for overlays >> 1df7b04 pylibfdt/Makefile.pylibfdt: use project's flags to compile the >> extension >> 61e88fd libfdt: overlay: Fix phandle overwrite check for new subtrees >> 49d3089 meson: fix installation with meson-python >> d54aaf9 pylibfdt: clean up python build directory >> ab86f1e pylibfdt: add VERSION.txt to Python sdist >> 7b8a30e pylibfdt: fix Python version >> ff4f17e pylibfdt/Makefile.pylibfdt: fix Python library being rebuild during >> install >> 9e313b1 pylibfdt/meson.build: fix Python library being rebuilt during install >> d598fc3 tests/run_tests.sh: fix Meson library path being dropped >> b98239d tests/meson.build: fix python and yaml tests not running >> c17d76a checks: Check the overall length of "interrupt-map" >> ae26223 libfdt: overlay: Refactor overlay_fixup_phandle >> 4dd831a libfdt: tests: Update test case for overlay_bad_fixup >> e6d2942 tests: Remove two_roots and named_root from LIBTREE_TESTS_L and add >> all dtb filenames generated by dumptrees to TESTS_TREES_L in Makefile.tests >> 855c934 tests: fix tests broken under Meson >> 4fd3f4f github: enforce testing pylibfdt and yaml support >> 9ca7d62 meson: split run-tests by type >> bb51223 meson: fix dependencies of tests >> e819006 meson: fix pylibfdt missing dependency on libfdt >> 8221238 pylibfdt: fix get_mem_rsv for newer Python versions >> 1fad065 libfdt: overlay: ensure that existing phandles are not overwritten >> b0aacd0 github: add windows/msys CI build >> ae97d97 github: Don't accidentally suppress test errors >> 057a7db github: Display meson test logs on failure >> 92b5d4e pylibfdt: Remove some apparently deprecated options from setup.py >> 417e329 github: Update to newer checkout action >> 5e6cefa fix MinGW format attribute >> 24f6001 libfdt: Simplify adjustment of values for local fixups >> da39ee0 libfdt: rework shared/static libraries >> a669223 Makefile: do not hardcode the `install` program path >> 3fbfdd0 libfdt: fix duplicate meson target >> dcef5f8 tests: use correct pkg-config when cross compiling >> 0b8026f meson: allow building from shallow clones >> 95c74d7 treesource: Restore string list output when no type markers >> 2283dd7 libfdt: fdt_path_offset_namelen: Reject empty path >> 79b9e32 libfdt: fdt_get_alias_namelen: Validate aliases >> 52157f1 pylibfdt: Support boolean properties >> d774337 dtc: fix missing string in usage_opts_help >> ad8bf9f libfdt: Fix fdt_appendprop_addrrange documentation >> 6c5e189 github: add workflow for Meson builds >> a3dc9f0 libfdt: rename libfdt-X.Y.Z.so to libfdt.so.X.Y.Z >> 3501994 workflows: build: remove setuptools_scm hack >> cd3e230 pylibfdt: use fallback version in tarballs >> 0f58645 move release version into VERSION.txt >> 3816595 libfdt: add missing version symbols >> 5e98b59 editorconfig: use tab indentation for version.lds >> d030a89 tests: generate dtbs in Meson build directory >> 8d8372b tests: fix use of deprecated meson methods >> 761114e pylibtfdt: fix use of deprecated meson method >> bf6377a meson: set minimum Meson version to 0.56.0 >> 4c68e4b libfdt: fix library version to match project version >> bdc5c87 meson: allow disabling tests >> f088e38 Makefile: allow to install libfdt without building executables >> 6df5328 Fix use of <ctype.h> functions >> ccf1f62 libfdt: Fix a typo in libfdt.h >> 71a8b8e libfdt: meson: Fix linking on macOS linker >> 589d8c7 dtc: Add an option to generate __local_fixups__ and __fixups__ >> e836466 CI: Add build matrix with multiple Linux distributions >> 3b02a94 dtc: Correct invalid dts output with mixed phandles and integers >> d488895 tests: Add additional tests for device graph checks >> ea3b9a1 checks: Fix crash in graph_child_address if 'reg' cell size != 1 >> b2b9671 livetree: fix off-by-one in propval_cell_n() bounds check >> ab481e4 Add definition for a GitHub Actions CI job >> c88038c Drop obsolete/broken CI definitions >> 0ac8b30 yaml: Depend on libyaml >= 0.2.3 >> f1657b2 tests: Add test cases for bad endpoint node and remote-endpoint prop >> checks >> 44bb89c checks: Fix segmentation fault in check_graph_node >> 60bcf1c improve documentation for fdt_path_offset() >> a6f997b add fdt_get_symbol() and fdt_get_symbol_namelen() functions >> 18f5ec1 use fdt_path_getprop_namelen() in fdt_get_alias_namelen() >> df09327 add fdt_path_getprop_namelen() helper >> 129bb4b doc: dt-object-internal: Fix a typo >> 390f481 fdtoverlay: Drop a a repeated article >> 9f8b382 manual: Fix and improve documentation about -@ >> 2cdf93a fdtoverlay: Fix usage string to not mention "<type>" >> 72fc810 build-sys: add -Wwrite-strings >> 083ab26 tests: fix leaks spotted by ASAN >> 6f8b28f livetree: fix leak spotted by ASAN >> fd68bb8 Make name_node() xstrdup its name argument >> 4718189 Delay xstrdup() of node and property names coming from a flat tree >> 0b842c3 Make build_property() xstrdup its name argument >> 9cceabe checks: correct I2C 10-bit address check >> 0d56145 yamltree.c: fix -Werror=discarded-qualifiers & -Werror=cast-qual >> 61fa22b checks: make check.data const >> 7a1d72a checks.c: fix check_msg() leak >> ee57999 checks.c: fix heap-buffer-overflow >> 44c9b73 tests: fix -Wwrite-strings >> 5b60f51 srcpos.c: fix -Wwrite-strings >> 32174a6 meson: Fix cell overflow tests when running from meson >> 64a907f meson.build: bump version to 1.7.0 >> e3cde06 Add -Wsuggest-attribute=format warning, correct warnings thus >> generated >> 4182182 Use #ifdef NO_VALGRIND >> 71c19f2 Do not redefine _GNU_SOURCE if already set >> >> Signed-off-by: Trevor Gamblin <[email protected]> >> --- >> v2 adds my signoff to the carried patch, which was adjusted to apply on >> v1.7.1. >> >> ...erlay-make-overlay_get_target-public.patch | 25 +++++++++++-------- >> ...hon3-dtc_1.7.0.bb => python3-dtc_1.7.1.bb} | 2 +- >> 2 files changed, 15 insertions(+), 12 deletions(-) >> rename meta/recipes-devtools/python/{python3-dtc_1.7.0.bb => >> python3-dtc_1.7.1.bb} (94%) >> >> diff --git >> a/meta/recipes-devtools/python/python3-dtc/0001-Revert-libfdt-overlay-make-overlay_get_target-public.patch >> >> b/meta/recipes-devtools/python/python3-dtc/0001-Revert-libfdt-overlay-make-overlay_get_target-public.patch >> index a2df482e3aa..70dd93f7471 100644 >> --- >> a/meta/recipes-devtools/python/python3-dtc/0001-Revert-libfdt-overlay-make-overlay_get_target-public.patch >> +++ >> b/meta/recipes-devtools/python/python3-dtc/0001-Revert-libfdt-overlay-make-overlay_get_target-public.patch >> @@ -1,4 +1,4 @@ >> -From 4d4703e0199fb3556c37694e4d951785abca22fd Mon Sep 17 00:00:00 2001 >> +From 20b224b8ab1837778dfd0e7171643a5d26675f95 Mon Sep 17 00:00:00 2001 >> From: Bruce Ashfield <[email protected]> >> Date: Wed, 19 Jan 2022 12:46:42 -0500 >> Subject: [PATCH] Revert "libfdt: overlay: make overlay_get_target() public" >> @@ -7,6 +7,9 @@ This reverts commit 45f3d1a095dd3440578d5c6313eba555a791f3fb. >> >> Upstream-Status: Inappropriate [embedded specific] >> >> +Adjust to apply on v1.7.1. >> + >> +Signed-off-by: Trevor Gamblin <[email protected]> >> --- >> libfdt/fdt_overlay.c | 29 ++++++++++++++++++++++------- >> libfdt/libfdt.h | 18 ------------------ >> @@ -14,7 +17,7 @@ Upstream-Status: Inappropriate [embedded specific] >> 3 files changed, 22 insertions(+), 26 deletions(-) >> >> diff --git a/libfdt/fdt_overlay.c b/libfdt/fdt_overlay.c >> -index 5c0c398..d217e79 100644 >> +index 28b667f..e6e9382 100644 >> --- a/libfdt/fdt_overlay.c >> +++ b/libfdt/fdt_overlay.c >> @@ -40,22 +40,37 @@ static uint32_t overlay_get_target_phandle(const void >> *fdto, int fragment) >> @@ -59,7 +62,7 @@ index 5c0c398..d217e79 100644 >> if (path) >> ret = fdt_path_offset(fdt, path); >> else >> -@@ -621,7 +636,7 @@ static int overlay_merge(void *fdt, void *fdto) >> +@@ -848,7 +863,7 @@ static int overlay_merge(void *fdt, void *fdto) >> if (overlay < 0) >> return overlay; >> >> @@ -68,7 +71,7 @@ index 5c0c398..d217e79 100644 >> if (target < 0) >> return target; >> >> -@@ -764,7 +779,7 @@ static int overlay_symbol_update(void *fdt, void *fdto) >> +@@ -991,7 +1006,7 @@ static int overlay_symbol_update(void *fdt, void *fdto) >> return -FDT_ERR_BADOVERLAY; >> >> /* get the target of the fragment */ >> @@ -77,7 +80,7 @@ index 5c0c398..d217e79 100644 >> if (ret < 0) >> return ret; >> target = ret; >> -@@ -786,7 +801,7 @@ static int overlay_symbol_update(void *fdt, void *fdto) >> +@@ -1013,7 +1028,7 @@ static int overlay_symbol_update(void *fdt, void >> *fdto) >> >> if (!target_path) { >> /* again in case setprop_placeholder changed it */ >> @@ -87,10 +90,10 @@ index 5c0c398..d217e79 100644 >> return ret; >> target = ret; >> diff --git a/libfdt/libfdt.h b/libfdt/libfdt.h >> -index a7f432c..7f117e8 100644 >> +index 0677fea..c72337b 100644 >> --- a/libfdt/libfdt.h >> +++ b/libfdt/libfdt.h >> -@@ -2116,24 +2116,6 @@ int fdt_del_node(void *fdt, int nodeoffset); >> +@@ -2184,24 +2184,6 @@ int fdt_del_node(void *fdt, int nodeoffset); >> */ >> int fdt_overlay_apply(void *fdt, void *fdto); >> >> @@ -116,7 +119,7 @@ index a7f432c..7f117e8 100644 >> /* Debugging / informational functions */ >> /**********************************************************************/ >> diff --git a/libfdt/version.lds b/libfdt/version.lds >> -index cbce5d4..7ab85f1 100644 >> +index 989cd89..ae5f8c6 100644 >> --- a/libfdt/version.lds >> +++ b/libfdt/version.lds >> @@ -77,7 +77,6 @@ LIBFDT_1.2 { >> @@ -124,9 +127,9 @@ index cbce5d4..7ab85f1 100644 >> fdt_setprop_inplace_namelen_partial; >> fdt_create_with_flags; >> - fdt_overlay_target_offset; >> + fdt_get_symbol; >> + fdt_get_symbol_namelen; >> local: >> - *; >> - }; >> -- >> -2.19.1 >> +2.39.5 >> >> diff --git a/meta/recipes-devtools/python/python3-dtc_1.7.0.bb >> b/meta/recipes-devtools/python/python3-dtc_1.7.1.bb >> similarity index 94% >> rename from meta/recipes-devtools/python/python3-dtc_1.7.0.bb >> rename to meta/recipes-devtools/python/python3-dtc_1.7.1.bb >> index 85e48d46942..269095bd8c9 100644 >> --- a/meta/recipes-devtools/python/python3-dtc_1.7.0.bb >> +++ b/meta/recipes-devtools/python/python3-dtc_1.7.1.bb >> @@ -14,7 +14,7 @@ UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)" >> >> LIC_FILES_CHKSUM = >> "file://pylibfdt/libfdt.i;beginline=1;endline=6;md5=afda088c974174a29108c8d80b5dce90" >> >> -SRCREV = "039a99414e778332d8f9c04cbd3072e1dcc62798" >> +SRCREV = "99031e3a4a6e479466ae795790b44727434ca27d" >> >> S = "${WORKDIR}/git" >> >> -- >> 2.39.5 >> >> >> >> >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#204980): https://lists.openembedded.org/g/openembedded-core/message/204980 Mute This Topic: https://lists.openembedded.org/mt/108629987/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
