From 20ac5b207d0ead00db21e70fafa4449e2aad490f Mon Sep 17 00:00:00 2001 From: Yoann Congal Date: Sun, 13 Apr 2025 10:08:01 +0200 Subject: python3-evdev: Use Yocto kernel headers instead of host's Commit 01ebfecf1c94 ("python3-evdev: switch to PEP-517 build backend") did not update the way build arguments are passed to the build making them unused. In python3-evdev case that meant that the build used host kernel headers instead of Yocto's. When host's and Yocto's headers were different (currently the case on Debian 12 as seen on AB[0]), that triggered: | src/evdev/ecodes.c:542:29: error: 'KEY_LINK_PHONE' undeclared (first use in this function); did you mean 'KEY_PICKUP_PHONE'? | 542 | PyModule_AddIntMacro(m, KEY_LINK_PHONE); | | ^~~~~~~~~~~~~~ [...] ERROR: Task (.../../../layers/meta-openembedded/meta-python/recipes-devtools/python/python3-evdev_1.9.1.bb:do_compile) failed with exit code '1' To fix this, use PEP517_BUILD_OPTS with the working (but weird looking) escaping. Now that correct headers are used, their paths end up in the ecode.c file which lead to a buildpaths error, skip the check for this patch. This will be fixed in a following patch. [0]: https://autobuilder.yoctoproject.org/valkyrie/#/builders/87/builds/40/steps/40/logs/stdio Signed-off-by: Yoann Congal Signed-off-by: Khem Raj --- meta-python/recipes-devtools/python/python3-evdev_1.9.1.bb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'meta-python/recipes-devtools/python') diff --git a/meta-python/recipes-devtools/python/python3-evdev_1.9.1.bb b/meta-python/recipes-devtools/python/python3-evdev_1.9.1.bb index c48bc39c1f..b8930c97d5 100644 --- a/meta-python/recipes-devtools/python/python3-evdev_1.9.1.bb +++ b/meta-python/recipes-devtools/python/python3-evdev_1.9.1.bb @@ -11,7 +11,8 @@ do_compile:prepend() { rm -rf ${S}/evdev/ecodes.c } -SETUPTOOLS_BUILD_ARGS = "build_ecodes --evdev-headers ${STAGING_DIR_TARGET}/usr/include/linux/input.h:${STAGING_DIR_TARGET}/usr/include/linux/input-event-codes.h" +PEP517_BUILD_OPTS = "--config-setting=--build-option='build_ecodes \ + --evdev-headers ${STAGING_DIR_TARGET}/usr/include/linux/input.h:${STAGING_DIR_TARGET}/usr/include/linux/input-event-codes.h'" RDEPENDS:${PN} += "\ python3-ctypes \ @@ -20,3 +21,4 @@ RDEPENDS:${PN} += "\ python3-shell \ python3-stringold \ " +INSANE_SKIP:${PN}-src = "buildpaths" -- cgit v1.2.3-54-g00ecf