添加第三方 Crate
Rust 库被称为 crate
,可在 crates.io 中找到。Rust 的 crate 之间非常容易相互依赖。事实证明,他们确实如此!
属性 | C++ library | Rust crate |
---|---|---|
Build system | 很多 | 保持一致:Cargo.toml |
典型库的大小 | 大 | 小 |
传递依赖项 | 很少 | 很多 |
对于 Chromium 工程师来说,这种依赖关系具有以下利弊:
- 所有 crate 都使用共同的构建系统,这样我们就可以自动将其收录到 Chromium 中…
- …但是,crate 通常具有传递依赖项,因此可能需要引入多个库。
我们将讨论以下内容:
- 如何将 crate 添加到 Chromium 源代码树中
- 如何为其制定
gn
构建规则 - 如何审核其源代码以确保足够的安全性。