If you want to hack on dno, feel free. The
dno
executable is a self-executing Makefile
and aims to be well commented.
The various helper tools (see the man page appendices) are all shell and awk scripts, and again should be either well-enough documented, or simple enough that they are relatively easy to work on.
To get started with hacking on dno
you should
familiarise yourself with its debug variables which provide
various degrees of feedback:
VERBOSE
;
REPORT
;
DEBUG
;
SHOW_RULES
.
The real key to understanding dno, is the
ALL_BUILD_RULES
macro. When you understand
how this is used, along with the way that make restarts when
dependency files (included makefiles) are updated, then you will
get dno.
Once you have pulled, cloned or forked dno, you only need to
run ./configure
once. After that, you can
just run make
and make will figure out when
aclocal
, autoconf
and
./configure
need to be run.
make
cannot figure this out for itself in a
freshly cloned/pulled directory as file timestamps are not
preserved (as far as I can tell - MM) by
git
.