diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 12:41:41 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 12:41:41 +0000 |
commit | 10ee2acdd26a7f1298c6f6d6b7af9b469fe29b87 (patch) | |
tree | bdffd5d80c26cf4a7a518281a204be1ace85b4c1 /vendor/wasm-bindgen-shared/build.rs | |
parent | Releasing progress-linux version 1.70.0+dfsg1-9~progress7.99u1. (diff) | |
download | rustc-10ee2acdd26a7f1298c6f6d6b7af9b469fe29b87.tar.xz rustc-10ee2acdd26a7f1298c6f6d6b7af9b469fe29b87.zip |
Merging upstream version 1.70.0+dfsg2.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/wasm-bindgen-shared/build.rs')
-rw-r--r-- | vendor/wasm-bindgen-shared/build.rs | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/vendor/wasm-bindgen-shared/build.rs b/vendor/wasm-bindgen-shared/build.rs new file mode 100644 index 000000000..8e6ea1b03 --- /dev/null +++ b/vendor/wasm-bindgen-shared/build.rs @@ -0,0 +1,35 @@ +use std::collections::hash_map::DefaultHasher; +use std::env; +use std::hash::Hasher; +use std::path::PathBuf; +use std::process::Command; + +fn main() { + set_schema_version_env_var(); + + let rev = Command::new("git") + .arg("rev-parse") + .arg("HEAD") + .output() + .ok() + .map(|s| s.stdout) + .and_then(|s| String::from_utf8(s).ok()); + if let Some(rev) = rev { + if rev.len() >= 9 { + println!("cargo:rustc-env=WBG_VERSION={}", &rev[..9]); + } + } +} + +fn set_schema_version_env_var() { + let cargo_manifest_dir = env::var("CARGO_MANIFEST_DIR").expect( + "The `CARGO_MANIFEST_DIR` environment variable is needed to locate the schema file", + ); + let schema_file = PathBuf::from(cargo_manifest_dir).join("src/lib.rs"); + let schema_file = std::fs::read(schema_file).unwrap(); + + let mut hasher = DefaultHasher::new(); + hasher.write(&schema_file); + + println!("cargo:rustc-env=SCHEMA_FILE_HASH={}", hasher.finish()); +} |