Just a heads up,

I tampered around with redo-c. Find it at https://github.com/jorge-leon/redo-c

It:

- Captures stdout of do files in the target file.

- Does not create an empty target if $3 is empty. This allows for "phony" targets and protects against silly mistakes.

- Truncates targets explicitly if needed,

- Creates the temporary output file $3 with the same permissions of an existing target, or with 0644 - subject to the umask.

- Searches for |target.do| before |default.do| - also in parent directories.

- Is modified for compilation with dietlibc (you might want to revert this).

- Uses the shorter and faster SipHash-2-4-64 instead of sha256.

- Has dependency cycle detection.

- Writes its redo database into a per-directory .redo subdirectory.

Caution: I'm not (yet) proud of it and it has rough edges.

Best Regards,

  Georg

On 12/18/20 11:33, Sergey Matveev wrote:
*** Sergey Matveev [2020-12-17 21:44]:
Now there are pure C https://github.com/leahneukirchen/redo-c
And by the way, it is less than 1kLOC even with completely built-in
SHA256 implementation and no dependencies. Supporint all necessary
redo-ifchange/ifcreate/always commands, jobserver (parallel builds) and
supporting both pure-shell .do files and executable ones, that can be
written on any language.


Reply via email to