diff options
author | Sundeep KOKKONDA <sundeep.kokkonda@windriver.com> | 2023-12-20 02:40:20 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-12-21 10:38:30 +0000 |
commit | 321aebfa281bd28e368c684ece57867f6bd0cbe7 (patch) | |
tree | ecfc99fccb5c22b2c8454c901c43041ebd156edc /meta/recipes-devtools/rust | |
parent | 92fd81b7dee511c89163165e93c78015b6d6a6e2 (diff) | |
download | poky-321aebfa281bd28e368c684ece57867f6bd0cbe7.tar.gz |
rust: rustdoc reproducibility issue fix - disable PGO
The PGO (Profile-guided Optimization) collect data about the typical execution of a program
and then use this data to inform optimizations such as inlining, machine-code layout,
register allocation, etc.
This optimization is by default disabled in rust sources but enabled in Yocto and causing
the reproducibility issue in rustdoc binary. To fix the issue this optimization is set to
it's default 'false'.
More about the optimization: https://doc.rust-lang.org/rustc/profile-guided-optimization.html
With the reproducibility issue fixed, we can enable the reproducibility tests again.
(From OE-Core rev: 189c266378c8c4a918cb205b3888577c7ce76856)
Signed-off-by: Sundeep KOKKONDA <sundeep.kokkonda@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/rust')
-rw-r--r-- | meta/recipes-devtools/rust/rust_1.71.1.bb | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/meta/recipes-devtools/rust/rust_1.71.1.bb b/meta/recipes-devtools/rust/rust_1.71.1.bb index 3d176e54c1..bc076997de 100644 --- a/meta/recipes-devtools/rust/rust_1.71.1.bb +++ b/meta/recipes-devtools/rust/rust_1.71.1.bb | |||
@@ -141,13 +141,14 @@ python do_configure() { | |||
141 | config.add_section("build") | 141 | config.add_section("build") |
142 | config.set("build", "submodules", e(False)) | 142 | config.set("build", "submodules", e(False)) |
143 | config.set("build", "docs", e(False)) | 143 | config.set("build", "docs", e(False)) |
144 | config.set("build", "tools", ["rust-demangler",]) | ||
144 | 145 | ||
145 | rustc = d.expand("${WORKDIR}/rust-snapshot/bin/rustc") | 146 | rustc = d.expand("${WORKDIR}/rust-snapshot/bin/rustc") |
146 | config.set("build", "rustc", e(rustc)) | 147 | config.set("build", "rustc", e(rustc)) |
147 | 148 | ||
148 | # Support for the profiler runtime to generate e.g. coverage report, | 149 | # Support for the profiler runtime to generate e.g. coverage report, |
149 | # PGO etc. | 150 | # PGO etc. |
150 | config.set("build", "profiler", e(True)) | 151 | config.set("build", "profiler", e(False)) |
151 | 152 | ||
152 | cargo = d.expand("${WORKDIR}/rust-snapshot/bin/cargo") | 153 | cargo = d.expand("${WORKDIR}/rust-snapshot/bin/cargo") |
153 | config.set("build", "cargo", e(cargo)) | 154 | config.set("build", "cargo", e(cargo)) |