9 个不稳定版本
0.5.4 | 2021年4月6日 |
---|---|
0.5.3 | 2020年7月14日 |
0.5.2 | 2020年1月9日 |
0.5.1 | 2019年5月22日 |
0.2.0 | 2017年7月18日 |
#306 in 构建工具
91 每月下载次数
760KB
4K SLoC
Fac
Fac 是一个受 make 启发的通用构建系统,它使用 ptrace 确保所有依赖关系都被列举出来,并将所有源文件添加到(git)仓库中。Fac 的重要特性是它自动处理依赖关系,而不是抱怨它们或给出错误的构建。目前,Fac 仅在 Linux 系统上运行,但在这些系统上使用它非常简单!
-
Fac 以一种独立于编程语言的方式自动跟踪构建依赖关系。您只需要为每个规则指定最小依赖关系,Fac 会为您计算其余部分。如果您未指定依赖关系,Fac 在尝试足够多次后仍应能够成功构建,前提是您的构建规则在缺少依赖关系时失败(而不仅仅是产生错误的输出)。一旦 Fac 成功构建了您的项目,它就知道了每个命令的依赖关系,该源树后续的构建将等同于您已指定所有依赖关系和所有输出。
-
Fac 支持并行构建。
-
您必须用自己的语言编写配置。(或者相反,您不必强制使用我选择的任何语言,更不用说我自己开发的定制语言了。)
-
与 git 集成,以确保您不会忘记为构建添加所需文件。
要了解更多关于 Fac 的信息,包括基准测试和完整文档,请访问 Fac 网页:
http://physics.oregonstate.edu/~roundyd/fac
构建和安装
要构建 Fac(假设您已克隆 Fac,并且没有旧的 Fac 版本),只需运行
cargo build
这应在已安装 rust 的 x86-64 Linux 系统上构建 Fac。您可能可以使用 build-freebsd.sh 在 freebsd 上构建(但很可能已经过时)。然后,您可以运行以下命令来构建优化版本:
target/debug/fac fac
要使用 Fac,您可以复制 Fac 可执行文件到您的路径中的某个位置。
构建依赖项和详细信息
您需要安装 Rust。此外,fac 需要同时安装 python2
和 python3
(需要修复),构建 fac 文档(默认构建目标)需要 sass
和 python-markdown
。
有关构建 fac 的更多详细信息,请参阅 构建 fac 的网页,该网页也位于 fac 仓库中,路径为 web/building.md
。
许可证
Fac 是免费软件,并且根据 GNU 通用公共许可证(版本 2 或更高版本)授权。
依赖项
~5–13MB
~149K SLoC