Lines Matching full:prerequisite
132 * Combine By Prerequisite:: Another Style of Makefile
153 * Prerequisite Types:: There are two types of prerequisites.
183 to every prerequisite.
493 * Combine By Prerequisite:: Another Style of Makefile
523 A @dfn{prerequisite} is a file that is used as input to create the
616 In fact, each @samp{.o} file is both a target and a prerequisite.
639 do not want to carry out the actions in this rule, @samp{clean} is not a prerequisite of any other rule.
641 it specifically. Note that this rule not only is not a prerequisite, it
794 @node make Deduces, Combine By Prerequisite, Variables Simplify, Introduction
846 @node Combine By Prerequisite, Cleanup, make Deduces, Introduction
848 @cindex combining rules by prerequisite
870 Here @file{defs.h} is given as a prerequisite of all the object files;
878 @node Cleanup, , Combine By Prerequisite, Introduction
922 Since @code{clean} is not a prerequisite of @code{edit}, this rule will not
1371 Supports secondary expansion of prerequisite lists.
1374 Supports order-only prerequisites. @xref{Prerequisite Types, ,Types
1512 prerequisite @file{force}, to guarantee that the commands will be run even
1516 @file{force} itself and create a prerequisite loop!
1588 @cindex prerequisite, expansion
1600 That is, the target and prerequisite sections are expanded immediately,
1603 static pattern rules, and simple prerequisite definitions.
1617 @code{.SECONDEXPANSION} must be defined before the first prerequisite
1665 Here the prerequisite of @file{onefile} will be expanded immediately,
1666 and resolve to the value @file{top}, while the prerequisite of
1726 @code{$$<} variable evaluates to the first prerequisite in the first
1742 In the first prerequisite list, all three variables (@code{$$<},
1802 The prerequisite list after the secondary expansion and directory
1812 @cindex prerequisite
1839 * Prerequisite Types:: There are two types of prerequisites.
1891 @node Rule Syntax, Prerequisite Types, Rule Example, Rules
1937 prerequisite you must write two of them, @samp{$$} (@pxref{Using
1966 @node Prerequisite Types, Wildcards, Rule Syntax, Rules
1969 @cindex prerequisite types
1979 prerequisite makes two statements: first, it imposes an order of
1983 relationship: if any prerequisite is newer than the target, then the
1986 Normally, this is exactly what you want: if a target's prerequisite is
2004 prerequisite, the normal
2005 prerequisite takes precedence (since they are a strict superset of the
2006 behavior of an order-only prerequisite).
2008 @node Wildcards, Directory Search, Prerequisite Types, Rules
2096 prerequisite or command, wildcard expansion will take place at that time.
2129 @samp{.o} file becomes a prerequisite of @file{foo} and will be recompiled if
2233 automatically to find a prerequisite. When you redistribute the files
2239 to every prerequisite.
2255 directories are expected to contain prerequisite files that are not in the
2259 Thus, if a file that is listed as a target or prerequisite does not exist
2262 them, that file may become the prerequisite (see below). Rules may then
2263 specify the names of files in the prerequisite list as if they all
2332 string must match the file name of a prerequisite that is being searched
2337 prerequisite exactly, which is not useful very often.)
2351 When a prerequisite fails to exist in the current directory, if the
2353 prerequisite file, then the @var{directories} in that directive are searched
2363 tells @code{make} to look for any prerequisite whose name ends in @file{.h}
2367 If several @code{vpath} patterns match the prerequisite file's name, then
2405 When a prerequisite is found through directory search, regardless of type
2407 @code{make} actually provides you in the prerequisite list. Sometimes
2432 found during directory search is used for any prerequisite lists which
2472 When a prerequisite is found in another directory through directory search,
2475 the prerequisite in the directory where @code{make} finds it.
2497 just the first prerequisite:
2543 linker. This special feature comes into play when you write a prerequisite
2545 strange is going on here because the prerequisite is normally the name of a
2549 When a prerequisite's name has the form @samp{-l@var{name}}, @code{make}
2579 variable is a pattern string. When a prerequisite like
2703 A phony target should not be a prerequisite of a real target file; if it
2705 file. As long as a phony target is never a prerequisite of a real
2737 When one phony target is a prerequisite of another, it serves as a subroutine
2806 commands are executed if any prerequisite is more recent than the target;
2807 in other words, if a prerequisite has changed since the last time you
2856 file mentioned as a prerequisite, but not as a target in a rule, will have
2875 @samp{%.o}) as a prerequisite file of the special target @code{.PRECIOUS}
2904 makefile, then all prerequisite lists defined @emph{after} it appears
2949 prerequisite of @code{.LOW_RESOLUTION_TIME} so that @command{make} does
3038 gives an additional prerequisite to each of the three object files
3088 the target. If the target is older than any prerequisite from any rule,
3117 you wish to add the additional prerequisite intermittently.
3132 @file{foo.h} as a prerequisite of each object file, but plain @samp{make}
3148 construct the prerequisite names for each target based on the target name.
3183 to make the prerequisite names (one from each @var{prereq-pattern}).
3192 @cindex prerequisite pattern, static (not implicit)
3193 The prerequisite names for each target are made by substituting the stem
3194 for the @samp{%} in each prerequisite pattern. For example, if one
3195 prerequisite pattern is @file{%.c}, then substitution of the stem
3196 @samp{foo} gives the prerequisite name @file{foo.c}. It is legitimate
3197 to write a prerequisite pattern that does not contain @samp{%}; then this
3198 prerequisite is the same for all targets.
3232 prerequisite and @samp{$@@} is the automatic variable that holds the name
3339 differs depending on which prerequisite files caused the update, and such
3390 Note that such a prerequisite constitutes mentioning @file{main.o} in a
3407 The practice we recommend for automatic prerequisite generation is to have
3475 list of source files @samp{foo.c bar.c} into a list of prerequisite
4669 The first command in this example runs Yacc on the first prerequisite of
5816 Be aware that a given prerequisite will only be built once per
5817 invocation of make, at most. If the same file is a prerequisite of
5820 will cause that prerequisite to be built and the prerequisite will
6589 prerequisite files
7534 a rule in the makefile but is not a prerequisite of the default goal.
7854 or prerequisite file. This will always cause an error message, but
8283 Each implicit rule has a target pattern and prerequisite patterns. There may
8294 know which possible prerequisite files are supposed to exist.
8300 the makefile as a target or a prerequisite, or if an implicit rule can be
8301 recursively found for how to make it. When an implicit prerequisite is the
8307 only as a prerequisite is considered a target whose rule specifies nothing,
8319 The prerequisite on @file{foo.p} does not necessarily mean that
8896 prerequisite of @var{b} is newer than that target or there is some other
8907 makefile as a target or prerequisite. However, you can explicitly mark a
8908 file as intermediate by listing it as a prerequisite of the special target
8916 as a @dfn{secondary} file. To do this, list it as a prerequisite of the
8923 as a prerequisite of the special target @code{.PRECIOUS} to preserve
8997 @samp{%} in a prerequisite of a pattern rule stands for the same stem
9003 @cindex prerequisite pattern, implicit
9013 @file{@var{n}.c} as its prerequisite, provided that @file{@var{n}.c}
9016 There may also be prerequisites that do not use @samp{%}; such a prerequisite
9078 the appropriate prerequisite file exists. The double colon makes the rule
9079 @dfn{terminal}, which means that its prerequisite may not be an intermediate
9130 within the prerequisite list of a rule. A common mistake is
9134 automatic variable values to be used in prerequisite lists.
9159 The name of the first prerequisite. If the target got its commands from
9160 an implicit rule, this will be the first prerequisite added by the
9177 (@pxref{Archives}). A target has only one prerequisite on each other file
9179 prerequisite. So if you list a prerequisite more than once for a target,
9292 part of the first prerequisite.
9351 prerequisite file names generated from the pattern rule's prerequisite
9358 @samp{src/a} with a prerequisite pattern @samp{c%r} gives the file name
9370 as a target or as a prerequisite.
9521 target suffix. The corresponding implicit prerequisite is made by
9528 prerequisite name is made by appending the source suffix. A single-suffix
9559 tells how to make the file @file{.c.o} from the prerequisite file
9618 commands, and for each prerequisite that is not the target of any rule. It
9658 Compute the prerequisite names by substituting @var{s} for @samp{%}; if
9660 the front of each prerequisite name.@refill
9665 prerequisite, then we say it ought to exist.)
9680 Compute the prerequisite names as before.
9686 For each prerequisite that does not exist, follow this algorithm
9687 recursively to see if the prerequisite can be made by an implicit
9734 prerequisite in @code{make}. You specify the member named @var{member} in
9931 pattern @samp{(%.o)} and a prerequisite pattern of @samp{%.@var{x}}.
10257 We feel that such usage is broken. The prerequisite properties of
10279 add to the prerequisite list for the target. The above example can be
10537 The name of the first prerequisite.
10715 out the "target: prerequisite" section of a rule. @xref{Rule Syntax}.
10727 built, but rather only a prerequisite).
10753 after tracing the prerequisite @var{yyy} of target @var{xxx}, and its