<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/recipes-devtools/rust/files, branch master-next</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=master-next</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=master-next'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2025-09-25T10:09:05+00:00</updated>
<entry>
<title>rust: Upgrade 1.89.0 -&gt; 1.90.0</title>
<updated>2025-09-25T10:09:05+00:00</updated>
<author>
<name>Yash Shinde</name>
<email>Yash.Shinde@windriver.com</email>
</author>
<published>2025-09-24T09:22:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=61ce087049be24f3306e8bb08acbfe2a8151e37c'/>
<id>urn:sha1:61ce087049be24f3306e8bb08acbfe2a8151e37c</id>
<content type='text'>
https://blog.rust-lang.org/2025/09/18/Rust-1.90.0/

* Recent changes in rustc require 'target-c-int-width' to be an integer,
  not a string. This fixes type consistency when generating target specs.
  https://github.com/rust-lang/rust/pull/142352.

* Rebase existing patches with v1.90.0.

* Drop merged patches with rust v1.90.0.
  - backport-fix-test-string-merging.patch
  https://github.com/rust-lang/rust/commit/2d51acd2fbcbadb6f30709c5dd305494d413d388

* The "remote-test-server" bin is now generated in stage1-tools-bin dir
  rather than stage2. Update the test suite accordingly.

  The tests/{assembly/codegen} dirs are renamed to
  tests/{assembly,codegen}-llvm. Update the test suite and
  patches accordingly.
  https://github.com/rust-lang/rust/pull/144249/commits

* Use "//@ ignore-riscv64" tag for tests failing on riscv-64 instead of previous
  "only-&lt;target_arch&gt;" tags.

  Test results summary:

   rust v1.90.0
   +-----------+--------+---------+
   | Machine   | Passed | Ignored |
   +-----------+--------+---------+
   | arm-32    | 29,517 |  1,529  |
   | arm-64    | 29,608 |  1,471  |
   | x86-32    | 29,508 |  1,507  |
   | x86-64    | 29,903 |  1,275  |
   | riscv-64  | 29,584 |  1,494  |
   +-----------+--------+---------+

   Test results difference (1.90 - 1.89):
   +-----------+--------+---------+
   | Machine   | Passed | Ignored |
   +-----------+--------+---------+
   | arm-32    |  +278  |   +61   |
   | arm-64    |  +279  |   +59   |
   | x86-32    |  +277  |   +58   |
   | x86-64    |  +419  |   +50   |
   | riscv-64  |  +280  |   +58   |
   +-----------+--------+---------+

(From OE-Core rev: 86d09ec9cdbcea6e076ebac6e1243f9e20fb4378)

Signed-off-by: Yash Shinde &lt;Yash.Shinde@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rust: Upgrade 1.88.0 -&gt; 1.89.0</title>
<updated>2025-08-28T09:47:08+00:00</updated>
<author>
<name>Jayasurya Maganuru</name>
<email>Maganuru.Jayasurya@windriver.com</email>
</author>
<published>2025-08-25T12:33:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=917430ed349f03869c9ca064f117bd74484090ee'/>
<id>urn:sha1:917430ed349f03869c9ca064f117bd74484090ee</id>
<content type='text'>
Rust stable version upgraded to 1.89.0
https://blog.rust-lang.org/2025/08/07/Rust-1.89.0/

* Drop merged patches with rust v1.89.0.
  - 0001-Disable-libunwind-cross-architecture-unwinding.patch
  - triagebot.patch

* Update and rebase existing patches with rust v1.89.0.
  - revert-link-std-statically-in-rustc_driver-feature.patch
  - rust-oe-selftest.patch
  - 0001-src-core-build_steps-tool.rs-switch-off-lto-for-rust.patch
  - 0001-riscv32-Define-plain-syscalls-as-their-time64-varian.patch
    (To fix build failures for riscv with musl, this patch adds
     aliases for plain syscalls to their time64 variants in libc-0.2.174,
     These changes are in addition to similar fixes already applied
     to libc-0.2.172)
  - 0001-Define-more-ioctl-codes-on-riscv32gc-unknown-linux-g.patch
    (Changes for libc-0.2.170 are no longer needed, as that version
     is not present in rust v1.89.0 vendor sources)

* OE-selftests:
  - Doc-tests fail in 55 crates,test-float-parse tests also fail.
    These tests are excluded to ensure the overall test suite passes.

   Test Results Summary:
   +-----------+--------+---------+
   | Machine   | Passed | Ignored |
   +-----------+--------+---------+
   | arm-32    | 29,239 | 1,468   |
   | arm-64    | 29,329 | 1,412   |
   | x86-32    | 29,231 | 1,449   |
   | x86-64    | 29,484 | 1,225   |
   | riscv-64  | 29,304 | 1,436   |
   +-----------+--------+---------+

(From OE-Core rev: fca454a188592c9fa854e93ff1a9c3e70a681e23)

Signed-off-by: Jayasurya Maganuru &lt;Maganuru.Jayasurya@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rust: backport cstring-merging test fix for PowerPC targets</title>
<updated>2025-08-14T09:31:10+00:00</updated>
<author>
<name>Peter Tatrai</name>
<email>peter.tatrai.ext@siemens.com</email>
</author>
<published>2025-08-11T08:43:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=125ff9747b15ffddcc537bf4dfd9bf90ab189d67'/>
<id>urn:sha1:125ff9747b15ffddcc537bf4dfd9bf90ab189d67</id>
<content type='text'>
The Rust cstring-merging assembly test was failing on PowerPC targets due to
LLVM's GlobalMerge optimization pass merging all global string constants into
a single merged global. This caused the test's CHECK directives to fail as
they expected separate .Lanon labels for each string literal ("foo", "bar",
"baz").

The test verifies that C-style string literals are correctly placed in
mergeable read-only sections (.rodata.str1.1) with proper section flags
(aMS - Allocatable, Merge, Strings) for linker optimization.

This backports the upstream fix that disables the GlobalMerge pass
(-Cllvm-args=-enable-global-merge=0) specifically for this test, allowing
it to verify the expected assembly structure without interference from
the optimization.

Fixes test failure:
- tests/assembly/cstring-merging.rs on powerpc-poky-linux-gnu

Backport of https://github.com/rust-lang/rust/commit/2d51acd2fbcbadb6f30709c5dd305494d413d388

(From OE-Core rev: 2435b16b050ebdca0f70fe9ed1eebfdd3bacf19d)

Signed-off-by: Peter Tatrai &lt;peter.tatrai.ext@siemens.com&gt;
Tested-by: Peter Marko &lt;peter.marko@siemens.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rust: disable executable-no-mangle-strip test on PowerPC due to linker issue</title>
<updated>2025-08-14T09:31:10+00:00</updated>
<author>
<name>Peter Tatrai</name>
<email>peter.tatrai.ext@siemens.com</email>
</author>
<published>2025-08-11T08:43:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=65e4a4739e7ba2b816224f26825df3ad386ac299'/>
<id>urn:sha1:65e4a4739e7ba2b816224f26825df3ad386ac299</id>
<content type='text'>
The executable-no-mangle-strip test fails on PowerPC target with an undefined
reference error when linking. The linker attempts to resolve this undefined symbol
at link time, causing the test to fail with:
  undefined reference to `THIS_SYMBOL_SHOULD_BE_UNDEFINED'

The test is designed to verify garbage collection behavior of #[no_mangle]
functions and used(compiler)] statics. This appears to be a PowerPC-specific
linker behavior issue.

Temporarily disable this test on PowerPC until the underlying issue is
resolved upstream.

Related upstream issue: https://github.com/rust-lang/rust/issues/144777

Fixes oe-selftest failure:
- tests/ui/linking/executable-no-mangle-strip.rs on powerpc-poky-linux-gnu

(From OE-Core rev: 58ccb78de7e87f2f17d8ee47be545de49b8e2450)

Signed-off-by: Peter Tatrai &lt;peter.tatrai.ext@siemens.com&gt;
Tested-by: Peter Marko &lt;peter.marko@siemens.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>libstd-rs: Fix build regression on rv32</title>
<updated>2025-08-04T17:04:04+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-08-03T04:05:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=474e912372a5f6bd32fedb68d75a5f16efd75031'/>
<id>urn:sha1:474e912372a5f6bd32fedb68d75a5f16efd75031</id>
<content type='text'>
This started to fail with rust 1.88, due to rust libc
upgrade

(From OE-Core rev: f9145bc8bec77e1f454f80c4e5576567daa99ac8)

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rust: Upgrade 1.87.0 -&gt; 1.88.0</title>
<updated>2025-07-31T09:48:35+00:00</updated>
<author>
<name>Jayasurya Maganuru</name>
<email>Maganuru.Jayasurya@windriver.com</email>
</author>
<published>2025-07-28T11:54:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=006da8235633e05d4eb5da9f01b616f0bd934593'/>
<id>urn:sha1:006da8235633e05d4eb5da9f01b616f0bd934593</id>
<content type='text'>
Rust stable version updated to 1.88.0.
https://blog.rust-lang.org/2025/06/26/Rust-1.88.0/

* Rebase existing patches with v1.88.0

* Exclude tidy and coverage-dump from OE self-tests due to test failures
  Although the build completes successfully, OE self-tests fail:
  tools/coverage-dump panics during test execution.
  tools/tidy fails due to a mismatched GCC submodule commit.
  These tests are excluded to allow successful OE self-test runs.

* Two tests from the`codegen` modules now fail only on riscv64.
  Enable them on arm32/64 and x86-32/64 targets, while restricting
  them on riscv64 via `only-&lt;target_arch&gt;` tags.

  Bugzilla link - https://bugzilla.yoctoproject.org/show_bug.cgi?id=15944

  Test Results Summary:
  +-----------+--------+---------+
  | Machine   | Passed | Ignored |
  +-----------+--------+---------+
  | arm-32    | 28,664 | 1,451   |
  | arm-64    | 28,748 | 1,396   |
  | x86-32    | 28,657 | 1,432   |
  | x86-64    | 28,904 | 1,213   |
  | riscv-64  | 28,722 | 1,421   |
  +-----------+--------+---------+

(From OE-Core rev: 5afc9bdbabfdbcb784ceb637926111e6c7648f41)

Signed-off-by: Jayasurya Maganuru &lt;Maganuru.Jayasurya@windriver.com&gt;
Signed-off-by: Deepesh Varatharajan &lt;Deepesh.Varatharajan@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rust: Update riscv32 patch with the backport</title>
<updated>2025-07-28T13:51:50+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-07-22T18:33:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=dd39bbd9c26306110634730355ffeb9f03faec9b'/>
<id>urn:sha1:dd39bbd9c26306110634730355ffeb9f03faec9b</id>
<content type='text'>
This is the patch that got merged into libc finally

(From OE-Core rev: eb79f29c5c2bf8fce13c02c7d7ca362c61e2b0ff)

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rust: Upgrade 1.86.0 -&gt; 1.87.0</title>
<updated>2025-06-26T10:02:34+00:00</updated>
<author>
<name>Yash Shinde</name>
<email>Yash.Shinde@windriver.com</email>
</author>
<published>2025-06-25T10:20:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=6c529c908c313aa137fc11d7e534991c4bca6b9a'/>
<id>urn:sha1:6c529c908c313aa137fc11d7e534991c4bca6b9a</id>
<content type='text'>
Rust stable version updated to 1.87.0.
https://blog.rust-lang.org/2025/05/15/Rust-1.87.0/

* Update LLVM data-layout for arm64.
  LLVM requires matching data layouts and
  the aarch64 llvm data-layout was updated to to allow using
  32-bit signed/unsigned pointers when building 64-bit targets
  using 270, 271 and 272 address spaces.

  https://github.com/rust-lang/rust/commit/e9853961452b56997cc127b51308879b9cd09482
  https://github.com/llvm/llvm-project/commit/c9f27275c1330a325661bdf14fb3bc444a5e3648

* Rebase existing patches with v1.87.0.

* Two tests from the `ui` and `codegen` modules now fail only on riscv64.
  Enable them on arm32/64 and x86-32/64 targets, while restricting
  them on riscv64 via `only-&lt;target_arch&gt;` tags.

  Test Results Summary:

  +-----------+--------+---------+
  | Machine   | Passed | Ignored |
  +-----------+--------+---------+
  | arm-32    | 28,320 | 901     |
  | arm-64    | 28,400 | 849     |
  | x86-32    | 28,285 | 885     |
  | x86-64    | 28,518 | 676     |
  | riscv-64  | 27,845 | 868     |
  +-----------+--------+---------+

* Backport triagebot.patch to skip tidy linkcheck when triagebot.toml
  is not present. Distribution tarballs won't include triagebot.toml,
  which causes tidy checks to fail.
  This backport ensures tidy checks can still run successfully
  even when the file is missing.

  https://github.com/rust-lang/rust/pull/142666/commits

* During rust installation, some binaries were installed from
  'stage2-tools' built path to '${D}${bindir}'. However, from
  v1.87 the stage2-tools are no longer built by default.
  Update logic to install from `stage1-tools` instead.

(From OE-Core rev: 16ce25e6970b4a50f6433606a0c87d22ec74ea5a)

Signed-off-by: Yash Shinde &lt;Yash.Shinde@windriver.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rust: Upgrade 1.85.1-&gt;1.86.0</title>
<updated>2025-06-12T12:12:06+00:00</updated>
<author>
<name>Yash Shinde</name>
<email>Yash.Shinde@windriver.com</email>
</author>
<published>2025-06-10T06:19:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=72d932cc5b8ad99caf83e45924e81dcd58f56d20'/>
<id>urn:sha1:72d932cc5b8ad99caf83e45924e81dcd58f56d20</id>
<content type='text'>
Rust stable version updated to 1.86.0.
https://blog.rust-lang.org/2025/04/03/Rust-1.86.0.html

* Add pkgconfig-native and openssl to resolve openssl-sys crate
dependency on pkg-config. As per rust document this is a required dependency.

Fixes:
| error: failed to run custom build command for `openssl-sys v0.9.106`
| Could not find openssl via pkg-config:
|   The pkg-config command could not be found.
|
|   Most likely, you need to install a pkg-config package for your OS.
|   Try `apt install pkg-config`, or `yum install pkg-config`,
|   or `pkg install pkg-config`, or `apk add pkgconfig` depending on your distribution

https://crates.io/crates/openssl-sys/0.9.108/dependencies
https://github.com/rust-lang/rust/blob/master/INSTALL.md#dependencies

* Add Ninja as a dependency for building Rust to prevent bootstrap
  build regression.

Fixes:
| Building LLD for x86_64-unknown-linux-gnu
|
| Couldn't find required command: ninja (or ninja-build)
|
| You should install ninja as described at
| &lt;https://github.com/ninja-build/ninja/wiki/Pre-built-Ninja-packages&gt;,
| or set `ninja = false` in the `[llvm]` section of `config.toml`.
| Alternatively, set `download-ci-llvm = true` in that `[llvm]` section
| to download LLVM rather than building it.

* Add bash to DEPENDS to resolve missing dependency for subtree-sync.sh
Fixes:
ERROR: rust-1.86.0-r0 do_package_qa: QA Issue: /usr/lib/rustlib/src/rust/library/portable-simd/subtree-sync.sh
contained in package rust requires /bin/bash, but no providers found in RDEPENDS:rust? [file-rdeps]

* Add do_install:append() task to remove cargo bin from rust native builds.
This resolves the following conflict:

Fixes:
ERROR: libstd-rs-1.86.0-r0 do_prepare_recipe_sysroot: The file /usr/bin/cargo is
installed by both rust-native and cargo-native, aborting

* Update Unicode-3.0 license checksums.
License-Update: Copyright and license files to distributions are updated.

https://github.com/rust-lang/rust/commit/f9c16997dc016a3ef1456f56df2ab564a1c48cb2
  It adds copyright and license files (including HTML versions) to distributions,
  aligns with license compliance tools like reuse, and ensures all required
  license texts are properly included and formatted.

* Disable building of extended Rust tools to reduce build time and filesystem usage.
  Update config.toml to disable building of extended Rust tools that are not required.
  This helps minimize unnecessary build time and filesystem usage.

* The "remote-test-server" bin is now generated in stage2-tools-bin dir
  rather than stage1. Update the test suite accordingly.

* Fix do_package QA issue by packing missing zsh files and directories:

Fixes:
do_package: QA Issue: rust: Files/directories were installed but not shipped in any package:
/usr/share/zsh
/usr/share/zsh/site-functions
/usr/share/zsh/site-functions/_cargo
Please set FILES such that these items are packaged. Alternatively if they are unneeded,
avoid installing them or delete them within do_install

* From v1.86.0, a "self-contained" LLD is built as part of rust
 bootstrap build. This results in additional build time and
 installations. Disable rust-lld in config.toml to prevent it.

 References: https://github.com/rust-lang/rust/pull/135001
             https://github.com/rust-lang/rust/commit/8744b44e6bde053f7656a3c727c968177ee8e4b6

* Drop Zdual-proc-macros-additional-check.patch patch
 since it's merged with v1.86.0
 https://github.com/rust-lang/rust/commit/139d6ba054a1a4cc5fe64981ad46fd5547bd4916

* LTO config is applied to rustdoc from v1.86.0.
 Rebase 0001-src-core-build_steps-tool.rs-switch-off-lto-for-rust.patch
 which disables it to avoid suffixes in binaries causing non-reproducibility.
 https://github.com/rust-lang/rust/commit/1fe351b

* Restrict tests using "//@only &lt;target_arch&gt;" to avoid failures on riscv64,
  which is now part of default AB testing. Since riscv64 is Tier 2
  with no automated testing, some tests may fail. This approach ensures tests continue
  running on supported architectures while skipping them on riscv64.
  https://doc.rust-lang.org/rustc/platform-support.html#tier-2-with-host-tools

(From OE-Core rev: c064ef18343a956aea397d36d2e7665d6c8afd7d)

Signed-off-by: Yash Shinde &lt;Yash.Shinde@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rust: Disable cross-unwinding support in llvm libunwind</title>
<updated>2025-05-29T14:14:37+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-05-28T03:01:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d8d8f83bd182ca9c4c5e5857f562b8e43cd6cfe1'/>
<id>urn:sha1:d8d8f83bd182ca9c4c5e5857f562b8e43cd6cfe1</id>
<content type='text'>
This is default in LLVM but rust does not use cmake to build itself
so it needs to replicate the behavior

Fixes rust build with clang/musl for aarch64

(From OE-Core rev: f05d42d11e56cbbda6034bd7f773dc690b68bdbd)

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
