Added macros from waitstatus.h
Added constants for X86_64
Added CC0 license
redo-bc is an implementation of the redo build system (designed by Daniel J. Bernstein) in betterC (variant without GC of D Programming Language). This work based on work redo-c by by Christian Neukirchen (from https://github.com/leahneukirchen/redo-c) and uses the original documentation from this project, almost unchanged.
Please refer to the documentation for redo in Python, or the tutorial by Jonathan de Boyne Pollard for usage instructions.
Without arguments, redo
behaves like redo all
.
.do
files always are executed in their directory, arguments are
relative paths.
Standard output of .do
files is only captured as build product if
redo -s
is used, or the environment variable REDO_STDOUT
is set to 1.
Else, standard output is simply displayed.
Non-executable .do
files are run with /bin/sh -e
.
redo -x
can be utilized to use /bin/sh -e -x
instead, for
debugging .do
files or verbose builds.
Executable .do
files are simply executed, and should have a shebang line.
When a target makes no output, no target file is created. The target is considered always out of date.
default.do
files are checked in all parent directories up to /
.
Parallel builds can be started with redo -j N
(or JOBS=N redo
),
this uses a job broker similar to but not compatible with GNU make.
To detect whether a file has changed, we first compare ctime
and
in case it differs, a SHA2 hash of the contents.
Dependencies are tracked in .dep.BASENAME
files all over the tree.
This is an implementation detail.
Builds can be started from every directory and should yield same results.
redo -f
will consider all targets outdated and force a rebuild.
redo -k
will keep going if a target failed to build.
Currently, is very experimental software and needed to be revised by you.
To the extent possible under law, Leah Neukirchen leah@vuxu.org has waived all copyright and related or neighboring rights to this work.
I, aquaratixc, continuing the work of this kind person, also waive copyright and related rights.