selfhost-verify: SWAP_RUST usa store dedicado (el input-hash no incluye el rustc)
recipe.hash_inputs = source+compiler+target+link+patches+flags+phases+deps; NO incluye el binario rustc del toolchain. En el ./store compartido, arje-zero/hammerd quedarían cacheados con los bytes de Alpine ⇒ el swap de rust sería un no-op (REF seguiría 9adefb82). SWAP_RUST=1 ahora usa un store dedicado (store-rust, override RUST_STORE) para forzar el rebuild de los 4/4 con hammer-rust, sin tocar el ./store baseline. Así of_tree refleja el compilador nuevo (auto-consistencia). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -84,6 +84,12 @@ if [[ "${SWAP_RUST:-0}" == 1 ]]; then
|
||||
say "variante b (compilador) — swapear hammer-rust 1.91.1 en $TOOLCHAIN (criterio: auto-consistencia)"
|
||||
scripts/rust-frontier/swap-rust-into-toolchain.sh --prefix "$RUST_PREFIX" --toolchain "$TOOLCHAIN"
|
||||
trap 'scripts/rust-frontier/swap-rust-into-toolchain.sh --restore --toolchain "$TOOLCHAIN" >/dev/null 2>&1 || true' EXIT
|
||||
# OJO: el input-hash del store NO incluye el rustc (recipe.hash_inputs = source+compiler+target+
|
||||
# link+patches+flags+phases+deps), así que en el ./store compartido arje-zero/hammerd quedarían
|
||||
# CACHEADOS con los bytes de Alpine y el swap sería un no-op. Usamos un store DEDICADO (store-rust)
|
||||
# para forzar el rebuild de los 4/4 con hammer-rust; así el of_tree refleja el compilador nuevo.
|
||||
STORE="${RUST_STORE:-store-rust}"
|
||||
say "SWAP_RUST: store dedicado $STORE (el ./store baseline no se toca; fuerza rebuild con hammer-rust)"
|
||||
# Con hammer-rust el REF NO es el 9adefb82 de Alpine; comparamos contra RUST_EXPECT_REF (si se
|
||||
# conoce de una corrida previa), no contra el baseline Alpine.
|
||||
EXPECT_REF="${RUST_EXPECT_REF:-}"
|
||||
|
||||
Reference in New Issue
Block a user