Skip to content

Commit

Permalink
Move proc-macro-srv RUSTC_VERSION fetching from include to env var
Browse files Browse the repository at this point in the history
  • Loading branch information
Veykril committed Jun 30, 2024
1 parent 21a3d01 commit 23b043a
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 16 deletions.
16 changes: 2 additions & 14 deletions crates/proc-macro-srv/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,24 +4,12 @@
use std::{env, fs::File, io::Write, path::PathBuf, process::Command};

fn main() {
println!("cargo:rustc-check-cfg=cfg(rust_analyzer)");

let mut path = PathBuf::from(env::var_os("OUT_DIR").unwrap());
path.push("rustc_version.rs");
let mut f = File::create(&path).unwrap();
println!("cargo::rustc-check-cfg=cfg(rust_analyzer)");

let rustc = env::var("RUSTC").expect("proc-macro-srv's build script expects RUSTC to be set");
let output = Command::new(rustc).arg("--version").output().expect("rustc --version must run");
let version_string = std::str::from_utf8(&output.stdout[..])
.expect("rustc --version output must be UTF-8")
.trim();

write!(
f,
"
#[allow(dead_code)]
pub(crate) const RUSTC_VERSION_STRING: &str = {version_string:?};
"
)
.unwrap();
println!("cargo::rustc-env=RUSTC_VERSION={}", version_string);
}
3 changes: 1 addition & 2 deletions crates/proc-macro-srv/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,7 @@ use span::Span;

use crate::server::TokenStream;

// see `build.rs`
include!(concat!(env!("OUT_DIR"), "/rustc_version.rs"));
pub const RUSTC_VERSION_STRING: &str = env!("RUSTC_VERSION");

trait ProcMacroSrvSpan: Copy {
type Server: proc_macro::bridge::server::Server<TokenStream = TokenStream<Self>>;
Expand Down

0 comments on commit 23b043a

Please sign in to comment.