Objectives:
Program structure:
graph -> makefile rules:
target(s): dependencies/prerequisites
<TAB>command(s)
explicit rules, 2 passes, updates old targets only
variables
Implicit rules (old style)
Shortcuts: |
$@ - Full name of the current target $? - List of out-of-date files for the current dependency $< - The source file of the current (single) dependency |
Implicit rules (new style)
Phony targets:
Other features:
The command:
make <options> <target>
Options: | -f makefile -j jobs -d -n |
Documentation:
Manual: http://www.gnu.org/software/make/manual/make.html
Tutorials:
Alternatives: ANT, jam
Automated building of makefiles: autoconf
Makefile.in configure.in |
configure |
Automated dependencies: makedepend