首页 > 解决方案 > 如何根据当前 Cargo 命令更改 build.rs 行为?

问题描述

我的 build.rs 很复杂,因为我在实际编译当前项目之前使用它来生成测试并运行其他一些二进制文件。这些测试依赖于这些其他二进制文件自动生成的代码。这些二进制文件可以动态更改,从而更改自动生成的代码文件,因此我不想静态编写这些测试。然而,这最终会花费大量时间。

当我想运行时这没问题cargo test,但是当我正在运行cargo build && cargo run或者cargo bench不需要这些生成的测试时,由 build.rs 导致的长时间构建变得非常烦人。

有没有办法指定我只希望 build.rs 在使用时执行cargo test?build.rs 中有什么方法可以检测正在运行的 Cargo 命令吗?

标签: buildrustrust-cargo

解决方案


推荐阅读