Skip to content

Latest commit

 

History

History
66 lines (48 loc) · 2.76 KB

README.md

File metadata and controls

66 lines (48 loc) · 2.76 KB

bb: the awk build system

Your scientists were so preoccupied with whether they could, they didn’t stop to think if they should.

ABOUT

bb demonstrates a working build system written in GNU awk, to organize build steps for awk projects.

EXAMPLE

$ cd example

$ ./bb
bzz bzz

$ ./bb help
Usage: bb [<task> [<task> [<task> ...]]]

Tasks:

* all
* help
* test

CONFIGURATION

Tasks are implemented with awk functions.

Task trees are implemented with functions that call other functions.

That's it.

REQUIREMENTS

SEE ALSO

  • Inspiration from nobuild, a convention for C/C++ build systems
  • bashate, a shell script style linter
  • beltaloada, a guide to writing build systems for (POSIX) sh
  • dale builds D projects
  • Gradle, a build system for JVM projects
  • jelly, a JSON task runner
  • lake, a Lua task runner
  • Leiningen + lein-exec, a Clojure task runner
  • lichen, a sed task runner
  • Mage, a task runner for Go projects
  • mian, a task runner for (Chicken) Scheme Lisp
  • npm, Grunt, Node.js task runners
  • POSIX make, a task runner standard for C/C++ and various other software projects
  • Rake, a task runner for Ruby projects
  • Rebar3, a build system for Erlang projects
  • rez builds C/C++ projects
  • sbt, a build system for Scala projects
  • Shake, a task runner for Haskell projects
  • ShellCheck, a shell script linter with a rich collection of rules for promoting safer scripting
  • slick, a linter to enforce stricter, unextended POSIX sh syntax compliance
  • stank, a collection of POSIX-y shell script linters
  • tinyrick for Rust projects
  • yao, a task runner for Common LISP projects

🐝