1 个不稳定版本
0.1.0 | 2020年3月20日 |
---|
#525 in 构建工具
9KB
143 代码行
whip-up
whip-up
是一个强类型的构建系统。 .whip
文件实际上是任意 Rust 代码*。
- = 除了编译器和目标结构体。它们是
whip-up
内部的部分。
示例
.whip 文件
let gpp = Compiler {
path: PathBuf::from("/usr/bin/g++"),
};
let example_program = Target {
name: "example_program",
compiler: gpp,
files: vec![
PathBuf::from("main.cpp"),
PathBuf::from("foo/bar.hpp")
]
};
example_program.build()
输出将被运行的 g++ 命令
/usr/bin/g++ -o example_project main.cpp foo/bar.hpp
用法
假设我们有以下文件夹结构和与上面示例相同的 .whip 文件。
projects/
|
└─── examples/
|
└─── foo/
| └─── bar.hpp
|
| example.whip
└─── main.cpp
从 projects
文件夹运行 whip-up examples/
将会在 examples 文件夹中构建一个二进制文件
projects/
|
└─── examples/
|
└─── foo/
| └─── bar.hpp
|
| example.whip
| example_program
└─── main.cpp
关于
我在 COVID-19 大流行期间开始这个项目。我在家里无聊,决定做些有意义的事情。
目前这个项目非常基础且相当粗糙。不言而喻,不建议在生产环境中使用 whip-up
。
依赖项
~2MB
~42K SLoC