构建用于构建 C++ 或执行任意操作的脚本

有些 crate 使用 cc crate 来构建和关联 C/C++ 库。其他 crate 会在其构建脚本中使用 bindgen 解析 C/C++。Chromium 环境中不支持进行这些操作,因为我们的 gn、ninja 和 LLVM 构建系统在表达构建操作之间的关系方面具有非常严格具体的要求。

因此,您可以选择:

  • 避开这些 crate
  • 对 crate 应用补丁。

补丁应保存在 third_party/rust/chromium_crates_io/patches/<crate> 中,请参阅 面向 cxx crate 的补丁 中的示例。每当 gnrt 升级该 crate 时,将会自动应用补丁文件。