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.