Redo

Jul 20, 2023

Incremental build system

Daniel J. Bernstein’s redo idea is a system for building target files from source files. Its purpose is to provide a build system for software packages that does incremental builds, i.e. if the package is built and then some of its source files are changed, the build system will only rerun that part of the build procedure that is necessary to rebuild the changed parts of the package.

This is the redo implementation by Jonathan de Boyne Pollard written in C++. It comprises

  • redo - the main utility for rebuilding
  • redo-ifchange - a secondary utility for rebuilding targets if existing sources change
  • redo-ifcreate - a secondary utility for rebuilding targets if non-existent sources manifest
  • cubehash - a utility program that generates hashes of file contents using the same parameterization of Bernstein CubeHash as is used by the redo tools to check for changes to source and target files


Checkout these related ports:
  • Zziplib - Library to provide transparent read access to zipped files
  • Zydis - Fast and lightweight x86/x86-64 disassembler library
  • Zycore-c - Support library with platform independent types, macros, etc for Zydis
  • Zthread - Platform-independent object-oriented C++ threading library
  • Zookeeper - Coordination Service for Distributed Applications
  • Zls - Zig LSP implementation + Zig Language Server
  • Zfp - High throughput library for compressed floating-point arrays
  • Zeal - Offline documentation browser
  • Zapcc - C++ caching compiler based on clang
  • Zanata-platform - Web-based translation platform
  • Zanata-cli - Zanata Java command line client
  • Z88dk - Complete Z80/Z180 development kit
  • Z80ex - ZiLOG Z80 CPU emulator library
  • Z80asm - Assembler for the Z80 microprocessor
  • Z80-asm - Z80 assembly code assembler and disassembler