Next: Multiple Targets Prev: Empty Targets Up: Rules
Special Built-in Target Names
Certain names have special meanings if they appear as targets.
The dependencies of the special target `.PHONY' are considered to
be phony targets. When it is time to consider such a target,
`make' will run its commands unconditionally, regardless of
whether a file with that name exists or what its last-modification
time is. Note: Phony Targets.
The dependencies of the special target `.SUFFIXES' are the list of
suffixes to be used in checking for suffix rules. *Note
Old-Fashioned Suffix Rules: Suffix Rules.
The commands specified for `.DEFAULT' are used for any target for
which no rules are found (either explicit rules or implicit rules).
Note: Last Resort. If `.DEFAULT' commands are specified, every
file mentioned as a dependency, but not as a target in a rule,
will have these commands executed on its behalf. Note: Implicit
Rule Search Algorithm.
The targets which `.PRECIOUS' depends on are given the following
special treatment: if `make' is killed or interrupted during the
execution of their commands, the target is not deleted. *Note
Interrupting or Killing `make': Interrupts. Also, if the target
is an intermediate file, it will not be deleted after it is no
longer needed, as is normally done. Note: Chains of Implicit
You can also list the target pattern of an implicit rule (such as
`%.o') as a dependency file of the special target `.PRECIOUS' to
preserve intermediate files created by rules whose target patterns
match that file's name.
Simply by being mentioned as a target, `.IGNORE' says to ignore
errors in execution of commands. The dependencies and commands for
`.IGNORE' are not meaningful.
`.IGNORE' exists for historical compatibility. Since `.IGNORE'
affects every command in the makefile, it is not very useful; we
recommend you use the more selective ways to ignore errors in
specific commands. Note: Errors in Commands.
Simply by being mentioned as a target, `.SILENT' says not to print
commands before executing them. The dependencies and commands for
`.SILENT' are not meaningful.
`.SILENT' exists for historical compatibility. We recommend you
use the more selective ways to silence specific commands. *Note
Command Echoing: Echoing. If you want to silence all commands for
a particular run of `make', use the `-s' or `--silent' option
(Note: Options Summary.).
Simply by being mentioned as a target, this tells `make' to export
all variables to child processes by default. Note: Communicating
Variables to a Sub-`make'.
Any defined implicit rule suffix also counts as a special target if
it appears as a target, and so does the concatenation of two suffixes,
such as `.c.o'. These targets are suffix rules, an obsolete way of
defining implicit rules (but a way still widely used). In principle,
any target name could be special in this way if you break it in two and
add both pieces to the suffix list. In practice, suffixes normally
begin with `.', so these special target names also begin with `.'.
Note: Old-Fashioned Suffix Rules.
automatically generated by info2www