new file mode 100644
@@ -0,0 +1,30 @@
+From ae40237869ae1db4de7f6d86865bc99820852495 Mon Sep 17 00:00:00 2001
+From: Nicolas Chauvet <kwizart@gmail.com>
+Date: Tue, 29 Jul 2025 11:42:35 +0200
+Subject: [PATCH] vulkan/utils_gen: fix for python 3.14
+
+Python 3.14+ has added more type checking. This patch fixes usage
+
+Fixes: https://github.com/haasn/libplacebo/issues/335
+
+Upstream-Status: Backport [https://code.videolan.org/videolan/libplacebo/-/commit/12509c0f1ee8c22ae163017f0a5e7b8a9d983a17]
+Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/vulkan/utils_gen.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/vulkan/utils_gen.py b/src/vulkan/utils_gen.py
+index 9a97d35f..9b803d82 100644
+--- a/src/vulkan/utils_gen.py
++++ b/src/vulkan/utils_gen.py
+@@ -202,7 +202,8 @@ if __name__ == '__main__':
+ if not xmlfile or xmlfile == '':
+ xmlfile = find_registry_xml(datadir)
+
+- registry = VkXML(ET.parse(xmlfile))
++ tree = ET.parse(xmlfile)
++ registry = VkXML(tree.getroot())
+ with open(outfile, 'w') as f:
+ f.write(TEMPLATE.render(
+ vkresults = get_vkenum(registry, 'VkResult'),
@@ -4,7 +4,9 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=435ed639f84d4585d93824e7da3d85da"
DEPENDS += "fastfloat glad-native python3-mako-native python3-jinja2-native vulkan-headers"
-SRC_URI = "git://code.videolan.org/videolan/libplacebo.git;protocol=https;branch=v7.351"
+SRC_URI = "git://code.videolan.org/videolan/libplacebo.git;protocol=https;branch=v7.351 \
+ file://0001-vulkan-utils_gen-fix-for-python-3.14.patch \
+ "
SRCREV = "3188549fba13bbdf3a5a98de2a38c2e71f04e21e"
inherit meson pkgconfig
Fixes FAILED: [code=1] src/vulkan/utils_gen.c /home/kraj200/yoe/build/tmp/work/riscv64imafdc-yoe-linux/libplacebo/7.351.0/recipe-sysroot-native/usr/bin/meson.real -- ↪ internal exe --unpickle /home/kraj200/yoe/build/tmp/work/riscv64imafdc-yoe-linux/libplacebo/7.351.0/build/meson-private/ ↪ meson_exe_nativepython3_7e48a7413404982655e79073cf3065c6194271bf.dat while executing ['/home/kraj200/yoe/build/tmp/work/riscv64imafdc-yoe-linux/libplacebo/7.351.0/recipe-sysroot-native/usr/bin/ ↪ nativepython3', '../sources/libplacebo-7.351.0/src/vulkan/utils_gen.py', '/usr/share', '/home/kraj200/yoe/build/tmp/work/ ↪ riscv64imafdc-yoe-linux/libplacebo/7.351.0/recipe-sysroot/usr/share/vulkan/registry/vk.xml', 'src/vulkan/utils_gen.c'] --- stdout --- --- stderr --- Traceback (most recent call last): File "/home/kraj200/yoe/build/tmp/work/riscv64imafdc-yoe-linux/libplacebo/7.351.0/build/../sources/libplacebo-7.351.0/src/ ↪ vulkan/utils_gen.py", line 205, in <module> registry = VkXML(ET.parse(xmlfile)) File "/home/kraj200/yoe/build/tmp/work/riscv64imafdc-yoe-linux/libplacebo/7.351.0/build/../sources/libplacebo-7.351.0/src/ ↪ vulkan/utils_gen.py", line 50, in __init__ super().__init__(*args, **kwargs) ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/home/kraj200/yoe/build/tmp/work/riscv64imafdc-yoe-linux/libplacebo/7.351.0/recipe-sysroot-native/usr/lib/python3.13/ ↪ xml/etree/ElementTree.py", line 527, in __init__ raise TypeError('expected an Element, not %s' % type(element).__name__) TypeError: expected an Element, not ElementTree Signed-off-by: Khem Raj <raj.khem@gmail.com> --- ...vulkan-utils_gen-fix-for-python-3.14.patch | 30 +++++++++++++++++++ .../mplayer/libplacebo_7.351.0.bb | 4 ++- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 meta-oe/recipes-multimedia/mplayer/libplacebo/0001-vulkan-utils_gen-fix-for-python-3.14.patch