redo
redo copied to clipboard
An elegant and minimalistic replacement for make, written in C.
Currently, mkdir() is called thousands of times because we call mkpath() unnecessarily. This is bad for performance.
There should be test cases checking $3, specifically for subdirectories, as this has been bugged before. Commit that fixed this bug: 0a9f087
`redo` saves hashes about everything it builds already in .redo/, so we might as well provide a `clean` command to save people from writing their own (often outdated) clean.do.
Using `rand()` for generating the magic numbers is bad because it only guarantees 2^15 different values. Possible solutions: - ship our own random number generator (needless complexity, existing implementations?) -...
- `redo` shouldn't abort if files in .redo/ have been corrupted if it can be avoided. Corrupted files should just be deleted. - Error messages should always print out readable...
`redo` should provide some mechanism to catch all output files of certain commands or "broken" compilers (like javac). A fork of apenwarr's redo has already implemented a interesting mechanic to...
``` redo-ifchange foo bar ``` should build foo and bar in parallel. Additionally, `redo` should support the jobserver protocol like apenwarr's implementation does.
This won't be trivial, as redo depends on a lot of POSIX features like the shell. But it's not impossible either.