| # fresh binaries. We currently don't entirely support distributing a fresh |
| # copy of the compiler (including llvm tools, etc.) if we haven't actually |
| # built LLVM, since not everything necessary is copied into the |
| # local-usage-only LLVM artifacts. If that changes, this could maybe be made |
| # true for all builds. In practice it's probably a good idea to keep building |
| # LLVM continuously on at least some builders to ensure it works, though. |
| # (And PGO is its own can of worms). |
| if [ "$NO_DOWNLOAD_CI_LLVM" = "" ]; then |
| RUST_CONFIGURE_ARGS="$RUST_CONFIGURE_ARGS --set llvm.download-ci-llvm=if-unchanged" |
| else |
| # CI rustc requires CI LLVM to be enabled (see https://github.com/rust-lang/rust/issues/123586). |
| NO_DOWNLOAD_CI_RUSTC=1 |
| # When building for CI we want to use the static C++ Standard library |
| # included with LLVM, since a dynamic libstdcpp may not be available. |
| RUST_CONFIGURE_ARGS="$RUST_CONFIGURE_ARGS --set llvm.static-libstdcpp" |
| fi |
|
| if [ "$NO_DOWNLOAD_CI_RUSTC" = "" ]; then |
| RUST_CONFIGURE_ARGS="$RUST_CONFIGURE_ARGS --set rust.download-rustc=if-unchanged" |
| fi |