Export CARGO
for proc. macros
This commit is contained in:
parent
6a6a80eb1f
commit
481a74eda7
@ -175,7 +175,7 @@ fn is_dylib(path: &Path) -> bool {
|
|||||||
/// Should be synced with <https://doc.rust-lang.org/cargo/reference/environment-variables.html#environment-variables-cargo-sets-for-crates>
|
/// Should be synced with <https://doc.rust-lang.org/cargo/reference/environment-variables.html#environment-variables-cargo-sets-for-crates>
|
||||||
fn inject_cargo_env(package: &cargo_metadata::Package, env: &mut Vec<(String, String)>) {
|
fn inject_cargo_env(package: &cargo_metadata::Package, env: &mut Vec<(String, String)>) {
|
||||||
// FIXME: Missing variables:
|
// FIXME: Missing variables:
|
||||||
// CARGO, CARGO_PKG_HOMEPAGE, CARGO_CRATE_NAME, CARGO_BIN_NAME, CARGO_BIN_EXE_<name>
|
// CARGO_PKG_HOMEPAGE, CARGO_CRATE_NAME, CARGO_BIN_NAME, CARGO_BIN_EXE_<name>
|
||||||
|
|
||||||
let mut manifest_dir = package.manifest_path.clone();
|
let mut manifest_dir = package.manifest_path.clone();
|
||||||
manifest_dir.pop();
|
manifest_dir.pop();
|
||||||
@ -183,6 +183,9 @@ fn inject_cargo_env(package: &cargo_metadata::Package, env: &mut Vec<(String, St
|
|||||||
env.push(("CARGO_MANIFEST_DIR".into(), cargo_manifest_dir.into()));
|
env.push(("CARGO_MANIFEST_DIR".into(), cargo_manifest_dir.into()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Not always right, but works for common cases.
|
||||||
|
env.push(("CARGO".into(), "cargo".into()));
|
||||||
|
|
||||||
env.push(("CARGO_PKG_VERSION".into(), package.version.to_string()));
|
env.push(("CARGO_PKG_VERSION".into(), package.version.to_string()));
|
||||||
env.push(("CARGO_PKG_VERSION_MAJOR".into(), package.version.major.to_string()));
|
env.push(("CARGO_PKG_VERSION_MAJOR".into(), package.version.major.to_string()));
|
||||||
env.push(("CARGO_PKG_VERSION_MINOR".into(), package.version.minor.to_string()));
|
env.push(("CARGO_PKG_VERSION_MINOR".into(), package.version.minor.to_string()));
|
||||||
|
Loading…
Reference in New Issue
Block a user