f7ba502005
This commit implements builtins.currentSystem, by capturing the cargo environment variable `TARGET` and exposing it to rustc as `TVIX_CURRENT_SYSTEM` so it can be inserted into the source code using `env!()`. The resulting value needs to be massaged a bit, since it is an "LLVM triple". The current code should work for all the platforms for which cppnix works (thanks qyliss for generating the list!). It does *not* reject all of the triples that cppnix's configure.ac rejects -- it is much more forgiving. We can tighten this up in a future commit. Signed-off-by: Adam Joseph <adam@westernsemico.com> Change-Id: I947f504b2af5a7fee8cf0cb301421d2fc9174ce1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/6986 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
9 lines
187 B
Rust
9 lines
187 B
Rust
use std::env;
|
|
|
|
fn main() {
|
|
println!(
|
|
"cargo:rustc-env=TVIX_CURRENT_SYSTEM={}",
|
|
&env::var("TARGET").unwrap()
|
|
);
|
|
println!("cargo:rerun-if-changed-env=TARGET")
|
|
}
|