* [PATCH 1/3] rust-target-config: Update the data layout for x86 and ppc targets.
@ 2024-12-27 6:53 Deepesh.Varatharajan
2024-12-27 6:53 ` [PATCH 2/3] rust: Fix for duplicate libstd.so Deepesh.Varatharajan
` (2 more replies)
0 siblings, 3 replies; 11+ messages in thread
From: Deepesh.Varatharajan @ 2024-12-27 6:53 UTC (permalink / raw)
To: openembedded-core
Cc: Shivaprasad.Moodalappa, Sundeep.Kokkonda, Deepesh.Varatharajan
From: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
The data layout for x86 and ppc targets were different in rust from llvm.
-----------------------------------------------------------------------------------------
error: data-layout for target `x86-linux`, `e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128`,
differs from LLVM target's `i686-unknown-linux-gnu` default layout,
`e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i128:128-f64:32:64-f80:32-n8:16:32-S128`
error: data-layout for target `powerpc-linux`, `E-m:e-p:32:32-i64:64-n32`,
differs from LLVM target's `powerpc-unknown-linux-gnu` default layout,
`E-m:e-p:32:32-Fn32-i64:64-n32`
-----------------------------------------------------------------------------------------
Rust commits for updating the data layouts:
x86: https://github.com/rust-lang/rust/commit/dbff90c2a7c751cf9d6843cd585429beb100c17d
ppc: https://github.com/rust-lang/rust/commit/ad7ea8b7e690e6000006b6fde630a2c8c4385019
Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
---
meta/classes-recipe/rust-target-config.bbclass | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/meta/classes-recipe/rust-target-config.bbclass b/meta/classes-recipe/rust-target-config.bbclass
index 399c13db26..7518e5bc01 100644
--- a/meta/classes-recipe/rust-target-config.bbclass
+++ b/meta/classes-recipe/rust-target-config.bbclass
@@ -167,7 +167,7 @@ TARGET_C_INT_WIDTH[x86_64-x32] = "32"
MAX_ATOMIC_WIDTH[x86_64-x32] = "64"
## i686-unknown-linux-{gnu, musl}
-DATA_LAYOUT[i686] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"
+DATA_LAYOUT[i686] = "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i128:128-f64:32:64-f80:32-n8:16:32-S128"
TARGET_ENDIAN[i686] = "little"
TARGET_POINTER_WIDTH[i686] = "32"
TARGET_C_INT_WIDTH[i686] = "32"
@@ -216,7 +216,7 @@ TARGET_C_INT_WIDTH[mips64el] = "32"
MAX_ATOMIC_WIDTH[mips64el] = "64"
## powerpc-unknown-linux-{gnu, musl}
-DATA_LAYOUT[powerpc] = "E-m:e-p:32:32-i64:64-n32"
+DATA_LAYOUT[powerpc] = "E-m:e-p:32:32-Fn32-i64:64-n32"
TARGET_ENDIAN[powerpc] = "big"
TARGET_POINTER_WIDTH[powerpc] = "32"
TARGET_C_INT_WIDTH[powerpc] = "32"
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 2/3] rust: Fix for duplicate libstd.so
2024-12-27 6:53 [PATCH 1/3] rust-target-config: Update the data layout for x86 and ppc targets Deepesh.Varatharajan
@ 2024-12-27 6:53 ` Deepesh.Varatharajan
2024-12-27 7:23 ` [OE-core] " Changqing Li
2024-12-27 18:56 ` Alexander Kanavin
2024-12-27 6:53 ` [PATCH 3/3] rust: Upgrade 1.80.1->1.81.0 Deepesh.Varatharajan
2024-12-27 18:30 ` [OE-core] [PATCH 1/3] rust-target-config: Update the data layout for x86 and ppc targets Khem Raj
2 siblings, 2 replies; 11+ messages in thread
From: Deepesh.Varatharajan @ 2024-12-27 6:53 UTC (permalink / raw)
To: openembedded-core
Cc: Shivaprasad.Moodalappa, Sundeep.Kokkonda, Deepesh.Varatharajan
From: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
The `do_package` task fail with below error due to multiple `libstd.so` files installed in lib dir.
---------------------------------------------------------------------------------------------------------------------------
ERROR: rust-1.81.0-r0 do_package: rust-rustdoc: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-rustdoc/usr/bin/rustdoc)
ERROR: rust-1.81.0-r0 do_package: rust-tools-rustfmt: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-tools-rustfmt/usr/bin/rustfmt)
ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/rustc)
ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/clippy-driver)
ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/cargo-clippy)
ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/lib/
librustc_driver-fc36770e343ef852.so)
---------------------------------------------------------------------------------------------------------------------------
To fix the redundant `libstd.so` files are removed from the usr/lib/.
Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
---
meta/recipes-devtools/rust/rust_1.80.1.bb | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/meta/recipes-devtools/rust/rust_1.80.1.bb b/meta/recipes-devtools/rust/rust_1.80.1.bb
index eae1f28bb8..2118c2fe9d 100644
--- a/meta/recipes-devtools/rust/rust_1.80.1.bb
+++ b/meta/recipes-devtools/rust/rust_1.80.1.bb
@@ -271,6 +271,7 @@ rust_do_install:class-nativesdk() {
rm ${D}${libdir}/rustlib/uninstall.sh
rm ${D}${libdir}/rustlib/install.log
rm ${D}${libdir}/rustlib/manifest*
+ rm ${D}${libdir}/rustlib/${TARGET_ARCH}-pokysdk-linux-gnu/lib/libstd-*.so
}
EXTRA_TOOLS ?= "cargo-clippy clippy-driver rustfmt"
@@ -294,6 +295,11 @@ rust_do_install:class-target() {
rm ${D}${libdir}/rustlib/uninstall.sh
rm ${D}${libdir}/rustlib/install.log
rm ${D}${libdir}/rustlib/manifest*
+ if [ "${TCLIBC}" = "musl" ]; then
+ rm -f ${D}${libdir}/rustlib/${TARGET_ARCH}-poky-linux-musl/lib/libstd-*.so
+ elif [ "${TCLIBC}" = "glibc" ]; then
+ rm -f ${D}${libdir}/rustlib/${TARGET_ARCH}-poky-linux-gnu/lib/libstd-*.so
+ fi
}
addtask do_update_snapshot after do_patch
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 3/3] rust: Upgrade 1.80.1->1.81.0
2024-12-27 6:53 [PATCH 1/3] rust-target-config: Update the data layout for x86 and ppc targets Deepesh.Varatharajan
2024-12-27 6:53 ` [PATCH 2/3] rust: Fix for duplicate libstd.so Deepesh.Varatharajan
@ 2024-12-27 6:53 ` Deepesh.Varatharajan
2024-12-27 7:05 ` Varatharajan, Deepesh
2024-12-27 18:53 ` [OE-core] " Alexander Kanavin
2024-12-27 18:30 ` [OE-core] [PATCH 1/3] rust-target-config: Update the data layout for x86 and ppc targets Khem Raj
2 siblings, 2 replies; 11+ messages in thread
From: Deepesh.Varatharajan @ 2024-12-27 6:53 UTC (permalink / raw)
To: openembedded-core
Cc: Shivaprasad.Moodalappa, Sundeep.Kokkonda, Deepesh.Varatharajan
From: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
https://blog.rust-lang.org/2024/09/05/Rust-1.81.0.html
Dropped:
0001-cargo-do-not-write-host-information-into-compilation.patch
hardcodepaths.patch
Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
---
meta/conf/distro/include/tcmode-default.inc | 2 +-
.../rust/{cargo_1.80.1.bb => cargo_1.81.0.bb} | 0
...te-host-information-into-compilation.patch | 51 ------------
.../rust/files/hardcodepaths.patch | 46 -----------
...epro-issue-fix-with-cc-crate-hashmap.patch | 53 ++++++++++++-
...ibstd-rs_1.80.1.bb => libstd-rs_1.81.0.bb} | 0
....80.1.bb => rust-cross-canadian_1.81.0.bb} | 0
...ust-llvm_1.80.1.bb => rust-llvm_1.81.0.bb} | 0
meta/recipes-devtools/rust/rust-snapshot.inc | 78 +++++++++----------
meta/recipes-devtools/rust/rust-source.inc | 4 +-
.../rust/{rust_1.80.1.bb => rust_1.81.0.bb} | 0
11 files changed, 93 insertions(+), 141 deletions(-)
rename meta/recipes-devtools/rust/{cargo_1.80.1.bb => cargo_1.81.0.bb} (100%)
delete mode 100644 meta/recipes-devtools/rust/files/0001-cargo-do-not-write-host-information-into-compilation.patch
delete mode 100644 meta/recipes-devtools/rust/files/hardcodepaths.patch
rename meta/recipes-devtools/rust/{libstd-rs_1.80.1.bb => libstd-rs_1.81.0.bb} (100%)
rename meta/recipes-devtools/rust/{rust-cross-canadian_1.80.1.bb => rust-cross-canadian_1.81.0.bb} (100%)
rename meta/recipes-devtools/rust/{rust-llvm_1.80.1.bb => rust-llvm_1.81.0.bb} (100%)
rename meta/recipes-devtools/rust/{rust_1.80.1.bb => rust_1.81.0.bb} (100%)
diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc
index 8ccef0a4d8..c0817a2bf5 100644
--- a/meta/conf/distro/include/tcmode-default.inc
+++ b/meta/conf/distro/include/tcmode-default.inc
@@ -24,7 +24,7 @@ GLIBCVERSION ?= "2.40%"
LINUXLIBCVERSION ?= "6.12%"
QEMUVERSION ?= "9.2%"
GOVERSION ?= "1.22%"
-RUSTVERSION ?= "1.80%"
+RUSTVERSION ?= "1.81%"
PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} ?= "${GCCVERSION}"
diff --git a/meta/recipes-devtools/rust/cargo_1.80.1.bb b/meta/recipes-devtools/rust/cargo_1.81.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/cargo_1.80.1.bb
rename to meta/recipes-devtools/rust/cargo_1.81.0.bb
diff --git a/meta/recipes-devtools/rust/files/0001-cargo-do-not-write-host-information-into-compilation.patch b/meta/recipes-devtools/rust/files/0001-cargo-do-not-write-host-information-into-compilation.patch
deleted file mode 100644
index 7579ea0b5f..0000000000
--- a/meta/recipes-devtools/rust/files/0001-cargo-do-not-write-host-information-into-compilation.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 065d7c263091118437465d714d8a29dbb6296921 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex@linutronix.de>
-Date: Mon, 13 May 2024 14:57:54 +0200
-Subject: [PATCH] cargo: do not write host information into compilation unit
- hashes
-
-This breaks reproducibility in cross-builds where the cross-target
-can be the same, but build hosts are different, as seen with
-"rustc --version -v":
-...
-host: x86_64-unknown-linux-gnu
-
-vs.
-
-host: aarch64-unknown-linux-gnu
-
-This can possibly be improved by only hashing host info if the build
-is a native one (e.g. there's no --target option passed to cargo
-invocation) but I'm not sure how.
-
-Upstream-Status: Inappropriate [reported at https://github.com/rust-lang/cargo/issues/13922]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- .../src/cargo/core/compiler/context/compilation_files.rs | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/tools/cargo/src/cargo/core/compiler/build_runner/compilation_files.rs b/src/tools/cargo/src/cargo/core/compiler/build_runner/compilation_files.rs
-index d83dbf10c..b2ad8d9f3 100644
---- a/src/tools/cargo/src/cargo/core/compiler/build_runner/compilation_files.rs
-+++ b/src/tools/cargo/src/cargo/core/compiler/build_runner/compilation_files.rs
-@@ -652,7 +652,7 @@ fn hash_rustc_version(bcx: &BuildContext<'_, '_>, hasher: &mut StableHasher) {
- if vers.pre.is_empty() || bcx.gctx.cli_unstable().separate_nightlies {
- // For stable, keep the artifacts separate. This helps if someone is
- // testing multiple versions, to avoid recompiles.
-- bcx.rustc().verbose_version.hash(hasher);
-+ //bcx.rustc().verbose_version.hash(hasher);
- return;
- }
- // On "nightly"/"beta"/"dev"/etc, keep each "channel" separate. Don't hash
-@@ -665,7 +665,7 @@ fn hash_rustc_version(bcx: &BuildContext<'_, '_>, hasher: &mut StableHasher) {
- // Keep "host" since some people switch hosts to implicitly change
- // targets, (like gnu vs musl or gnu vs msvc). In the future, we may want
- // to consider hashing `unit.kind.short_name()` instead.
-- bcx.rustc().host.hash(hasher);
-+ //bcx.rustc().host.hash(hasher);
- // None of the other lines are important. Currently they are:
- // binary: rustc <-- or "rustdoc"
- // commit-hash: 38114ff16e7856f98b2b4be7ab4cd29b38bed59a
---
-2.39.2
-
diff --git a/meta/recipes-devtools/rust/files/hardcodepaths.patch b/meta/recipes-devtools/rust/files/hardcodepaths.patch
deleted file mode 100644
index 696654227e..0000000000
--- a/meta/recipes-devtools/rust/files/hardcodepaths.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-When building for the target, some build paths end up embedded in the binaries.
-These changes remove that. Further investigation is needed to work out the way
-to resolve these issues properly upstream.
-
-Upstream-Status: Inappropriate [patches need rework]
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
-
-diff --git a/compiler/rustc_codegen_llvm/src/context.rs b/compiler/rustc_codegen_llvm/src/context.rs
-index b4b2ab1e1f8a..8bb3e3f0557c 100644
---- a/compiler/rustc_codegen_llvm/src/context.rs
-+++ b/compiler/rustc_codegen_llvm/src/context.rs
-@@ -34,7 +34,6 @@
- use smallvec::SmallVec;
-
- use libc::c_uint;
--use std::borrow::Borrow;
- use std::cell::{Cell, RefCell};
- use std::ffi::CStr;
- use std::str;
-@@ -155,25 +154,6 @@
- }
- }
-
-- // Ensure the data-layout values hardcoded remain the defaults.
-- {
-- let tm = crate::back::write::create_informational_target_machine(tcx.sess);
-- llvm::LLVMRustSetDataLayoutFromTargetMachine(llmod, &tm);
--
-- let llvm_data_layout = llvm::LLVMGetDataLayoutStr(llmod);
-- let llvm_data_layout = str::from_utf8(CStr::from_ptr(llvm_data_layout).to_bytes())
-- .expect("got a non-UTF8 data-layout from LLVM");
--
-- if target_data_layout != llvm_data_layout {
-- tcx.dcx().emit_err(crate::errors::MismatchedDataLayout {
-- rustc_target: sess.opts.target_triple.to_string().as_str(),
-- rustc_layout: target_data_layout.as_str(),
-- llvm_target: sess.target.llvm_target.borrow(),
-- llvm_layout: llvm_data_layout,
-- });
-- }
-- }
--
- let data_layout = SmallCStr::new(&target_data_layout);
- llvm::LLVMSetDataLayout(llmod, data_layout.as_ptr());
-
diff --git a/meta/recipes-devtools/rust/files/repro-issue-fix-with-cc-crate-hashmap.patch b/meta/recipes-devtools/rust/files/repro-issue-fix-with-cc-crate-hashmap.patch
index e3f57e764c..e052c32b81 100644
--- a/meta/recipes-devtools/rust/files/repro-issue-fix-with-cc-crate-hashmap.patch
+++ b/meta/recipes-devtools/rust/files/repro-issue-fix-with-cc-crate-hashmap.patch
@@ -1,4 +1,4 @@
-rust: reproducibility issue fix with v1.80
+rust: reproducibility issue fix with v1.81
A few crates are using the updated version of the 'cc' crate and this is causing the generated object file names containing a unique hashmap id.
By the following changes same hash values will be genarted even for diffrent build paths.
@@ -49,6 +49,57 @@ Signed-off-by: Harish Sadineni <Harish.Sadineni@windriver.com>
let obj = dst
.join(format!("{:016x}-{}", hasher.finish(), basename))
.with_extension("o");
+diff --git a/vendor/cc-1.0.99/src/command_helpers.rs b/vendor/cc-1.0.99/src/command_helpers.rs
+index fe919a5239..2b1f442019 100644
+--- a/vendor/cc-1.0.99/src/command_helpers.rs
++++ b/vendor/cc-1.0.99/src/command_helpers.rs
+@@ -257,6 +257,7 @@ fn wait_on_child(
+ /// and store them in the output Object.
+ pub(crate) fn objects_from_files(files: &[Arc<Path>], dst: &Path) -> Result<Vec<Object>, Error> {
+ let mut objects = Vec::with_capacity(files.len());
++ let target_substring = ["rustc"];
+ for file in files {
+ let basename = file
+ .file_name()
+@@ -277,10 +278,29 @@ pub(crate) fn objects_from_files(files: &[Arc<Path>], dst: &Path) -> Result<Vec<
+ })?
+ .to_string_lossy();
+
++ // Function to find the position of the first occurrence of the target substring
++ fn find_target_position(s: &str, targets: &[&str]) -> Option<usize> {
++ let mut pos = None;
++ for target in targets {
++ if let Some(index) = s.rfind(target) {
++ //If a target is found and pos is None, set it
++ if pos.is_none() || index < pos.unwrap() {
++ pos = Some(index);
++ }
++ }
++ }
++ pos
++ }
++
++ let filtered_dirname = if let Some(pos) = find_target_position(&dirname, &target_substring) {
++ dirname[pos..].to_string() //Keep everything from the target substring onwards
++ } else {
++ dirname.to_string() //If target substring is not found, keep the original dirname
++ };
+ // Hash the dirname. This should prevent conflicts if we have multiple
+ // object files with the same filename in different subfolders.
+ let mut hasher = hash_map::DefaultHasher::new();
+- hasher.write(dirname.to_string().as_bytes());
++ hasher.write(filtered_dirname.as_bytes());
+ let obj = dst
+ .join(format!("{:016x}-{}", hasher.finish(), basename))
+ .with_extension("o");
+diff --git a/vendor/cc-1.0.99/.cargo-checksum.json b/vendor/cc-1.0.99/.cargo-checksum.json
+index b070eeb322..ba768ff86f 100644
+--- a/vendor/cc-1.0.99/.cargo-checksum.json
++++ b/vendor/cc-1.0.99/.cargo-checksum.json
+@@ -1 +1 @@
+-{"files":{"Cargo.toml":"3c555dbe1a698f12b66c8a5748ed52ff26ff7b8ebb12237c1a72a1cbe4b9392e","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"f1ddbede208a5b78333a25dac0a7598e678e9b601a7d99a791069bddaf180dfe","src/command_helpers.rs":"15afbc35930a5a53f00d74a8910cff35caeb5511c26642cffe5630377aced901","src/detect_compiler_family.c":"72903b91d7a28f49b39e7d730f4c9c4bb39fb901948fa1279cd08abf392f5a29","src/lib.rs":"92440d3adb5cb6ea05596d9ca860a205d3937dbf0fc959e524bac5f2b748c1af","src/parallel/async_executor.rs":"4ce24435fff6b6555b43fee042c16bd65d4150d0346567f246b9190d85b45983","src/parallel/job_token.rs":"352a0295c965c684904329d334f3b9889db3a9c3f201701f8db44e4d00e00515","src/parallel/mod.rs":"bd9c1334d17d138c281961c690b8d8118a2d6295a7d6cd7296826255436fa063","src/parallel/stderr.rs":"a2d18ba3f2e04deb9047ece9ab7ca5452d9a76b515afbe20a76307e31597f34b","src/target_info.rs":"342be00f6215e161d8163e272a2945bb9f52f171648e15e11d46800a73186955","src/tempfile.rs":"47a58e904ac07da6682004b5b615dc83250b253a8d3e8ba1b9bcaf6cdf4fd142","src/tool.rs":"e13c439a96d8311ba8d37b9d5522cd6997d94261cbb95517c82df70525acaa7f","src/windows/com.rs":"a2800ddb81215fff2bf618336f5c4ff8e8bdb746dd18b795873c7304b3f2a5e3","src/windows/find_tools.rs":"4c350cddbce1557682b7f40cd917cc4f131ad89ff2e34c23d629014ed8d7203e","src/windows/mod.rs":"42f1ad7fee35a17686b003e6aa520d3d1940d47d2f531d626e9ae0c48ba49005","src/windows/registry.rs":"c521b72c825e8095843e73482ffa810ed066ad8bb9f86e6db0c5c143c171aba1","src/windows/setup_config.rs":"754439cbab492afd44c9755abcbec1a41c9b2c358131cee2df13c0e996dbbec8","src/windows/vs_instances.rs":"76e3cee74b5fd38ddaf533bba11fe401667c50dda5f9d064099840893eaa7587","src/windows/winapi.rs":"250d51c1826d1a2329e9889dd9f058cfce253dbf2a678b076147c6cdb5db046c","src/windows/windows_sys.rs":"5a440eb39d8a0c176b66177e8753186797793bc5d7896292c408fb44c12dfed3"},"package":"96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695"}
+\ No newline at end of file
++{"files":{"Cargo.toml":"3c555dbe1a698f12b66c8a5748ed52ff26ff7b8ebb12237c1a72a1cbe4b9392e","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"f1ddbede208a5b78333a25dac0a7598e678e9b601a7d99a791069bddaf180dfe","src/command_helpers.rs":"4c4a9ea55a109dbeada9e23d4ec963c257a56451b5fd16c7e4e8b97374f1a2ff","src/detect_compiler_family.c":"72903b91d7a28f49b39e7d730f4c9c4bb39fb901948fa1279cd08abf392f5a29","src/lib.rs":"92440d3adb5cb6ea05596d9ca860a205d3937dbf0fc959e524bac5f2b748c1af","src/parallel/async_executor.rs":"4ce24435fff6b6555b43fee042c16bd65d4150d0346567f246b9190d85b45983","src/parallel/job_token.rs":"352a0295c965c684904329d334f3b9889db3a9c3f201701f8db44e4d00e00515","src/parallel/mod.rs":"bd9c1334d17d138c281961c690b8d8118a2d6295a7d6cd7296826255436fa063","src/parallel/stderr.rs":"a2d18ba3f2e04deb9047ece9ab7ca5452d9a76b515afbe20a76307e31597f34b","src/target_info.rs":"342be00f6215e161d8163e272a2945bb9f52f171648e15e11d46800a73186955","src/tempfile.rs":"47a58e904ac07da6682004b5b615dc83250b253a8d3e8ba1b9bcaf6cdf4fd142","src/tool.rs":"e13c439a96d8311ba8d37b9d5522cd6997d94261cbb95517c82df70525acaa7f","src/windows/com.rs":"a2800ddb81215fff2bf618336f5c4ff8e8bdb746dd18b795873c7304b3f2a5e3","src/windows/find_tools.rs":"4c350cddbce1557682b7f40cd917cc4f131ad89ff2e34c23d629014ed8d7203e","src/windows/mod.rs":"42f1ad7fee35a17686b003e6aa520d3d1940d47d2f531d626e9ae0c48ba49005","src/windows/registry.rs":"c521b72c825e8095843e73482ffa810ed066ad8bb9f86e6db0c5c143c171aba1","src/windows/setup_config.rs":"754439cbab492afd44c9755abcbec1a41c9b2c358131cee2df13c0e996dbbec8","src/windows/vs_instances.rs":"76e3cee74b5fd38ddaf533bba11fe401667c50dda5f9d064099840893eaa7587","src/windows/winapi.rs":"250d51c1826d1a2329e9889dd9f058cfce253dbf2a678b076147c6cdb5db046c","src/windows/windows_sys.rs":"5a440eb39d8a0c176b66177e8753186797793bc5d7896292c408fb44c12dfed3"},"package":"96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695"}
--- a/vendor/cc-1.0.97/.cargo-checksum.json
+++ b/vendor/cc-1.0.97/.cargo-checksum.json
@@ -1 +1 @@
diff --git a/meta/recipes-devtools/rust/libstd-rs_1.80.1.bb b/meta/recipes-devtools/rust/libstd-rs_1.81.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/libstd-rs_1.80.1.bb
rename to meta/recipes-devtools/rust/libstd-rs_1.81.0.bb
diff --git a/meta/recipes-devtools/rust/rust-cross-canadian_1.80.1.bb b/meta/recipes-devtools/rust/rust-cross-canadian_1.81.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/rust-cross-canadian_1.80.1.bb
rename to meta/recipes-devtools/rust/rust-cross-canadian_1.81.0.bb
diff --git a/meta/recipes-devtools/rust/rust-llvm_1.80.1.bb b/meta/recipes-devtools/rust/rust-llvm_1.81.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/rust-llvm_1.80.1.bb
rename to meta/recipes-devtools/rust/rust-llvm_1.81.0.bb
diff --git a/meta/recipes-devtools/rust/rust-snapshot.inc b/meta/recipes-devtools/rust/rust-snapshot.inc
index 66d777f623..4446863576 100644
--- a/meta/recipes-devtools/rust/rust-snapshot.inc
+++ b/meta/recipes-devtools/rust/rust-snapshot.inc
@@ -4,56 +4,56 @@
## The exact (previous) version that has been used is specified in the source tarball.
## The version is replicated here.
-SNAPSHOT_VERSION = "1.79.0"
+SNAPSHOT_VERSION = "1.80.1"
-SRC_URI[cargo-snapshot-aarch64.sha256sum] = "4ca5e9bd141b0111387ea1aa0355f87eb8d0da52fbc616cefa4ecde4997aa65b"
-SRC_URI[clippy-snapshot-aarch64.sha256sum] = "77803cfff2ea0342f26b59eabec353bc43a1791012aa70855ecfea0fb7ae76ac"
-SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "519abf4757fbd8d7e3bb4e4cfdc362ded972c1d95f04675684df2d31e8c0899b"
-SRC_URI[rustc-snapshot-aarch64.sha256sum] = "9c847b42b81325d25a9240e33bf03fa8652f5dd321ae90a9a7a58b46bf124b17"
+SRC_URI[cargo-snapshot-aarch64.sha256sum] = "a8c4f1ab2f65e7579eb80153fd1ca9a0b365ca31ca6ae0ebd34156e0724dfc60"
+SRC_URI[clippy-snapshot-aarch64.sha256sum] = "3d522172f9797e65c609a640af7f4ac331525150c91f93e41798c5578e9523e9"
+SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "8fc4bfc3a5fe64f8530964a5ea3bda95e39357eff14d6a8bb24f010ecc912923"
+SRC_URI[rustc-snapshot-aarch64.sha256sum] = "fc21ca734504c3d0ccaf361f05cb491142c365ce8a326f942206b0199c49bbb4"
-SRC_URI[cargo-snapshot-i686.sha256sum] = "57bd43f363ebd399a38aa4ac3b137e9172706770f8b23479f9dd859c6ae779ab"
-SRC_URI[clippy-snapshot-i686.sha256sum] = "1d2612c829d946ca8ce32f2beacfde2c5ebed1fcacb720a58fb8e7786e4c82f2"
-SRC_URI[rust-std-snapshot-i686.sha256sum] = "158294f7c424ef75d84046b573f225c15d531745cc79d416a18c11aa8253830e"
-SRC_URI[rustc-snapshot-i686.sha256sum] = "4695a6eb66252d519510ca0a859803fff3a5041f71004404df0ccc9fbf0298d5"
+SRC_URI[cargo-snapshot-i686.sha256sum] = "b0f6d95c8a292b1276f30b1bca14197b28297c2fcd51974ef320d05497be3ca3"
+SRC_URI[clippy-snapshot-i686.sha256sum] = "a6899744ed734dd3a9f59631a943721bfe67ed6273e60dd67e8636820c1bfffd"
+SRC_URI[rust-std-snapshot-i686.sha256sum] = "6547876dcf243aeeeadaa38dbdce02c316b6f83305a5337520e02eaffc90834b"
+SRC_URI[rustc-snapshot-i686.sha256sum] = "b40c1437491d0a24756b6baabb14c2d4d0def199bc652f16e417addb171ac977"
-SRC_URI[cargo-snapshot-loongarch64.sha256sum] = "354d498a8e36abe6ebd7bd859c8c7e7f02b029aa1897b9b60a87e9902ebb1079"
-SRC_URI[clippy-snapshot-loongarch64.sha256sum] = "88eab562705d56a246a09f2897cbae9e37a66dc3cc2cab52c781cd78024f2b52"
-SRC_URI[rust-std-snapshot-loongarch64.sha256sum] = "88730b1b0d9c5252e041ed1fc2375d7292dc45132bcc8b6214490c578de240d3"
-SRC_URI[rustc-snapshot-loongarch64.sha256sum] = "f39a604e1a5a5ba1c7342c9d98c9952b5ba252cda4b55cc6ae7bd6fca72f3889"
+SRC_URI[cargo-snapshot-loongarch64.sha256sum] = "843272f7ab9b2f8c24f1747249275e0472fb2ede90f3a404e897559ddb898c18"
+SRC_URI[clippy-snapshot-loongarch64.sha256sum] = "e4dba3b66bd8f811c8508fd3be1bf136b714018768d9f16a96f601ebd375bcc6"
+SRC_URI[rust-std-snapshot-loongarch64.sha256sum] = "68f30f3743b573e205ecc1733e1250ffb8d8d81e131c3b2f4a819b7e1e610d62"
+SRC_URI[rustc-snapshot-loongarch64.sha256sum] = "5ae96e69573690aa48ffb9fecc62826ffb5d2fc280d19d1e54ab36ff48e28b68"
-SRC_URI[cargo-snapshot-powerpc.sha256sum] = "2a55e97ce512c27a012720bb2a0cd86554c1d734b5cb91b98f58af167cc0fde1"
-SRC_URI[clippy-snapshot-powerpc.sha256sum] = "1ae0bbe5835d9461a12f22d509787e6c11aac8335c677152a57a04f8d22cf755"
-SRC_URI[rust-std-snapshot-powerpc.sha256sum] = "6aa2f351bc7dccb544781f4fecddb5ef67e05bb310c84e0106d968231384d9f4"
-SRC_URI[rustc-snapshot-powerpc.sha256sum] = "3b9a8067e97dd269a27fe91be163e046e85b47973f5d512c3368c49d332dacb1"
+SRC_URI[cargo-snapshot-powerpc.sha256sum] = "a88402d95f2959caaff20037144d3109a69ce3310e1dfbb27231dacd50fa2988"
+SRC_URI[clippy-snapshot-powerpc.sha256sum] = "ae1762dc8fd679d65154d5af9500c7539f55ec9d049ab736a910893d382fd6c0"
+SRC_URI[rust-std-snapshot-powerpc.sha256sum] = "88e8144c25ef8347471dd53eea7af62e5b31eadf0788f4a82be7560f5a0be255"
+SRC_URI[rustc-snapshot-powerpc.sha256sum] = "5f435b48316a719c87fb27f49c0b37884cef7dd3ecba76df9db2a4008cc03458"
-SRC_URI[cargo-snapshot-powerpc64.sha256sum] = "1e2ffcc41a2083be2f4733d534d5ee0e05fc2ace1f21033792a4e2497cbbfbe4"
-SRC_URI[clippy-snapshot-powerpc64.sha256sum] = "0bceeb8dc5b48e5ea9cff67cdcf8488fe2afe44d7e75ca04669c7c0c2e02a0df"
-SRC_URI[rust-std-snapshot-powerpc64.sha256sum] = "af95929af71494ee3e6988ead07204ea05b6f2b729cdb1ffcc26db75e47bf318"
-SRC_URI[rustc-snapshot-powerpc64.sha256sum] = "2295d50425ed5dfb028560ac0f9a611212d8deb43791a1d199419043157ab95e"
+SRC_URI[cargo-snapshot-powerpc64.sha256sum] = "be2707eaa24f34775c98044f92c391a2c6037a2214adab9e83c62903001fb577"
+SRC_URI[clippy-snapshot-powerpc64.sha256sum] = "a422a3b638c42f26ada441d2940a44a8c0f1ade9459f86d48a3d8fcc866bc60b"
+SRC_URI[rust-std-snapshot-powerpc64.sha256sum] = "cb5ad871a0a7efe7c270cbf319d006a84e8f8526acb22ce941f2840fd0e368c2"
+SRC_URI[rustc-snapshot-powerpc64.sha256sum] = "e3257dc0790728498cf2773c3ca66d728381cc6d1f403969bd282223bd97aa3d"
-SRC_URI[cargo-snapshot-powerpc64le.sha256sum] = "bec32adad9f2cd1650ed24ee82fccf7329c68243cdef7cef1e720ccaea097dab"
-SRC_URI[clippy-snapshot-powerpc64le.sha256sum] = "6bb12041b6171e80598c0c04eb7e9bd07ab4fb4d654a9289618e3288a4d2f6c8"
-SRC_URI[rust-std-snapshot-powerpc64le.sha256sum] = "3b5d53d70837d5ec942ec41a8da37ed932bbdc1e53f78dc54e218db458701588"
-SRC_URI[rustc-snapshot-powerpc64le.sha256sum] = "3b144840f179114cde3078909370bfb6928153d0ae303ac9848622c57cee3578"
+SRC_URI[cargo-snapshot-powerpc64le.sha256sum] = "a523cf21d751be597a19830136e3479b7f22d3642d95f53f78a11e770d971d28"
+SRC_URI[clippy-snapshot-powerpc64le.sha256sum] = "93ce75f4edf2c3b792714d33e279c5743d9d3ef841f8f2d8a7e76c9c7d74f952"
+SRC_URI[rust-std-snapshot-powerpc64le.sha256sum] = "06633b26384cba594424ec02acf0d64d4724033a856a2e039a18a518cacf1d3e"
+SRC_URI[rustc-snapshot-powerpc64le.sha256sum] = "5f72f8723a2023b0bbd64cfc3d10959c4210b68579ad8e174809d17e1e2ead36"
-SRC_URI[cargo-snapshot-riscv64gc.sha256sum] = "83e28f3e02cce4a9d19841bcb40ec0c8ad4e9af9fb215c39876028e6e9e6baf1"
-SRC_URI[clippy-snapshot-riscv64gc.sha256sum] = "fbc978db4be2e6fdb1dbcb3ca00ee54c44dafd08930738f1c6aa7ae249685a34"
-SRC_URI[rust-std-snapshot-riscv64gc.sha256sum] = "2b8af4060acb10f347c66a3477ae92151beba12192590ea40723dcf9b1f7f5b2"
-SRC_URI[rustc-snapshot-riscv64gc.sha256sum] = "1b952b8cd597060ac07bbe99cea382651ca6eee4ac2abe0a90303ccf2278e60e"
+SRC_URI[cargo-snapshot-riscv64gc.sha256sum] = "29e996af02293562f6ee79032a5414fffbf77e75cb7f0ba89053849986cb6303"
+SRC_URI[clippy-snapshot-riscv64gc.sha256sum] = "24465ce5fe8f04d9b54c31a2c5bcaba6d702925ac3cdec0af5b954643013db90"
+SRC_URI[rust-std-snapshot-riscv64gc.sha256sum] = "1fbbe8df7596682466ae2fca534d5f6bae8b3f32577450e2632955268a786a06"
+SRC_URI[rustc-snapshot-riscv64gc.sha256sum] = "838d78ef8b9a11751b1dfb2cf2abfdc845deca8f0002c11930d54577b433cb93"
-SRC_URI[cargo-snapshot-s390x.sha256sum] = "5663e6ea018a13f1c87ac74de267829952ea979fbe5f8ee5c1c3531e25d1749c"
-SRC_URI[clippy-snapshot-s390x.sha256sum] = "c00bd892e0f29bbc2514f87c7521210ced8c175a41eee0a428e19a6ef157779f"
-SRC_URI[rust-std-snapshot-s390x.sha256sum] = "d70e710a5138871e8d972f195ced9f7aa639ccef23a87fa03cc527d2b9c3cd36"
-SRC_URI[rustc-snapshot-s390x.sha256sum] = "ef4b494fb7356b6e88a69b71378c04ae0f4a3c264adae84c9d4f3a1314eaa2b4"
+SRC_URI[cargo-snapshot-s390x.sha256sum] = "0c22278b4e8afa79de0cae798575c9ef258e73d0555b18a84efd5d042c69c6e2"
+SRC_URI[clippy-snapshot-s390x.sha256sum] = "52c3368de0e01b07f89f74a4b36279be1b7d2312b05253c7c9ccb50bc38f263a"
+SRC_URI[rust-std-snapshot-s390x.sha256sum] = "e732ce690fd63e3c2576bfe83a556031c4805c17b35b8a1c1a0ddde5cee31d46"
+SRC_URI[rustc-snapshot-s390x.sha256sum] = "0c06439db686645be36390969b503996608f25954eab2b7fd9a2915da6c0bd7b"
-SRC_URI[cargo-snapshot-x86_64.sha256sum] = "07fcadd27b645ad58ff4dae5ef166fd730311bbae8f25f6640fe1bfd2a1f3c3c"
-SRC_URI[clippy-snapshot-x86_64.sha256sum] = "3fb282ee97626e4f25c4f6faac3997859b89f13983dd6fa111e25182dfcb91fa"
-SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "2c914483c0882d44af2e50a181cbd2c953d672d50b31aa669ee2346cade1f108"
-SRC_URI[rustc-snapshot-x86_64.sha256sum] = "a04cf42022d0a5faf01c31082bfb1dde9c38409f0ca6da90a3e40faa03e797ae"
+SRC_URI[cargo-snapshot-x86_64.sha256sum] = "da9340b3249f08656cd4fe10e47aa292c7cd79903870a5863064731a00b5b27e"
+SRC_URI[clippy-snapshot-x86_64.sha256sum] = "e01d434e952821900f37824c797f87ed16db79e54fcbd2f396b2f1b5cb2e3c55"
+SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "b793405538d8b6ec1632779efa8835b07b8987db2008c5c9c809bc4b17dcb121"
+SRC_URI[rustc-snapshot-x86_64.sha256sum] = "0367f069b49560af5c61810530d4721ad13eecfcb48952e67a2c32be903d5043"
-SRC_URI[rust-std-snapshot-i586.sha256sum] = "9c38f2cd4c19196fcf113166237ab03512bf19ce5a7f13c3bfe0e5cc3317eb44"
+SRC_URI[rust-std-snapshot-i586.sha256sum] = "94927cdfa7cad391700b1a77730bb17aa364831ff6a6c40ce6500a14c1314647"
-SRC_URI[rust-std-snapshot-sparc64.sha256sum] = "f7c7a73a8e5640f9d5aca6b26866b4da08cf3d3509ed1c4184309fb868acbff2"
+SRC_URI[rust-std-snapshot-sparc64.sha256sum] = "ee7fa0104b019eec22750ac635e699d21dbb5430fc6982c495533900ec568d5b"
SRC_URI += " \
${RUST_DIST_SERVER}/dist/${RUST_STD_SNAPSHOT}.tar.xz;name=rust-std-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \
diff --git a/meta/recipes-devtools/rust/rust-source.inc b/meta/recipes-devtools/rust/rust-source.inc
index c39c954c49..8484c94ef8 100644
--- a/meta/recipes-devtools/rust/rust-source.inc
+++ b/meta/recipes-devtools/rust/rust-source.inc
@@ -1,17 +1,15 @@
RUST_VERSION ?= "${@d.getVar('PV').split('-')[0]}"
SRC_URI += "https://static.rust-lang.org/dist/rustc-${RUST_VERSION}-src.tar.xz;name=rust \
- file://hardcodepaths.patch;patchdir=${RUSTSRC} \
file://zlib-off64_t.patch;patchdir=${RUSTSRC} \
file://rv32-rustix-libc-backend.patch;patchdir=${RUSTSRC} \
file://rv32-cargo-rustix-0.38.28-fix.patch;patchdir=${RUSTSRC} \
- file://0001-cargo-do-not-write-host-information-into-compilation.patch;patchdir=${RUSTSRC} \
file://rustdoc-repro-issue-fix-cargo-config-for-codegenunits.patch;patchdir=${RUSTSRC} \
file://rust-oe-selftest.patch;patchdir=${RUSTSRC} \
file://repro-issue-fix-with-cc-crate-hashmap.patch;patchdir=${RUSTSRC} \
file://oeqa-selftest-Increase-timeout-in-process-sigpipe-ru.patch;patchdir=${RUSTSRC} \
"
-SRC_URI[rust.sha256sum] = "6ab79b70dc57737a1de378f212fcf8852d67fe6cf272d122a15b3ea13be77947"
+SRC_URI[rust.sha256sum] = "36217ef7e32f40a180e3d79bd666b4dfdaed49dd381023a5fb765fd12d0092ce"
RUSTSRC = "${WORKDIR}/rustc-${RUST_VERSION}-src"
diff --git a/meta/recipes-devtools/rust/rust_1.80.1.bb b/meta/recipes-devtools/rust/rust_1.81.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/rust_1.80.1.bb
rename to meta/recipes-devtools/rust/rust_1.81.0.bb
--
2.43.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH 3/3] rust: Upgrade 1.80.1->1.81.0
2024-12-27 6:53 ` [PATCH 3/3] rust: Upgrade 1.80.1->1.81.0 Deepesh.Varatharajan
@ 2024-12-27 7:05 ` Varatharajan, Deepesh
2024-12-27 18:53 ` [OE-core] " Alexander Kanavin
1 sibling, 0 replies; 11+ messages in thread
From: Varatharajan, Deepesh @ 2024-12-27 7:05 UTC (permalink / raw)
To: openembedded-core
[-- Attachment #1: Type: text/plain, Size: 146 bytes --]
Testing Summary for rust_1.81.0
Target pass skipped
x86_64 18646 418
x86 18468 596
ARM64 18496 568
ARM 18451 613
ppc 18418 646
[-- Attachment #2: Type: text/html, Size: 1731 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [OE-core] [PATCH 2/3] rust: Fix for duplicate libstd.so
2024-12-27 6:53 ` [PATCH 2/3] rust: Fix for duplicate libstd.so Deepesh.Varatharajan
@ 2024-12-27 7:23 ` Changqing Li
2024-12-27 18:56 ` Alexander Kanavin
1 sibling, 0 replies; 11+ messages in thread
From: Changqing Li @ 2024-12-27 7:23 UTC (permalink / raw)
To: openembedded-core
[-- Attachment #1: Type: text/plain, Size: 3694 bytes --]
On 12/27/24 14:53, Varatharajan, Deepesh via lists.openembedded.org wrote:
> From: Deepesh Varatharajan<Deepesh.Varatharajan@windriver.com>
>
> The `do_package` task fail with below error due to multiple `libstd.so` files installed in lib dir.
>
> ---------------------------------------------------------------------------------------------------------------------------
> ERROR: rust-1.81.0-r0 do_package: rust-rustdoc: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-rustdoc/usr/bin/rustdoc)
> ERROR: rust-1.81.0-r0 do_package: rust-tools-rustfmt: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-tools-rustfmt/usr/bin/rustfmt)
> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/rustc)
> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/clippy-driver)
> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/cargo-clippy)
> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/lib/
> librustc_driver-fc36770e343ef852.so)
> ---------------------------------------------------------------------------------------------------------------------------
>
> To fix the redundant `libstd.so` files are removed from the usr/lib/.
>
> Signed-off-by: Deepesh Varatharajan<Deepesh.Varatharajan@windriver.com>
> ---
> meta/recipes-devtools/rust/rust_1.80.1.bb | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/meta/recipes-devtools/rust/rust_1.80.1.bb b/meta/recipes-devtools/rust/rust_1.80.1.bb
> index eae1f28bb8..2118c2fe9d 100644
> --- a/meta/recipes-devtools/rust/rust_1.80.1.bb
> +++ b/meta/recipes-devtools/rust/rust_1.80.1.bb
> @@ -271,6 +271,7 @@ rust_do_install:class-nativesdk() {
> rm ${D}${libdir}/rustlib/uninstall.sh
> rm ${D}${libdir}/rustlib/install.log
> rm ${D}${libdir}/rustlib/manifest*
> + rm ${D}${libdir}/rustlib/${TARGET_ARCH}-pokysdk-linux-gnu/lib/libstd-*.so
> }
>
> EXTRA_TOOLS ?= "cargo-clippy clippy-driver rustfmt" @@ -294,6 +295,11 @@ rust_do_install:class-target() { rm
> ${D}${libdir}/rustlib/uninstall.sh rm
> ${D}${libdir}/rustlib/install.log rm ${D}${libdir}/rustlib/manifest* +
> if [ "${TCLIBC}" = "musl" ]; then
> + rm -f ${D}${libdir}/rustlib/${TARGET_ARCH}-poky-linux-musl/lib/libstd-*.so
> + elif [ "${TCLIBC}" = "glibc" ]; then
> + rm -f ${D}${libdir}/rustlib/${TARGET_ARCH}-poky-linux-gnu/lib/libstd-*.so
> + fi
Hardcode "poky"/"pokysdk" here should not proper.
//Changqing
> }
>
> addtask do_update_snapshot after do_patch
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#209095):https://lists.openembedded.org/g/openembedded-core/message/209095
> Mute This Topic:https://lists.openembedded.org/mt/110301947/3616873
> Group Owner:openembedded-core+owner@lists.openembedded.org
> Unsubscribe:https://lists.openembedded.org/g/openembedded-core/unsub [changqing.li@windriver.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
[-- Attachment #2: Type: text/html, Size: 5268 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [OE-core] [PATCH 1/3] rust-target-config: Update the data layout for x86 and ppc targets.
2024-12-27 6:53 [PATCH 1/3] rust-target-config: Update the data layout for x86 and ppc targets Deepesh.Varatharajan
2024-12-27 6:53 ` [PATCH 2/3] rust: Fix for duplicate libstd.so Deepesh.Varatharajan
2024-12-27 6:53 ` [PATCH 3/3] rust: Upgrade 1.80.1->1.81.0 Deepesh.Varatharajan
@ 2024-12-27 18:30 ` Khem Raj
2 siblings, 0 replies; 11+ messages in thread
From: Khem Raj @ 2024-12-27 18:30 UTC (permalink / raw)
To: deepesh.varatharajan
Cc: openembedded-core, Shivaprasad.Moodalappa, Sundeep.Kokkonda
[-- Attachment #1: Type: text/plain, Size: 2945 bytes --]
On Thu, Dec 26, 2024 at 10:54 PM Varatharajan, Deepesh via
lists.openembedded.org <deepesh.varatharajan=
windriver.com@lists.openembedded.org> wrote:
> From: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
>
> The data layout for x86 and ppc targets were different in rust from llvm.
>
>
> -----------------------------------------------------------------------------------------
> error: data-layout for target `x86-linux`,
> `e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128`,
> differs from LLVM target's `i686-unknown-linux-gnu` default layout,
>
> `e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i128:128-f64:32:64-f80:32-n8:16:32-S128`
>
> error: data-layout for target `powerpc-linux`, `E-m:e-p:32:32-i64:64-n32`,
> differs from LLVM target's `powerpc-unknown-linux-gnu` default layout,
> `E-m:e-p:32:32-Fn32-i64:64-n32`
>
> -----------------------------------------------------------------------------------------
>
> Rust commits for updating the data layouts:
> x86:
> https://github.com/rust-lang/rust/commit/dbff90c2a7c751cf9d6843cd585429beb100c17d
> ppc:
> https://github.com/rust-lang/rust/commit/ad7ea8b7e690e6000006b6fde630a2c8c4385019
>
LGTM
> Signed-off-by: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
> ---
> meta/classes-recipe/rust-target-config.bbclass | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/meta/classes-recipe/rust-target-config.bbclass
> b/meta/classes-recipe/rust-target-config.bbclass
> index 399c13db26..7518e5bc01 100644
> --- a/meta/classes-recipe/rust-target-config.bbclass
> +++ b/meta/classes-recipe/rust-target-config.bbclass
> @@ -167,7 +167,7 @@ TARGET_C_INT_WIDTH[x86_64-x32] = "32"
> MAX_ATOMIC_WIDTH[x86_64-x32] = "64"
>
> ## i686-unknown-linux-{gnu, musl}
> -DATA_LAYOUT[i686] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"
> +DATA_LAYOUT[i686] =
> "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i128:128-f64:32:64-f80:32-n8:16:32-S128"
> TARGET_ENDIAN[i686] = "little"
> TARGET_POINTER_WIDTH[i686] = "32"
> TARGET_C_INT_WIDTH[i686] = "32"
> @@ -216,7 +216,7 @@ TARGET_C_INT_WIDTH[mips64el] = "32"
> MAX_ATOMIC_WIDTH[mips64el] = "64"
>
> ## powerpc-unknown-linux-{gnu, musl}
> -DATA_LAYOUT[powerpc] = "E-m:e-p:32:32-i64:64-n32"
> +DATA_LAYOUT[powerpc] = "E-m:e-p:32:32-Fn32-i64:64-n32"
> TARGET_ENDIAN[powerpc] = "big"
> TARGET_POINTER_WIDTH[powerpc] = "32"
> TARGET_C_INT_WIDTH[powerpc] = "32"
> --
> 2.43.0
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#209094):
> https://lists.openembedded.org/g/openembedded-core/message/209094
> Mute This Topic: https://lists.openembedded.org/mt/110301946/1997914
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
[-- Attachment #2: Type: text/html, Size: 4595 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [OE-core] [PATCH 3/3] rust: Upgrade 1.80.1->1.81.0
2024-12-27 6:53 ` [PATCH 3/3] rust: Upgrade 1.80.1->1.81.0 Deepesh.Varatharajan
2024-12-27 7:05 ` Varatharajan, Deepesh
@ 2024-12-27 18:53 ` Alexander Kanavin
2025-01-09 9:36 ` Deepesh Varatharajan
1 sibling, 1 reply; 11+ messages in thread
From: Alexander Kanavin @ 2024-12-27 18:53 UTC (permalink / raw)
To: deepesh.varatharajan
Cc: openembedded-core, Shivaprasad.Moodalappa, Sundeep.Kokkonda
On Fri, 27 Dec 2024 at 07:54, Varatharajan, Deepesh via
lists.openembedded.org
<deepesh.varatharajan=windriver.com@lists.openembedded.org> wrote:
> https://blog.rust-lang.org/2024/09/05/Rust-1.81.0.html
>
> Dropped:
> 0001-cargo-do-not-write-host-information-into-compilation.patch
> hardcodepaths.patch
You need to explain why the patches have been dropped, as they're both
marked 'Inappropriate'.
Have the issues been fixed upstream? How and where? Can you include
the pointers to the fixes?
> +diff --git a/vendor/cc-1.0.99/src/command_helpers.rs b/vendor/cc-1.0.99/src/command_helpers.rs
> +index fe919a5239..2b1f442019 100644
> +--- a/vendor/cc-1.0.99/src/command_helpers.rs
> ++++ b/vendor/cc-1.0.99/src/command_helpers.rs
> +@@ -257,6 +257,7 @@ fn wait_on_child(
> + /// and store them in the output Object.
> + pub(crate) fn objects_from_files(files: &[Arc<Path>], dst: &Path) -> Result<Vec<Object>, Error> {
> + let mut objects = Vec::with_capacity(files.len());
> ++ let target_substring = ["rustc"];
> + for file in files {
> + let basename = file
> + .file_name()
> +@@ -277,10 +278,29 @@ pub(crate) fn objects_from_files(files: &[Arc<Path>], dst: &Path) -> Result<Vec<
> + })?
> + .to_string_lossy();
> +
> ++ // Function to find the position of the first occurrence of the target substring
> ++ fn find_target_position(s: &str, targets: &[&str]) -> Option<usize> {
> ++ let mut pos = None;
> ++ for target in targets {
> ++ if let Some(index) = s.rfind(target) {
> ++ //If a target is found and pos is None, set it
> ++ if pos.is_none() || index < pos.unwrap() {
> ++ pos = Some(index);
> ++ }
> ++ }
> ++ }
> ++ pos
> ++ }
> ++
> ++ let filtered_dirname = if let Some(pos) = find_target_position(&dirname, &target_substring) {
> ++ dirname[pos..].to_string() //Keep everything from the target substring onwards
> ++ } else {
> ++ dirname.to_string() //If target substring is not found, keep the original dirname
> ++ };
> + // Hash the dirname. This should prevent conflicts if we have multiple
> + // object files with the same filename in different subfolders.
> + let mut hasher = hash_map::DefaultHasher::new();
> +- hasher.write(dirname.to_string().as_bytes());
> ++ hasher.write(filtered_dirname.as_bytes());
> + let obj = dst
> + .join(format!("{:016x}-{}", hasher.finish(), basename))
> + .with_extension("o");
Similarly, why this patch has this new addition? Is there an upstream
discussion related to it somewhere, or is it just multiple versions of
the same crate all needing the same fix?
Alex
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [OE-core] [PATCH 2/3] rust: Fix for duplicate libstd.so
2024-12-27 6:53 ` [PATCH 2/3] rust: Fix for duplicate libstd.so Deepesh.Varatharajan
2024-12-27 7:23 ` [OE-core] " Changqing Li
@ 2024-12-27 18:56 ` Alexander Kanavin
2025-01-09 9:34 ` Deepesh Varatharajan
1 sibling, 1 reply; 11+ messages in thread
From: Alexander Kanavin @ 2024-12-27 18:56 UTC (permalink / raw)
To: deepesh.varatharajan
Cc: openembedded-core, Shivaprasad.Moodalappa, Sundeep.Kokkonda
On Fri, 27 Dec 2024 at 07:54, Varatharajan, Deepesh via
lists.openembedded.org
<deepesh.varatharajan=windriver.com@lists.openembedded.org> wrote:
>
> From: Deepesh Varatharajan <Deepesh.Varatharajan@windriver.com>
>
> The `do_package` task fail with below error due to multiple `libstd.so` files installed in lib dir.
>
> ---------------------------------------------------------------------------------------------------------------------------
> ERROR: rust-1.81.0-r0 do_package: rust-rustdoc: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-rustdoc/usr/bin/rustdoc)
> ERROR: rust-1.81.0-r0 do_package: rust-tools-rustfmt: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-tools-rustfmt/usr/bin/rustfmt)
> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/rustc)
> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/clippy-driver)
> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/cargo-clippy)
> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/lib/
> librustc_driver-fc36770e343ef852.so)
> ---------------------------------------------------------------------------------------------------------------------------
>
> To fix the redundant `libstd.so` files are removed from the usr/lib/.
What installs the redundant files in the first place? Shouldn't it be
adjusted to not do that?
Also, as noted elsewhere, you cannot hardcode 'poky', or special-case
based on TCLIBC.
Alex
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [OE-core] [PATCH 2/3] rust: Fix for duplicate libstd.so
2024-12-27 18:56 ` Alexander Kanavin
@ 2025-01-09 9:34 ` Deepesh Varatharajan
2025-01-09 9:41 ` Deepesh Varatharajan
0 siblings, 1 reply; 11+ messages in thread
From: Deepesh Varatharajan @ 2025-01-09 9:34 UTC (permalink / raw)
To: Alexander Kanavin
Cc: openembedded-core, Shivaprasad.Moodalappa, Sundeep.Kokkonda
[-- Attachment #1: Type: text/plain, Size: 2942 bytes --]
On 28-12-2024 00:26, Alexander Kanavin wrote:
> CAUTION: This email comes from a non Wind River email account!
> Do not click links or open attachments unless you recognize the sender and know the content is safe.
>
> On Fri, 27 Dec 2024 at 07:54, Varatharajan, Deepesh via
> lists.openembedded.org
> <deepesh.varatharajan=windriver.com@lists.openembedded.org> wrote:
>> From: Deepesh Varatharajan<Deepesh.Varatharajan@windriver.com>
>>
>> The `do_package` task fail with below error due to multiple `libstd.so` files installed in lib dir.
>>
>> ---------------------------------------------------------------------------------------------------------------------------
>> ERROR: rust-1.81.0-r0 do_package: rust-rustdoc: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-rustdoc/usr/bin/rustdoc)
>> ERROR: rust-1.81.0-r0 do_package: rust-tools-rustfmt: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-tools-rustfmt/usr/bin/rustfmt)
>> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/rustc)
>> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/clippy-driver)
>> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/cargo-clippy)
>> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/lib/
>> librustc_driver-fc36770e343ef852.so)
>> ---------------------------------------------------------------------------------------------------------------------------
>>
>> To fix the redundant `libstd.so` files are removed from the usr/lib/.
> What installs the redundant files in the first place? Shouldn't it be
> adjusted to not do that?
During the Rust build process, multiple copies of libstd-*.so are
generated, as Rust copies the
required files from the stage2 build artifacts to the target image
directory. When these build
binaries are copied to the image, Yocto's do_package step encounters an
error. To resolve this,
the redundant libstd-*.so files are removed during the do_install step.
> Also, as noted elsewhere, you cannot hardcode 'poky', or special-case
> based on TCLIBC.
Updated the patch
https://lists.openembedded.org/g/openembedded-core/topic/patch_v2_2_3_rust_fix_for/110513058
> Alex
[-- Attachment #2: Type: text/html, Size: 9655 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [OE-core] [PATCH 3/3] rust: Upgrade 1.80.1->1.81.0
2024-12-27 18:53 ` [OE-core] " Alexander Kanavin
@ 2025-01-09 9:36 ` Deepesh Varatharajan
0 siblings, 0 replies; 11+ messages in thread
From: Deepesh Varatharajan @ 2025-01-09 9:36 UTC (permalink / raw)
To: Alexander Kanavin
Cc: openembedded-core, Shivaprasad.Moodalappa, Sundeep.Kokkonda
On 28-12-2024 00:23, Alexander Kanavin wrote:
> CAUTION: This email comes from a non Wind River email account!
> Do not click links or open attachments unless you recognize the sender and know the content is safe.
>
> On Fri, 27 Dec 2024 at 07:54, Varatharajan, Deepesh via
> lists.openembedded.org
> <deepesh.varatharajan=windriver.com@lists.openembedded.org> wrote:
>> https://blog.rust-lang.org/2024/09/05/Rust-1.81.0.html
>>
>> Dropped:
>> 0001-cargo-do-not-write-host-information-into-compilation.patch
>> hardcodepaths.patch
> You need to explain why the patches have been dropped, as they're both
> marked 'Inappropriate'.
>
> Have the issues been fixed upstream? How and where? Can you include
> the pointers to the fixes?
V2 has been sent with the required info
https://lists.openembedded.org/g/openembedded-core/topic/patch_v2_3_3_rust_upgrade/110513059
>
>> +diff --git a/vendor/cc-1.0.99/src/command_helpers.rs b/vendor/cc-1.0.99/src/command_helpers.rs
>> +index fe919a5239..2b1f442019 100644
>> +--- a/vendor/cc-1.0.99/src/command_helpers.rs
>> ++++ b/vendor/cc-1.0.99/src/command_helpers.rs
>> +@@ -257,6 +257,7 @@ fn wait_on_child(
>> + /// and store them in the output Object.
>> + pub(crate) fn objects_from_files(files: &[Arc<Path>], dst: &Path) -> Result<Vec<Object>, Error> {
>> + let mut objects = Vec::with_capacity(files.len());
>> ++ let target_substring = ["rustc"];
>> + for file in files {
>> + let basename = file
>> + .file_name()
>> +@@ -277,10 +278,29 @@ pub(crate) fn objects_from_files(files: &[Arc<Path>], dst: &Path) -> Result<Vec<
>> + })?
>> + .to_string_lossy();
>> +
>> ++ // Function to find the position of the first occurrence of the target substring
>> ++ fn find_target_position(s: &str, targets: &[&str]) -> Option<usize> {
>> ++ let mut pos = None;
>> ++ for target in targets {
>> ++ if let Some(index) = s.rfind(target) {
>> ++ //If a target is found and pos is None, set it
>> ++ if pos.is_none() || index < pos.unwrap() {
>> ++ pos = Some(index);
>> ++ }
>> ++ }
>> ++ }
>> ++ pos
>> ++ }
>> ++
>> ++ let filtered_dirname = if let Some(pos) = find_target_position(&dirname, &target_substring) {
>> ++ dirname[pos..].to_string() //Keep everything from the target substring onwards
>> ++ } else {
>> ++ dirname.to_string() //If target substring is not found, keep the original dirname
>> ++ };
>> + // Hash the dirname. This should prevent conflicts if we have multiple
>> + // object files with the same filename in different subfolders.
>> + let mut hasher = hash_map::DefaultHasher::new();
>> +- hasher.write(dirname.to_string().as_bytes());
>> ++ hasher.write(filtered_dirname.as_bytes());
>> + let obj = dst
>> + .join(format!("{:016x}-{}", hasher.finish(), basename))
>> + .with_extension("o");
> Similarly, why this patch has this new addition? Is there an upstream
> discussion related to it somewhere, or is it just multiple versions of
> the same crate all needing the same fix?
>
> Alex
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [OE-core] [PATCH 2/3] rust: Fix for duplicate libstd.so
2025-01-09 9:34 ` Deepesh Varatharajan
@ 2025-01-09 9:41 ` Deepesh Varatharajan
0 siblings, 0 replies; 11+ messages in thread
From: Deepesh Varatharajan @ 2025-01-09 9:41 UTC (permalink / raw)
To: Alexander Kanavin
Cc: openembedded-core, Shivaprasad.Moodalappa, Sundeep.Kokkonda
[-- Attachment #1: Type: text/plain, Size: 3489 bytes --]
On 09-01-2025 15:04, Deepesh Varatharajan wrote:
>
>
> On 28-12-2024 00:26, Alexander Kanavin wrote:
>> CAUTION: This email comes from a non Wind River email account!
>> Do not click links or open attachments unless you recognize the sender and know the content is safe.
>>
>> On Fri, 27 Dec 2024 at 07:54, Varatharajan, Deepesh via
>> lists.openembedded.org
>> <deepesh.varatharajan=windriver.com@lists.openembedded.org> wrote:
>>> From: Deepesh Varatharajan<Deepesh.Varatharajan@windriver.com>
>>>
>>> The `do_package` task fail with below error due to multiple `libstd.so` files installed in lib dir.
>>>
>>> ---------------------------------------------------------------------------------------------------------------------------
>>> ERROR: rust-1.81.0-r0 do_package: rust-rustdoc: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-rustdoc/usr/bin/rustdoc)
>>> ERROR: rust-1.81.0-r0 do_package: rust-tools-rustfmt: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust-tools-rustfmt/usr/bin/rustfmt)
>>> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/rustc)
>>> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/clippy-driver)
>>> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/bin/cargo-clippy)
>>> ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so: rust,
>>> rust (used by files: poky/build/tmp/work/core2-64-poky-linux/rust/1.81.0/packages-split/rust/usr/lib/
>>> librustc_driver-fc36770e343ef852.so)
>>> ---------------------------------------------------------------------------------------------------------------------------
>>>
>>> To fix the redundant `libstd.so` files are removed from the usr/lib/.
>> What installs the redundant files in the first place? Shouldn't it be
>> adjusted to not do that?
> During the Rust build process, multiple copies of libstd-*.so are
> generated, as Rust copies the
> required files from the stage2 build artifacts to the target image
> directory. When these build
> binaries are copied to the image, Yocto's do_package step encounters
> an error. To resolve this,
> the redundant libstd-*.so files are removed during the do_install step.
Sorry about the above format
During the Rust build process,multiple copies of libstd-*.so are
generated, as Rust copies the required files from the stage2 build
artifacts to the target image directory. When these build binaries are
copied to image, Yocto's do_package step encounters an error. To resolve
this the redundant libstd-*.so file is removed during the do_install step.
>> Also, as noted elsewhere, you cannot hardcode 'poky', or special-case
>> based on TCLIBC.
> Updated the patch
> https://lists.openembedded.org/g/openembedded-core/topic/patch_v2_2_3_rust_fix_for/110513058
>> Alex
[-- Attachment #2: Type: text/html, Size: 10566 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2025-01-09 9:41 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-27 6:53 [PATCH 1/3] rust-target-config: Update the data layout for x86 and ppc targets Deepesh.Varatharajan
2024-12-27 6:53 ` [PATCH 2/3] rust: Fix for duplicate libstd.so Deepesh.Varatharajan
2024-12-27 7:23 ` [OE-core] " Changqing Li
2024-12-27 18:56 ` Alexander Kanavin
2025-01-09 9:34 ` Deepesh Varatharajan
2025-01-09 9:41 ` Deepesh Varatharajan
2024-12-27 6:53 ` [PATCH 3/3] rust: Upgrade 1.80.1->1.81.0 Deepesh.Varatharajan
2024-12-27 7:05 ` Varatharajan, Deepesh
2024-12-27 18:53 ` [OE-core] " Alexander Kanavin
2025-01-09 9:36 ` Deepesh Varatharajan
2024-12-27 18:30 ` [OE-core] [PATCH 1/3] rust-target-config: Update the data layout for x86 and ppc targets Khem Raj
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox