]> git.lizzy.rs Git - rust.git/commit - src/tools/miri
Auto merge of #66255 - ehuss:update-cc, r=alexcrichton
authorbors <bors@rust-lang.org>
Sat, 16 Nov 2019 07:26:57 +0000 (07:26 +0000)
committerbors <bors@rust-lang.org>
Sat, 16 Nov 2019 07:26:57 +0000 (07:26 +0000)
commit9b0214d9c560c49e2836c8491aa21d3dbf9f5554
tree0017a9bd5acb9d99d2778683ea5114094be55b6b
parent1d8b6ce89e0874b5e93c9e41bfdd565c56372bb0
parenta902383053c763b12a242bf76baf754a8b660c09
Auto merge of #66255 - ehuss:update-cc, r=alexcrichton

Update cc, git2, num_cpus.

This updates the `cc` crate, bringing in better parallel building support. Also updates `git2` which enables the parallel feature. (Note: I don't expect it will have a significant impact on build time, but seems good to update anyways.)

The main thorn is that `cc` gained knowledge about RISC-V architectures (https://github.com/alexcrichton/cc-rs/pull/428, https://github.com/alexcrichton/cc-rs/pull/429, https://github.com/alexcrichton/cc-rs/pull/430), but the builders on CI do not have the riscv C compiler installed. This means that bootstraps' cc detection was finding a C compiler that isn't installed, and fails.

The solution here is to override the cc detection to `false`. The C compiler isn't actually used on riscv platforms. AFAIK, the only location would be compiler_builtins, and it currently forces C support off (https://github.com/rust-lang/compiler-builtins/blob/a533ae9c5aa325db209659679535fe1f186eae81/build.rs#L49-L55).

Other possible solutions:
- Add the override in cc_detect for riscv (or any "no-C" platform like wasm32 and nvptx)
- Install and use the appropriate c compiler. I tried this the `g++-riscv64-linux-gnu` package, but it failed missing some header file.

Closes #66232
Cargo.lock
src/librustc/Cargo.toml