Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 0/5] rust: reproducibility fixes for arm build hosts
@ 2026-09-15 14:18 sunilkumar.dora
  2026-09-15 14:18 ` [PATCH 1/5] rust: drop the cc object-name reproducibility patch sunilkumar.dora
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: sunilkumar.dora @ 2026-09-15 14:18 UTC (permalink / raw)
  To: openembedded-core
  Cc: richard.purdie, sundeep.kokkonda, sunilkumar.dora, Randy.Macleod,
	alejandro

From: Sunil Dora <sunilkumar.dora@windriver.com>

The reproducible selftest fails for rust on the arm workers
([YOCTO #16376]). This series fixes that.

rust: drop the cc object-name reproducibility patch
rust: hash cc object names relative to their source roots

  The patch we carried trimmed the build path by matching the string
  "rustc", and the shared-source rework broke that for one of the two
  sets of sources cc compiles. The replacement strips the roots the
  sources actually come from. The OUT_DIR part is proposed upstream as
  https://github.com/rust-lang/cc-rs/pull/1902.
  The RUST_COMPILER_RT_ROOT part is specific to rust's own build
  system, so it is not part of that pull request.

rust: keep the build host triple out of cargo unit metadata

  From Alejandro Enedino Hernandez Samaniego's strict-version-hash
  series, carried with his sign-off:
  https://lists.openembedded.org/g/openembedded-core/topic/120939810
  cargo mixes the "host:" line of "rustc -vV" into build script and
  proc-macro metadata, and target crates inherit it.
  Upstream report: https://github.com/rust-lang/cargo/issues/8140

rust: backport deterministic DocLinkResMap serialisation

  Upstream commit f9d9939 by jprochazk and mejrs. It is in rust 1.99,
  so this drops out at the next rust upgrade.

rust: sort hygiene data before it is encoded

  Also from Alejandro's series. Upstream is fixing the same problem
  with a different approach in
  https://github.com/rust-lang/rust/pull/161450, which is still open.

Alejandro's StableCrateId patch is not included: the value it pins is
already host-independent in our builds, and it broke three rust test
suite cases when the autobuilder tested it.

Tested on the autobuilder: the x86 reproducible builder green with
zero differing packages, the rust test suite green, and on both arm
builders rust, rust-dbg, rust-rustdoc and libstd-rs-dev gone from the
failing list.


Sunil Dora (5):
  rust: drop the cc object-name reproducibility patch
  rust: hash cc object names relative to their source roots
  rust: keep the build host triple out of cargo unit metadata
  rust: backport deterministic DocLinkResMap serialisation
  rust: sort hygiene data before it is encoded

 ...-host-triple-from-unit-metadata-hash.patch |  62 ++++++++++
 ...oc-link-metadata-order-deterministic.patch |  40 ++++++
 ...hygiene-encoding-order-deterministic.patch |  58 +++++++++
 ...ject-names-relative-to-source-roots.patch} | 116 +++++++++---------
 meta/recipes-devtools/rust/rust-source.inc    |   5 +-
 5 files changed, 224 insertions(+), 57 deletions(-)
 create mode 100644 meta/recipes-devtools/rust/files/0007-cargo-omit-host-triple-from-unit-metadata-hash.patch
 create mode 100644 meta/recipes-devtools/rust/files/0008-rustc-hir-make-doc-link-metadata-order-deterministic.patch
 create mode 100644 meta/recipes-devtools/rust/files/0009-rustc-span-make-hygiene-encoding-order-deterministic.patch
 rename meta/recipes-devtools/rust/files/{repro-issue-fix-with-cc-crate-hashmap.patch => cc-hash-object-names-relative-to-source-roots.patch} (70%)

-- 
2.43.0



^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2026-09-21 21:43 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-15 14:18 [PATCH 0/5] rust: reproducibility fixes for arm build hosts sunilkumar.dora
2026-09-15 14:18 ` [PATCH 1/5] rust: drop the cc object-name reproducibility patch sunilkumar.dora
2026-09-15 14:18 ` [PATCH 2/5] rust: hash cc object names relative to their source roots sunilkumar.dora
2026-09-15 14:18 ` [PATCH 3/5] rust: keep the build host triple out of cargo unit metadata sunilkumar.dora
2026-09-15 14:18 ` [PATCH 4/5] rust: backport deterministic DocLinkResMap serialisation sunilkumar.dora
2026-09-15 14:18 ` [PATCH 5/5] rust: sort hygiene data before it is encoded sunilkumar.dora
2026-09-15 15:53 ` [OE-core] [PATCH 0/5] rust: reproducibility fixes for arm build hosts Alejandro Hernandez
2026-09-15 16:10   ` Dora, Sunil Kumar
     [not found]   ` <18D58A6B209991A8.1909126@lists.openembedded.org>
2026-09-15 17:55     ` Dora, Sunil Kumar
2026-09-16  7:11   ` Antonin Godard
2026-09-21  9:46   ` Richard Purdie
2026-09-21 21:43     ` Alejandro Hernandez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox