Tiny Core Linux

Off-Topic => Off-Topic - Tiny Tux's Corner => Topic started by: jazzbiker on February 07, 2021, 03:27:05 PM

Title: "redo" build system - the big surprise
Post by: jazzbiker on February 07, 2021, 03:27:05 PM
Hi, Core people!

Do You want to learn one more build system? I'm sure You don't. The trick with "redo" is, that if You are able to write shell scripts, You are ready to use it immediately. Probably most of You having an experience of building make-based projects having nested structure have learned on Your own, that if Your build was interrupted due to some obstacles (missing package, wrong config) in order to finalize the build successfully You very probably need to "make clean". That's because make was not designed for recursive use. In contrast, redo is recursive by design.

The origin point of this build system is http://cr.yp.to/redo.html

Successful implementations are:
https://github.com/apenwarr/redo - Python
http://www.goredo.cypherpunks.ru/ - Go
http://news.dieweltistgarnichtso.net/bin/redo-sh.html - Bourne shell
https://github.com/leahneukirchen/redo-c - pure C

Nice decription at http://web.archive.org/web/20201231033027/http://jdebp.eu/FGA/introduction-to-redo.html

All these implementations hare the same standard, internals are implementation specific.

I'm using C variant now, extension is 8 kB size ( :) ). I think it is totally following TinyCore philosophy.

P.S. If You will build redo-c on 32-bit system, don't neglect the conversion warning during build - it is not harmless, it causes wrong timestamps. Use explicit type conversion.
Title: Re: "redo" build system - the big surprise
Post by: nick65go on November 13, 2021, 05:50:23 AM
I found another tool to cut useless make runs (used also in KolibriOS builder), http://gittup.org/tup/