Make is a clever tool for expressing dependencies between files and it is widely used for building software. But it has some limitations. It only knows about files. It has limited ways to write rules. And for a tool whose main job is running shell commands, there are several gotchas when you actually write shell commands.

Goals is an experimental tool which aims to generalize make beyond these limitations.

Getting started

Please see the README, the manual for the goals command line tool, and the tutorial and reference guide for writing Goalfiles.

Source code

For source tarballs, see this directory. The upstream git repo is:

git clone git://git.annexia.org/git/goals.git

The license is the GNU General Public License, version 2 or any later version (GPLv2+).

rjones AT redhat DOT com