Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Alejandro Hernandez <alhe@linux.microsoft.com>
To: SunilKumar.Dora@windriver.com, openembedded-core@lists.openembedded.org
Cc: richard.purdie@linuxfoundation.org,
	sundeep.kokkonda@windriver.com, Randy.Macleod@windriver.com,
	alejandro@enedino.org
Subject: Re: [OE-core] [PATCH 0/5] rust: reproducibility fixes for arm build hosts
Date: Tue, 15 Sep 2026 09:53:08 -0600	[thread overview]
Message-ID: <b8a0599c-a7e4-44b5-b8c9-6a72d14a70fc@linux.microsoft.com> (raw)
In-Reply-To: <20260915141834.1212812-1-sunilkumar.dora@windriver.com>

[-- Attachment #1: Type: text/plain, Size: 4124 bytes --]

Hopefully these fix reproducibility issue when built from different hosts.

Unfortunately these go in a bit of a different way than my next version, so I
will wait for the result before sending to avoid confusion, but I'm fine with these
if they work, lets just add my sign off to the actual patches based off of mine
instead of the "Patch from Alejandro + OE link".

Cheers

Alejandro

On 9/15/2026 8:18 AM, Dora, Sunil Kumar via lists.openembedded.org wrote:
> 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%)
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#245843):https://lists.openembedded.org/g/openembedded-core/message/245843
> Mute This Topic:https://lists.openembedded.org/mt/121261374/4354175
> Group Owner:openembedded-core+owner@lists.openembedded.org
> Unsubscribe:https://lists.openembedded.org/g/openembedded-core/unsub [alhe@linux.microsoft.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>

[-- Attachment #2: Type: text/html, Size: 5425 bytes --]

  parent reply	other threads:[~2026-09-15 15:53 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 ` Alejandro Hernandez [this message]
2026-09-15 16:10   ` [OE-core] [PATCH 0/5] rust: reproducibility fixes for arm build hosts 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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b8a0599c-a7e4-44b5-b8c9-6a72d14a70fc@linux.microsoft.com \
    --to=alhe@linux.microsoft.com \
    --cc=Randy.Macleod@windriver.com \
    --cc=SunilKumar.Dora@windriver.com \
    --cc=alejandro@enedino.org \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    --cc=sundeep.kokkonda@windriver.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox