`cargo test -p c2rust-analyze` fails CI due to no `FileCheck`
On Ubuntu 18 and Debian 10, FileCheck is not installed by default with llvm, so cargo test -p c2rust-analyze fails.
We can either upgrade llvm versions on those distros (and stop supporting LLVM 6) or just install llvm-${major}.${minor}-tools on those old distros, which installs FileCheck. I think the latter is preferable as otherwise, we have to fix the provision_deb.sh script to sometimes install llvm and sometimes llvm-${version}. Furthermore, installing llvm-${major}-tools on newer distros is probably smarter to ensure FileCheck is always there.
The other problem is that c2rust-analyze/tests/filecheck.rs looks for FileCheck independently, and doesn't currently work for FileCheck-6.0. Instead, we should match the llvm-config resolution in c2rust-ast-exporter/build.rs and then use $(llvm-config --bindir)/FileCheck, which is more reliable and always matches in behavior.
To do this, I want to move find_llvm_config to rustc-private-link or build-utils (whatever it's renamed to in https://github.com/immunant/c2rust/pull/591).
Blocked on:
- #641
- #618