]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
rpm-sequoia: Use DEBUG_BUILD to determine build directory
authorYash Shinde <Yash.Shinde@windriver.com>
Thu, 3 Jul 2025 09:14:28 +0000 (02:14 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 7 Jul 2025 21:12:47 +0000 (22:12 +0100)
Debug builds fail with a panic in build.rs when attempting
to create rpm-sequoia.pc in a non-existent target/debug directory:

process didn't exit successfully: `TOPDIR/tmp/work/core2-32-wrs-linux/rpm-sequoia/1.7.0/build/target/debug/build/rpm-sequoia-d2609670a855c0b5/build-script-build` (exit status: 101)
— stderr
thread 'main' panicked at build.rs:125:36:
Creating "TOPDIR/tmp/work/core2-32-wrs-linux/rpm-sequoia/1.7.0/sources-unpack/git/target/debug/rpm-sequoia.pc" (CARGO_TARGET_DIR: None): Os
{ code: 2, kind: NotFound, message: "No such file or directory" }

This was caused by the build and install logic assuming a fixed release directory
in rpm-sequoia recipe.

Update build and install steps to use the ${BUILD_DIR} variable,
which is set based on the value of DEBUG_BUILD from cargo.bbclass.
(rpm-sequoia inherits cargo)
This ensures paths used for rpm-sequoia.pc generation and installation
are valid in both debug and release configurations.

Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/rpm-sequoia/rpm-sequoia_1.7.0.bb

index 17d5a747ff00563ac0b335be2818de8423cb19e5..46f9ee8548b2eab4860e81ae0df3c77cd1570093 100644 (file)
@@ -26,7 +26,7 @@ CARGO_INSTALL_LIBRARIES = "1"
 do_compile:prepend () {
        # rpm-sequoia.pc is generated in the source directory
        # but the target directory does not exist there.
-       mkdir -p ${S}/target/release
+       mkdir -p ${S}/target/${BUILD_DIR}
 
        # From rpm-sequoia's README.md:
        #
@@ -58,7 +58,7 @@ do_install:append () {
 
        # rpm-sequoia does not install its pkgconfig file. Do it manually.
        mkdir -p ${D}${libdir}/pkgconfig
-       install -m644 ${S}/target/release/rpm-sequoia.pc ${D}${libdir}/pkgconfig
+       install -m644 ${S}/target/${BUILD_DIR}/rpm-sequoia.pc ${D}${libdir}/pkgconfig
 }
 
 do_install_ptest:append () {