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.
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:
-
Clone the repo
git clone https://github.com/Zenithsiz/zbuild -
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.