Додавання крейтів третіх сторін
Бібліотеки Rust називаються “крейтами” і знаходяться на crates.io. Для крейтів Rust дуже легко залежати один від одного. Так вони і роблять!
Власивість | Бібліотека C++ | Крейт Rust |
---|---|---|
Система збірки | Багато | Послідовна: Cargo.toml |
Типовий розмір бібліотеки | Великий | Маленький |
Транзитивні залежності | Небагато | Багато |
Для інженера Chromium це має плюси та мінуси:
- Всі крейти використовують спільну систему збірки, тому ми можемо автоматизувати їхнє включення до Chromium …
- … але, як правило, крейти мають транзитивні залежності, тому вам, ймовірно, доведеться залучити декілька бібліотек.
Ми обговоримо:
- Як розмістити крейт у дереві вхідного коду Chromium
- Як зробити так, щоб
gn
будував правила для нього - Як провести аудит його вхідного коду на предмет достатньої безпеки.