123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- use std::{env, process::Command, string::String};
- use wasm_builder_runner::{WasmBuilder, WasmBuilderSource};
- fn main() {
- if !in_real_cargo_environment() {
- env::set_var("BUILD_DUMMY_WASM_BINARY", "1");
- println!("Building DUMMY Wasm binary");
- }
- let file_name = "wasm_binary.rs";
- let wasm_builder_source = WasmBuilderSource::Crates("1.0.9");
-
-
- let default_rust_flags = "-Clink-arg=--export=__heap_base";
- WasmBuilder::new()
- .with_current_project()
- .with_wasm_builder_source(wasm_builder_source)
- .append_to_rust_flags(default_rust_flags)
- .set_file_name(file_name)
- .build()
- }
- fn in_real_cargo_environment() -> bool {
- let cargo =
- env::var("CARGO").expect("`CARGO` env variable is always set when executing `build.rs`.");
- let mut cmd = Command::new(cargo);
- cmd.arg("--version");
- let output = cmd.output().expect("failed to get cargo version");
- let version = String::from_utf8(output.stdout).unwrap();
- println!("{}", version);
-
-
- version.starts_with("cargo")
- }
|