]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commitdiff
rust: Install target.json for target rustc
authorAlex Kiernan <alex.kiernan@gmail.com>
Fri, 16 Dec 2022 12:06:31 +0000 (12:06 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 17 Dec 2022 23:49:04 +0000 (23:49 +0000)
As part of the merging builds, installation of target.json was lost
causing `rustc` to fail on startup with:

  error: Error loading target specification: Could not find specification for target "aarch64-poky-linux-gnu". Run `rustc --print target-list` for a list of built-in targets

We know the full target specification, so just install it directly
rather than using the glob approach from previously.

Fixes: b9b0cd99cdc7 ("rust: Enable nativesdk and target builds + replace rust-tools-cross-canadian")
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/rust/rust_1.65.0.bb

index dbf74cec8feb57dc97a9ee8bec855db489554bce..b39f772c5fe123bb41075e1b875523252e8f9882 100644 (file)
@@ -68,6 +68,9 @@ rust_do_install:class-target() {
         chrpath -r "\$ORIGIN/../lib" ${D}${bindir}/$i
     done
 
+    install -d ${D}${libdir}/rustlib/${RUST_HOST_SYS}
+    install -m 0644 ${WORKDIR}/rust-targets/${RUST_HOST_SYS}.json ${D}${libdir}/rustlib/${RUST_HOST_SYS}/target.json
+
     chown root:root ${D}/ -R
     rm ${D}${libdir}/rustlib/uninstall.sh
     rm ${D}${libdir}/rustlib/install.log