From: Matt Corallo Date: Wed, 15 May 2024 02:33:32 +0000 (+0000) Subject: Pin compiler_builtins to 0.1.111 when building std X-Git-Url: http://git.bitcoin.ninja/index.cgi?p=ldk-c-bindings;a=commitdiff_plain;ds=sidebyside Pin compiler_builtins to 0.1.111 when building std See https://github.com/rust-lang/compiler-builtins/issues/610 --- diff --git a/deterministic-build-wrappers/compiler-builtins-dummy/Cargo.toml b/deterministic-build-wrappers/compiler-builtins-dummy/Cargo.toml new file mode 100644 index 0000000..53fe89b --- /dev/null +++ b/deterministic-build-wrappers/compiler-builtins-dummy/Cargo.toml @@ -0,0 +1,7 @@ +[package] +name = "compiler-builtins-dummy" +version = "0.1.0" +edition = "2021" + +[dependencies] +compiler_builtins = "=0.1.111" diff --git a/deterministic-build-wrappers/compiler-builtins-dummy/src/lib.rs b/deterministic-build-wrappers/compiler-builtins-dummy/src/lib.rs new file mode 100644 index 0000000..e69de29 diff --git a/genbindings.sh b/genbindings.sh index 0e6f0f6..33f70d2 100755 --- a/genbindings.sh +++ b/genbindings.sh @@ -376,6 +376,9 @@ 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 + 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. @@ -383,12 +386,16 @@ function REALLY_PIN_CC { [ "$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-* - if [ -d "$CARGO_REGISTRY_CACHE" ]; then + if [ -d "$CARGO_REGISTRY_CACHE" ]; the + if [ -f "$CARGO_REGISTRY_CACHE/compiler_builtins-0.1.111.crate" ]; then + mv "$CARGO_REGISTRY_CACHE/compiler_builtins-0.1.111.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 [ -f ./cc-1.0.79.crate ] && mv ./cc-1.0.79.crate "$CARGO_REGISTRY_CACHE/" + [ -f ./compiler_builtins-0.1.111.crate ] && mv ./compiler_builtins-0.1.111.crate "$CARGO_REGISTRY_CACHE/" else echo "Couldn't find cargo cache, build-std builds are likely to fail!" fi