zbuild/README.md
Filipe Rodrigues 375015c64f
Replaced YAML ast with custom parser.
This should be several commits due to changing how aliases and patterns are implemented, but back-porting these changes to the yaml ast to just throw it away is wasteful, so it's done all at once.
We will also be simplified a large part of the codebase in the near time, so many of these changes are patchwork to make things work.
Due to this, the guide also needs to be rewritten from scratch, and so was currently removed and will be added again eventually.
2025-01-30 01:58:29 +00:00

1.3 KiB

Zbuild

zbuild is a modern makefile-like build automation tool.

Guide

Zbuild uses a file to specify all rules. It will look for for the nearest zbuild.zb file in the current or parent directories.

Examples

See the examples/ directory for examples.

In particular the examples/simple_c/zbuild.zb is a fully documented example that helps you understand how zbuild works.

Watching

Zbuild can "watch" your build, re-running rules whenever files are updated. This can be activated with the --watch flag. See zbuild --help for more details.

Installation

You may download the latest release from the releases page.

On arch-based systems, you can install it using the PKGBUILD included in this repo.

You may also compile it yourself, with a nightly rust compiled (>= rustc 1.68.0-nightly (9c07efe84 2022-12-16), may work with older) and install it by:

  1. Clone the repo

    git clone https://github.com/Zenithsiz/zbuild

  2. Build + install

    cargo install --path zbuild

License

This project is dual-licensed under either of

Contribution

Feel free to open any issues with any bugs, opinions or suggestions you have on the project.