COOK is a software build-automation tool made with a goal of letting you, the programmer, to utilize the most elegant and powerful programming language - Common Lisp - for managing your software builds. You write a recipe file which describes what objectives must be constructed. COOK will load and process this file, then produce either a regular Makefile or a Bourne Shell script, which will actually perform the task of building and installing your targets.

Features

  • NOT WRITTEN IN R[etard]UST; DOES NOT IMPOSE ANY CODE OF SIMPING OR PROMOTE WOKE NONSENSE
  • Supported operating systems: FreeBSD, Haiku, Linux
  • Supported implementations: ECL, MKCL, SBCL, CMUCL
  • Supported programming languages: Assembly, C, C#, C++, Common Lisp, Java, Lua, Objective-C, Objective-C++, Object Pascal, Pascal, Scheme, Smalltalk, Squirrel
  • Supported compilers/interpreters: AVRA, Chicken, Clang, FPC, GNU GCC, GNU Guile, GNU Smalltalk, Lua, Mono, NASM, OpenJDK, Squirrel
  • Can build packages: FreeBSD (*.pkg), Pacman (*.pkg.tar.zst), XBPS (*.xbps), Debian (*.deb), RedHat (*.rpm), Haiku (*.hpkg)
  • Can handle nested Java classes (files with $ in their names) and build JAR packages
  • Supports AVR and STM: the 'make install' command uploads firmware using 'avrdude' or 'st-flash'
  • Can build GNU Smalltalk images and packages
  • Includes 'numbtalk' -- a freezer, which can create self-contained executables from GNU Smalltalk's images
  • Includes 'hermit' -- AppImage-like tool for creating standalone applications
  • Provides gettext-like tools for NLS: 'extract-strings' and 'update-strings'
  • Includes 'burnfuse' -- utility for programming ATmega's fuses

Project Activity

See All Activity >