1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#[macro_export]
macro_rules! target_path {
    ($name: expr) => {
        &std::path::PathBuf::from(env!("CARGO_TARGET_TMPDIR"))
            .join("firmware")
            .join($name)
            .to_string_lossy()
            .to_string()
    };
}

#[macro_export]
macro_rules! vcd_path {
    ($name: expr) => {{
        let env = option_env!("CARGO_TARGET_TMPDIR").unwrap_or(env!("CARGO_MANIFEST_DIR"));
        let dest = &std::path::PathBuf::from(env).join("sims");
        let _ = std::fs::create_dir(dest);
        dest.join($name).to_string_lossy().to_string()
    }};
}