summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/rust
diff options
context:
space:
mode:
authorSundeep KOKKONDA <sundeep.kokkonda@windriver.com>2023-12-20 02:40:20 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-12-21 10:38:30 +0000
commit321aebfa281bd28e368c684ece57867f6bd0cbe7 (patch)
treeecfc99fccb5c22b2c8454c901c43041ebd156edc /meta/recipes-devtools/rust
parent92fd81b7dee511c89163165e93c78015b6d6a6e2 (diff)
downloadpoky-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.bb3
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))