From 11b9c077553f06c1c52a4e03c395b6e6d567b531 Mon Sep 17 00:00:00 2001 From: Joshua Watt Date: Fri, 19 Nov 2021 14:51:40 -0600 Subject: [PATCH] classes/meson: Add optional rust definitions Adds the rust tools to the cross and native files if present so that projects that use both rust and meson can build Signed-off-by: Joshua Watt Signed-off-by: Richard Purdie (cherry picked from commit 0ec40fa3aff233bd0dde0461299150786da956ef) Signed-off-by: Anuj Mittal --- meta/classes/meson.bbclass | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass index 4ba70de3dc..a7981e481f 100644 --- a/meta/classes/meson.bbclass +++ b/meta/classes/meson.bbclass @@ -36,8 +36,15 @@ MESON_CROSS_FILE = "" MESON_CROSS_FILE:class-target = "--cross-file ${WORKDIR}/meson.cross" MESON_CROSS_FILE:class-nativesdk = "--cross-file ${WORKDIR}/meson.cross" +def rust_tool(d, target_var): + rustc = d.getVar('RUSTC') + if not rustc: + return "" + cmd = [rustc, "--target", d.getVar(target_var)] + d.getVar("RUSTFLAGS").split() + return "rust = %s" % repr(cmd) + addtask write_config before do_configure -do_write_config[vardeps] += "CC CXX LD AR NM STRIP READELF CFLAGS CXXFLAGS LDFLAGS" +do_write_config[vardeps] += "CC CXX LD AR NM STRIP READELF CFLAGS CXXFLAGS LDFLAGS RUSTC RUSTFLAGS" do_write_config() { # This needs to be Py to split the args into single-element lists cat >${WORKDIR}/meson.cross <