1 个稳定版本

1.1.0 2022年8月31日
1.0.2 2022年8月28日

#98#build-system

EUPL-1.2

37KB
631

Monolilith

单仓库构建系统

安装

Cargo

cargo install monolilith

RUSTFLAGS="-C target-cpu=native" cargo install monolilith

Kagero

工作进度中。

源代码

  1. 克隆仓库:git clone https://github.com/Zeneyra-Linux/Monolilith.git
  2. 进入目录:cd Monolilith
  3. 安装或构建应用程序:cargo install --path .cargo build --release

可选地,您可以在上述命令之前添加 RUSTFLAGS="-C target-cpu=native" 以优化应用程序以匹配您的CPU。

用法

项目结构

您需要一个 monolilith.json 文件。它包含一个映射,其中键是应用程序文件夹的相对路径,值是 项目类型
示例

{
    "true": "zigcc",
    "false": "zigc++",
    "fetch": "zigfast",
    "my-app": "cargo-zigbuild",
    "other-apps/server-app": "cargo",
    "other-apps/client-app": "clang",
    "gnuapp": "gcc"
}

您可以使用 monolilith init 创建一个空文件。子项目文件夹也应与项目名称和生成的二进制文件匹配。

添加和删除

使用 monolilith add <项目路径> <项目类型> 添加新项目或 monolilith remove <项目路径>
注意,项目路径必须格式化如上所示。

构建

只需运行 monolilith,它将构建所有项目并将结果放入 build/

许可

Monolilith 目前根据德国法律在 EUPL-1.2 许可下进行许可,因为我住在德国,但它将很快根据 Zeneyra 公共许可证 1.0 版本及默认条件进行重新许可。

依赖项

~1.7–2.9MB
~83K SLoC