Originally developed for NetHack 4, aimake is a build system designed to enable compilation of C programs without a need for time-consuming configuration. To this end, it attempts to determine things like dependencies and the exact paths of header files automatically. aimake is a single file (a Perl script) licensed under the GNU GPL, that therefore can be shipped with your project and allow users to compile your program with no further build system depenencies but Perl and a C toolchain.
Typical usage is as follows:
mkdir build cd build ../aimake -i ~/install_dir # or wherever you want
aimake is still a work in progress; in particular, some features might be unimplemented or not work yet. (In particular, it currently needs manual configuration to be able to install the files it compiles.)
Resources you might be interested in:
aimake's source repository is available via darcs:
darcs clone http://nethack4.org/media/aimake3
You can also download aimake's source code or test suite directly.
aimake's documentation is available online (including a longer explanation of why you may find aimake useful); this documentation can also be viewed using aimake --documentation.