While make is a single executable file,
amake has several parts:
amake replaces make as the executable file.
amake preloads a shared-library named libaccess.
amake executes a customizable script, for each
target, named amake-collect.
amake tries to get
targets from, and put targets in, the target-cache
subsystem. This subsystem has three parts: the
target-cache-daemon (tcd), the SQL-database daemon
(sqld), and the target-cache filesystem.
You will need to be able to execute amake and
amake-collect, and preload libaccess. This can
be accomplished in several ways, but the easiest way is to
assign appropriate values to the environment variables
PATH and LD_LIBRARY_PATH.
In addition, if the target cache is enabled, the target-cache subsystem is assumed to be active.
Once you can execute amake, you can enable its
features by adding lines to your makefile.
First, add two variable definitions:
SHELL:=/bin/bash
ACCESS_ENABLE:=1
Assigning a value to SHELL, other than
/bin/sh, causes make to execute commands in a
subshell, which allows libaccess to be
preloaded. Assigning a value to ACCESS_ENABLE enables
automatic dependency analysis.
Then, add an sinclude directive:
sinclude *.dep
Including the generated dependency files causes make
to use the previously detected dependencies.