是否可以仅在发布模式下调用 build.rs ?

zxv*_*vaf 7 release rust rust-cargo

在 Rust 箱中,是否可以仅在发布模式下调用 build.rs?

可以在 Cargo.toml 中指定它:

[package]
build = "build.rs"
Run Code Online (Sandbox Code Playgroud)

问题是,对于开发来说,它延迟了编译板条箱源代码的开始。货运指南似乎没有提供这样的选项。

Inl*_*ine 4

您可以使用此构建脚本。CargoPROFILE环境变量传递给rustc调用,该变量可用于确定活动配置文件。

// build.rs
use std::env;

pub fn main() {
    if Ok("release".to_owned()) == env::var("PROFILE") {
        panic!("I'm only panicking in release mode")
    }
}

Run Code Online (Sandbox Code Playgroud)