当 include_bytes 宏包含的文件发生更改时,我如何告诉 Cargo 重建?

How can I tell Cargo to rebuild when a file included with the include_bytes macro is changed?

我正在使用 include_bytes! 宏将 GLSL 着色器编译成 Rust 程序。然而,Cargo 似乎并没有意识到这一点:当我仅修改着色器文件并使用 cargo run 对其进行测试时,更新的文件未被编译。手动触摸包含着色器的 .rs 文件确实有效。

我是否需要在 Cargo.toml 中添加一些内容来明确说明这种依赖关系?

版本信息:

$ rustc --version && cargo --version
rustc 1.0.0-nightly (ecf8c64e1 2015-03-21) (built 2015-03-22)
cargo 0.0.1-pre-nightly (e689383 2015-03-16) (built 2015-03-16)

Cargo 目前无法将文件添加到 'watched' 文件列表中以进行更改。它不会知道 include_bytes! 中包含的文件,因为这将涉及专门对该宏进行特殊封装。

这已在 rustc 中修复:https://github.com/rust-lang/rust/pull/24423