Skip to content

Commit

Permalink
Pin compiler_builtins to 0.1.109 when building std
Browse files Browse the repository at this point in the history
  • Loading branch information
TheBlueMatt committed May 15, 2024
1 parent 00b6a5e commit baec2ef
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[package]
name = "compiler-builtins-dummy"
version = "0.1.0"
edition = "2021"

[dependencies]
compiler_builtins = "=0.1.109"
Empty file.
14 changes: 11 additions & 3 deletions genbindings.sh
Original file line number Diff line number Diff line change
Expand Up @@ -376,19 +376,27 @@ function REALLY_PIN_CC {
cargo update -p cc --precise "1.0.79" --verbose
( RUSTC_BOOTSTRAP=1 cargo build --features=std -v --release --target x86_64-apple-darwin -Zbuild-std=std,panic_abort > /dev/null 2>&1 ) || echo -n
( RUSTC_BOOTSTRAP=1 cargo build --features=std -v --release --target aarch64-apple-darwin -Zbuild-std=std,panic_abort > /dev/null 2>&1 ) || echo -n
pushd ../deterministic-build-wrappers/compiler-builtins-dummy
cargo build > /dev/null 2>&1 || echo -n
popd
# Sadly, std also depends on cc, and we can't pin it in that tree
# directly. Instead, we have to delete the file out of the cargo
# registry and build --offline to avoid it using the latest version.
NEW_CC_DEP="$CARGO_HOME"
[ "$NEW_CC_DEP" = "" ] && NEW_CC_DEP="$HOME"
[ -d "$NEW_CC_DEP/.cargo/registry/cache/"github.com-* ] && CARGO_REGISTRY_CACHE="$NEW_CC_DEP/.cargo/registry/cache/"github.com-*
[ -d "$NEW_CC_DEP/.cargo/registry/cache/"index.crates.io-* ] && CARGO_REGISTRY_CACHE="$NEW_CC_DEP/.cargo/registry/cache/"index.crates.io-*
[ -d "$NEW_CC_DEP/.cargo/registry/cache/"github.com-* ] && CARGO_REGISTRY_CACHE="$(echo "$NEW_CC_DEP/.cargo/registry/cache/"github.com-*)"
[ -d "$NEW_CC_DEP/.cargo/registry/cache/"index.crates.io-* ] && CARGO_REGISTRY_CACHE="$(echo "$NEW_CC_DEP/.cargo/registry/cache/"index.crates.io-*)"
if [ -d "$CARGO_REGISTRY_CACHE" ]; then
if [ -f "$CARGO_REGISTRY_CACHE/compiler_builtins-0.1.109.crate" ]; then
mv "$CARGO_REGISTRY_CACHE/compiler_builtins-0.1.109.crate" ./
fi
if [ -f "$CARGO_REGISTRY_CACHE/cc-1.0.79.crate" ]; then
mv "$CARGO_REGISTRY_CACHE/cc-1.0.79.crate" ./
fi
rm -f "$CARGO_REGISTRY_CACHE/"*/cc-*.crate
rm -f "$CARGO_REGISTRY_CACHE/"cc-*.crate
[ -f ./cc-1.0.79.crate ] && mv ./cc-1.0.79.crate "$CARGO_REGISTRY_CACHE/"
rm -f "$CARGO_REGISTRY_CACHE/"compiler_builtins-0.1.11*.crate
[ -f ./compiler_builtins-0.1.109.crate ] && mv ./compiler_builtins-0.1.109.crate "$CARGO_REGISTRY_CACHE/"
else
echo "Couldn't find cargo cache, build-std builds are likely to fail!"
fi
Expand Down

0 comments on commit baec2ef

Please sign in to comment.