@unnumberedsubsec Recording dependencies manually
Usually people are happy enough with @code{BUILT_SOURCES} because they
-never run rules such as @code{make foo} before @code{make all}, as in
-the previous example. However if this matters to you, you can avoid
-@code{BUILT_SOURCES} and record such dependencies explicitly in the
-@file{Makefile.am}.
+never build targets such as @code{make foo} before @code{make all}, as
+in the previous example. However if this matters to you, you can
+avoid @code{BUILT_SOURCES} and record such dependencies explicitly in
+the @file{Makefile.am}.
@example
bin_PROGRAMS = foo
@cindex Rule, noinstall-info
@cindex Target, install-info
@cindex Target, noinstall-info
-@cindex install-info rule
-@cindex noinstall-info rule
+@cindex install-info target
+@cindex noinstall-info target
@opindex no-installinfo
@trindex install-info
@cindex Rule, noinstall-man
@cindex Target, install-man
@cindex Target, noinstall-man
-@cindex install-man rule
-@cindex noinstall-man rule
+@cindex install-man target
+@cindex noinstall-man target
@c Use @samp{make install} per documentation: (texi)code.
By default, man pages are installed by @samp{make install}. However,
@section Install Tests
-The @code{installcheck} rule is available to the user as a way to run
-any tests after the package has been installed. You can add tests to
-this by writing an @code{installcheck-local} rule.
+The @code{installcheck} target is available to the user as a way to
+run any tests after the package has been installed. You can add tests
+to this by writing an @code{installcheck-local} rule.
@node Options
@item @code{no-dist}
@cindex Option, no-dist
-Don't emit any code related to @code{dist} rule. This is useful
+Don't emit any code related to @code{dist} target. This is useful
when a package has its own method for making distributions.
@item @code{no-dist-gzip}
@cindex Option, no-installinfo
The generated @file{Makefile.in} will not cause info pages to be built
or installed by default. However, @code{info} and @code{install-info}
-rules will still be available. This option is disallowed at
+targets will still be available. This option is disallowed at
@samp{GNU} strictness and above.
@trindex info
@trindex install-info
@item @code{no-installman}
@cindex Option, no-installman
The generated @file{Makefile.in} will not cause man pages to be
-installed by default. However, an @code{install-man} rule will still
+installed by default. However, an @code{install-man} target will still
be available for optional installation. This option is disallowed at
@samp{GNU} strictness and above.
@trindex install-man
@trindex tags
At the topmost directory of a multi-directory package, a @code{tags}
-file will be generated which, when run, will generate a
-@file{TAGS} file that includes by reference all @file{TAGS} files from
-subdirectories.
+rule will be output which, when run, will generate a @file{TAGS} file
+that includes by reference all @file{TAGS} files from subdirectories.
-The @code{tags} file will also be generated if the variable
+The @code{tags} rule will also be generated if the variable
@code{ETAGS_ARGS} is defined. This variable is intended for use in
directories which contain taggable source that @code{etags} does not
understand. The user can use the @code{ETAGSFLAGS} to pass additional
-flags to @code{etags}; @code{AM_ETAGSFLAGS} is also available for use in
-@file{Makefile.am}.
+flags to @code{etags}; @code{AM_ETAGSFLAGS} is also available for use
+in @file{Makefile.am}.
@vindex ETAGS_ARGS
@vindex ETAGSFLAGS
@vindex AM_ETAGSFLAGS
required.
@item
-The @code{check} rule doesn't depend on @code{all}.
+The @code{check} target doesn't depend on @code{all}.
@end itemize
GNU maintainers are advised to use @samp{gnu} strictness in preference
@heading What is in the API
Automake's programming interface is not easy to define. Basically it
-should include at least all @strong{documented} variables and rules
+should include at least all @strong{documented} variables and targets
that a @samp{Makefile.am} author can use, any behavior associated with
them (e.g. the places where @samp{-hook}'s are run), the command line
interface of @samp{automake} and @samp{aclocal}, @dots{}
@subsubheading Generated files out of CVS
One way to get CVS and @code{make} working peacefully is to never
-store generated files in CVS, i.e., do not CVS-control files which are
-@code{Makefile} rules (or @emph{derived} files in Make terminology).
+store generated files in CVS, i.e., do not CVS-controled files which
+are @code{Makefile} targets (also called @emph{derived} files).
This way developers are not annoyed by changes to generated files. It
does not matter if they all have different versions (assuming they are