summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-devtools/rust/rust_1.75.0.bb14
1 files changed, 12 insertions, 2 deletions
diff --git a/meta/recipes-devtools/rust/rust_1.75.0.bb b/meta/recipes-devtools/rust/rust_1.75.0.bb
index c1b0a35e7b..d5bc057a45 100644
--- a/meta/recipes-devtools/rust/rust_1.75.0.bb
+++ b/meta/recipes-devtools/rust/rust_1.75.0.bb
@@ -11,6 +11,11 @@ DEPENDS += "file-native python3-native"
11DEPENDS:append:class-native = " rust-llvm-native" 11DEPENDS:append:class-native = " rust-llvm-native"
12DEPENDS:append:class-nativesdk = " nativesdk-rust-llvm" 12DEPENDS:append:class-nativesdk = " nativesdk-rust-llvm"
13 13
14# native rust uses cargo/rustc from binary snapshots to bootstrap
15# but everything else should use our native builds
16DEPENDS:append:class-target = " cargo-native rust-native"
17DEPENDS:append:class-nativesdk = " cargo-native rust-native"
18
14DEPENDS += "rust-llvm (=${PV})" 19DEPENDS += "rust-llvm (=${PV})"
15 20
16RDEPENDS:${PN}:append:class-target = " gcc g++ binutils" 21RDEPENDS:${PN}:append:class-target = " gcc g++ binutils"
@@ -68,6 +73,11 @@ addtask do_test_compile after do_configure do_rust_gen_targets
68do_rust_setup_snapshot[dirs] += "${WORKDIR}/rust-snapshot" 73do_rust_setup_snapshot[dirs] += "${WORKDIR}/rust-snapshot"
69do_rust_setup_snapshot[vardepsexclude] += "UNINATIVE_LOADER" 74do_rust_setup_snapshot[vardepsexclude] += "UNINATIVE_LOADER"
70 75
76RUSTC_BOOTSTRAP = "${STAGING_BINDIR_NATIVE}/rustc"
77CARGO_BOOTSTRAP = "${STAGING_BINDIR_NATIVE}/cargo"
78RUSTC_BOOTSTRAP:class-native = "${WORKDIR}/rust-snapshot/bin/rustc"
79CARGO_BOOTSTRAP:class-native = "${WORKDIR}/rust-snapshot/bin/cargo"
80
71python do_configure() { 81python do_configure() {
72 import json 82 import json
73 import configparser 83 import configparser
@@ -141,10 +151,10 @@ python do_configure() {
141 config.set("build", "docs", e(False)) 151 config.set("build", "docs", e(False))
142 config.set("build", "tools", ["rust-demangler",]) 152 config.set("build", "tools", ["rust-demangler",])
143 153
144 rustc = d.expand("${WORKDIR}/rust-snapshot/bin/rustc") 154 rustc = d.getVar('RUSTC_BOOTSTRAP')
145 config.set("build", "rustc", e(rustc)) 155 config.set("build", "rustc", e(rustc))
146 156
147 cargo = d.expand("${WORKDIR}/rust-snapshot/bin/cargo") 157 cargo = d.getVar('CARGO_BOOTSTRAP')
148 config.set("build", "cargo", e(cargo)) 158 config.set("build", "cargo", e(cargo))
149 159
150 config.set("build", "vendor", e(True)) 160 config.set("build", "vendor", e(True))