1 个不稳定版本
0.2.0 | 2024年4月15日 |
---|
#362 在 构建工具
在 cargo-ninja 中使用
41KB
1K SLoC
忍者文件
这是一个 Rust 模块集合,用于帮助构建 .ninja 文件。这允许您使用 Rust 生成 ninja 构建文件,比仅使用 cargo 提供更多功能。
https://ninja-build.org/manual.html
它也足够通用,适用于所有项目类型,而不仅仅是 Rust。它允许 Rust 作为 ninja 构建系统的 '元构建' 系统。
项目结构
项目结构为一个单仓库,包含一个元包,该包包含可以启用功能的常用项目。
data - 是核心数据类型和创建文件的构建器;cookie - 是使用 cookie-factory crate 编写的文件写入器。
lib 中的其他文件夹包含各种 '模块',这些模块将被发布为 crate。您可以根据需要选择这些模块,以便只引入所需的内容。
贡献
鼓励为人们提供额外的 '模块'。希望许多有用的模块将合并到这个仓库中,这样每个人都能从中受益。
仍然可以在自己的名字下发布自己的包。
示例
util/configure 是一个真实世界的示例,它为该项目生成 build.ninja 文件。要初始 seed
文件,请在根目录下运行 ./configure 以生成 ninja 文件。
ninja 的一个很棒的功能是,它可以配置 build.ninja 文件依赖于 util/configure 项目,因此如果配置项目更新,它将自动重新生成。
依赖项
~290–425KB