Ignore:
Timestamp:
Sep 15, 2006, 4:30:32 AM (19 years ago)
Author:
bird
Message:

Load make-3.81/ into vendor/gnumake/current.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vendor/gnumake/current/doc/make.info-2

    r152 r501  
    1 This is make.info, produced by makeinfo version 4.6 from make.texi.
     1This is make.info, produced by makeinfo version 4.8 from make.texi.
     2
     3   This file documents the GNU `make' utility, which determines
     4automatically which pieces of a large program need to be recompiled,
     5and issues the commands to recompile them.
     6
     7   This is Edition 0.70, last updated 1 April 2006, of `The GNU Make
     8Manual', for GNU `make' version 3.81.
     9
     10   Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
     111997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, 2006 Free Software
     12Foundation, Inc.
     13
     14     Permission is granted to copy, distribute and/or modify this
     15     document under the terms of the GNU Free Documentation License,
     16     Version 1.2 or any later version published by the Free Software
     17     Foundation; with no Invariant Sections, with the Front-Cover Texts
     18     being "A GNU Manual," and with the Back-Cover Texts as in (a)
     19     below.  A copy of the license is included in the section entitled
     20     "GNU Free Documentation License."
     21
     22     (a) The FSF's Back-Cover Text is: "You have freedom to copy and
     23     modify this GNU Manual, like GNU software.  Copies published by
     24     the Free Software Foundation raise funds for GNU development."
    225
    326INFO-DIR-SECTION GNU Packages
     
    629END-INFO-DIR-ENTRY
    730
    8    This file documents the GNU Make utility, which determines
    9 automatically which pieces of a large program need to be recompiled,
    10 and issues the commands to recompile them.
    11 
    12    This is Edition 0.61, last updated 02 May 2003, of `The GNU Make
    13 Manual', for `make', Version 3.81.
    14 
    15    Copyright 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
    16 1998, 1999, 2000, 2002, 2003, 2004 Free Software Foundation, Inc.
    17 
    18    Permission is granted to copy, distribute and/or modify this document
    19 under the terms of the GNU Free Documentation License, Version 1.1 or
    20 any later version published by the Free Software Foundation; with no
    21 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
    22 Texts.  A copy of the license is included in the section entitled "GNU
    23 Free Documentation License".
     31
     32File: make.info,  Node: Pattern Rules,  Next: Last Resort,  Prev: Chained Rules,  Up: Implicit Rules
     33
     3410.5 Defining and Redefining Pattern Rules
     35==========================================
     36
     37You define an implicit rule by writing a "pattern rule".  A pattern
     38rule looks like an ordinary rule, except that its target contains the
     39character `%' (exactly one of them).  The target is considered a
     40pattern for matching file names; the `%' can match any nonempty
     41substring, while other characters match only themselves.  The
     42prerequisites likewise use `%' to show how their names relate to the
     43target name.
     44
     45   Thus, a pattern rule `%.o : %.c' says how to make any file `STEM.o'
     46from another file `STEM.c'.
     47
     48   Note that expansion using `%' in pattern rules occurs *after* any
     49variable or function expansions, which take place when the makefile is
     50read.  *Note How to Use Variables: Using Variables, and *Note Functions
     51for Transforming Text: Functions.
     52
     53* Menu:
     54
     55* Pattern Intro::               An introduction to pattern rules.
     56* Pattern Examples::            Examples of pattern rules.
     57* Automatic Variables::         How to use automatic variables in the
     58                                  commands of implicit rules.
     59* Pattern Match::               How patterns match.
     60* Match-Anything Rules::        Precautions you should take prior to
     61                                  defining rules that can match any
     62                                  target file whatever.
     63* Canceling Rules::             How to override or cancel built-in rules.
     64
     65
     66File: make.info,  Node: Pattern Intro,  Next: Pattern Examples,  Prev: Pattern Rules,  Up: Pattern Rules
     67
     6810.5.1 Introduction to Pattern Rules
     69------------------------------------
     70
     71A pattern rule contains the character `%' (exactly one of them) in the
     72target; otherwise, it looks exactly like an ordinary rule.  The target
     73is a pattern for matching file names; the `%' matches any nonempty
     74substring, while other characters match only themselves. 
     75
     76   For example, `%.c' as a pattern matches any file name that ends in
     77`.c'.  `s.%.c' as a pattern matches any file name that starts with
     78`s.', ends in `.c' and is at least five characters long.  (There must
     79be at least one character to match the `%'.)  The substring that the
     80`%' matches is called the "stem".
     81
     82   `%' in a prerequisite of a pattern rule stands for the same stem
     83that was matched by the `%' in the target.  In order for the pattern
     84rule to apply, its target pattern must match the file name under
     85consideration and all of its prerequisites (after pattern substitution)
     86must name files that exist or can be made.  These files become
     87prerequisites of the target. 
     88
     89   Thus, a rule of the form
     90
     91     %.o : %.c ; COMMAND...
     92
     93specifies how to make a file `N.o', with another file `N.c' as its
     94prerequisite, provided that `N.c' exists or can be made.
     95
     96   There may also be prerequisites that do not use `%'; such a
     97prerequisite attaches to every file made by this pattern rule.  These
     98unvarying prerequisites are useful occasionally.
     99
     100   A pattern rule need not have any prerequisites that contain `%', or
     101in fact any prerequisites at all.  Such a rule is effectively a general
     102wildcard.  It provides a way to make any file that matches the target
     103pattern.  *Note Last Resort::.
     104
     105   Pattern rules may have more than one target.  Unlike normal rules,
     106this does not act as many different rules with the same prerequisites
     107and commands.  If a pattern rule has multiple targets, `make' knows that
     108the rule's commands are responsible for making all of the targets.  The
     109commands are executed only once to make all the targets.  When searching
     110for a pattern rule to match a target, the target patterns of a rule
     111other than the one that matches the target in need of a rule are
     112incidental: `make' worries only about giving commands and prerequisites
     113to the file presently in question.  However, when this file's commands
     114are run, the other targets are marked as having been updated themselves. 
     115
     116   The order in which pattern rules appear in the makefile is important
     117since this is the order in which they are considered.  Of equally
     118applicable rules, only the first one found is used.  The rules you
     119write take precedence over those that are built in.  Note however, that
     120a rule whose prerequisites actually exist or are mentioned always takes
     121priority over a rule with prerequisites that must be made by chaining
     122other implicit rules. 
     123
     124
     125File: make.info,  Node: Pattern Examples,  Next: Automatic Variables,  Prev: Pattern Intro,  Up: Pattern Rules
     126
     12710.5.2 Pattern Rule Examples
     128----------------------------
     129
     130Here are some examples of pattern rules actually predefined in `make'.
     131First, the rule that compiles `.c' files into `.o' files:
     132
     133     %.o : %.c
     134             $(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@
     135
     136defines a rule that can make any file `X.o' from `X.c'.  The command
     137uses the automatic variables `$@' and `$<' to substitute the names of
     138the target file and the source file in each case where the rule applies
     139(*note Automatic Variables::).
     140
     141   Here is a second built-in rule:
     142
     143     % :: RCS/%,v
     144             $(CO) $(COFLAGS) $<
     145
     146defines a rule that can make any file `X' whatsoever from a
     147corresponding file `X,v' in the subdirectory `RCS'.  Since the target
     148is `%', this rule will apply to any file whatever, provided the
     149appropriate prerequisite file exists.  The double colon makes the rule
     150"terminal", which means that its prerequisite may not be an intermediate
     151file (*note Match-Anything Pattern Rules: Match-Anything Rules.).
     152
     153   This pattern rule has two targets:
     154
     155     %.tab.c %.tab.h: %.y
     156             bison -d $<
     157
     158This tells `make' that the command `bison -d X.y' will make both
     159`X.tab.c' and `X.tab.h'.  If the file `foo' depends on the files
     160`parse.tab.o' and `scan.o' and the file `scan.o' depends on the file
     161`parse.tab.h', when `parse.y' is changed, the command `bison -d parse.y'
     162will be executed only once, and the prerequisites of both `parse.tab.o'
     163and `scan.o' will be satisfied.  (Presumably the file `parse.tab.o'
     164will be recompiled from `parse.tab.c' and the file `scan.o' from
     165`scan.c', while `foo' is linked from `parse.tab.o', `scan.o', and its
     166other prerequisites, and it will execute happily ever after.)
     167
     168
     169File: make.info,  Node: Automatic Variables,  Next: Pattern Match,  Prev: Pattern Examples,  Up: Pattern Rules
     170
     17110.5.3 Automatic Variables
     172--------------------------
     173
     174Suppose you are writing a pattern rule to compile a `.c' file into a
     175`.o' file: how do you write the `cc' command so that it operates on the
     176right source file name?  You cannot write the name in the command,
     177because the name is different each time the implicit rule is applied.
     178
     179   What you do is use a special feature of `make', the "automatic
     180variables".  These variables have values computed afresh for each rule
     181that is executed, based on the target and prerequisites of the rule.
     182In this example, you would use `$@' for the object file name and `$<'
     183for the source file name.
     184
     185   It's very important that you recognize the limited scope in which
     186automatic variable values are available: they only have values within
     187the command script.  In particular, you cannot use them anywhere within
     188the target list of a rule; they have no value there and will expand to
     189the empty string.  Also, they cannot be accessed directly within the
     190prerequisite list of a rule.  A common mistake is attempting to use
     191`$@' within the prerequisites list; this will not work.  However, there
     192is a special feature of GNU `make', secondary expansion (*note
     193Secondary Expansion::), which will allow automatic variable values to
     194be used in prerequisite lists.
     195
     196   Here is a table of automatic variables:
     197
     198`$@'
     199     The file name of the target of the rule.  If the target is an
     200     archive member, then `$@' is the name of the archive file.  In a
     201     pattern rule that has multiple targets (*note Introduction to
     202     Pattern Rules: Pattern Intro.), `$@' is the name of whichever
     203     target caused the rule's commands to be run.
     204
     205`$%'
     206     The target member name, when the target is an archive member.
     207     *Note Archives::.  For example, if the target is `foo.a(bar.o)'
     208     then `$%' is `bar.o' and `$@' is `foo.a'.  `$%' is empty when the
     209     target is not an archive member.
     210
     211`$<'
     212     The name of the first prerequisite.  If the target got its
     213     commands from an implicit rule, this will be the first
     214     prerequisite added by the implicit rule (*note Implicit Rules::).
     215
     216`$?'
     217     The names of all the prerequisites that are newer than the target,
     218     with spaces between them.  For prerequisites which are archive
     219     members, only the member named is used (*note Archives::). 
     220
     221`$^'
     222     The names of all the prerequisites, with spaces between them.  For
     223     prerequisites which are archive members, only the member named is
     224     used (*note Archives::).  A target has only one prerequisite on
     225     each other file it depends on, no matter how many times each file
     226     is listed as a prerequisite.  So if you list a prerequisite more
     227     than once for a target, the value of `$^' contains just one copy
     228     of the name.  This list does *not* contain any of the order-only
     229     prerequisites; for those see the `$|' variable, below. 
     230
     231`$+'
     232     This is like `$^', but prerequisites listed more than once are
     233     duplicated in the order they were listed in the makefile.  This is
     234     primarily useful for use in linking commands where it is
     235     meaningful to repeat library file names in a particular order.
     236
     237`$|'
     238     The names of all the order-only prerequisites, with spaces between
     239     them.
     240
     241`$*'
     242     The stem with which an implicit rule matches (*note How Patterns
     243     Match: Pattern Match.).  If the target is `dir/a.foo.b' and the
     244     target pattern is `a.%.b' then the stem is `dir/foo'.  The stem is
     245     useful for constructing names of related files. 
     246
     247     In a static pattern rule, the stem is part of the file name that
     248     matched the `%' in the target pattern.
     249
     250     In an explicit rule, there is no stem; so `$*' cannot be determined
     251     in that way.  Instead, if the target name ends with a recognized
     252     suffix (*note Old-Fashioned Suffix Rules: Suffix Rules.), `$*' is
     253     set to the target name minus the suffix.  For example, if the
     254     target name is `foo.c', then `$*' is set to `foo', since `.c' is a
     255     suffix.  GNU `make' does this bizarre thing only for compatibility
     256     with other implementations of `make'.  You should generally avoid
     257     using `$*' except in implicit rules or static pattern rules.
     258
     259     If the target name in an explicit rule does not end with a
     260     recognized suffix, `$*' is set to the empty string for that rule.
     261
     262   `$?' is useful even in explicit rules when you wish to operate on
     263only the prerequisites that have changed.  For example, suppose that an
     264archive named `lib' is supposed to contain copies of several object
     265files.  This rule copies just the changed object files into the archive:
     266
     267     lib: foo.o bar.o lose.o win.o
     268             ar r lib $?
     269
     270   Of the variables listed above, four have values that are single file
     271names, and three have values that are lists of file names.  These seven
     272have variants that get just the file's directory name or just the file
     273name within the directory.  The variant variables' names are formed by
     274appending `D' or `F', respectively.  These variants are semi-obsolete
     275in GNU `make' since the functions `dir' and `notdir' can be used to get
     276a similar effect (*note Functions for File Names: File Name
     277Functions.).  Note, however, that the `D' variants all omit the
     278trailing slash which always appears in the output of the `dir'
     279function.  Here is a table of the variants:
     280
     281`$(@D)'
     282     The directory part of the file name of the target, with the
     283     trailing slash removed.  If the value of `$@' is `dir/foo.o' then
     284     `$(@D)' is `dir'.  This value is `.' if `$@' does not contain a
     285     slash.
     286
     287`$(@F)'
     288     The file-within-directory part of the file name of the target.  If
     289     the value of `$@' is `dir/foo.o' then `$(@F)' is `foo.o'.  `$(@F)'
     290     is equivalent to `$(notdir $@)'.
     291
     292`$(*D)'
     293`$(*F)'
     294     The directory part and the file-within-directory part of the stem;
     295     `dir' and `foo' in this example.
     296
     297`$(%D)'
     298`$(%F)'
     299     The directory part and the file-within-directory part of the target
     300     archive member name.  This makes sense only for archive member
     301     targets of the form `ARCHIVE(MEMBER)' and is useful only when
     302     MEMBER may contain a directory name.  (*Note Archive Members as
     303     Targets: Archive Members.)
     304
     305`$(<D)'
     306`$(<F)'
     307     The directory part and the file-within-directory part of the first
     308     prerequisite.
     309
     310`$(^D)'
     311`$(^F)'
     312     Lists of the directory parts and the file-within-directory parts
     313     of all prerequisites.
     314
     315`$(+D)'
     316`$(+F)'
     317     Lists of the directory parts and the file-within-directory parts
     318     of all prerequisites, including multiple instances of duplicated
     319     prerequisites.
     320
     321`$(?D)'
     322`$(?F)'
     323     Lists of the directory parts and the file-within-directory parts of
     324     all prerequisites that are newer than the target.
     325
     326   Note that we use a special stylistic convention when we talk about
     327these automatic variables; we write "the value of `$<'", rather than
     328"the variable `<'" as we would write for ordinary variables such as
     329`objects' and `CFLAGS'.  We think this convention looks more natural in
     330this special case.  Please do not assume it has a deep significance;
     331`$<' refers to the variable named `<' just as `$(CFLAGS)' refers to the
     332variable named `CFLAGS'.  You could just as well use `$(<)' in place of
     333`$<'.
     334
     335
     336File: make.info,  Node: Pattern Match,  Next: Match-Anything Rules,  Prev: Automatic Variables,  Up: Pattern Rules
     337
     33810.5.4 How Patterns Match
     339-------------------------
     340
     341A target pattern is composed of a `%' between a prefix and a suffix,
     342either or both of which may be empty.  The pattern matches a file name
     343only if the file name starts with the prefix and ends with the suffix,
     344without overlap.  The text between the prefix and the suffix is called
     345the "stem".  Thus, when the pattern `%.o' matches the file name
     346`test.o', the stem is `test'.  The pattern rule prerequisites are
     347turned into actual file names by substituting the stem for the character
     348`%'.  Thus, if in the same example one of the prerequisites is written
     349as `%.c', it expands to `test.c'.
     350
     351   When the target pattern does not contain a slash (and it usually does
     352not), directory names in the file names are removed from the file name
     353before it is compared with the target prefix and suffix.  After the
     354comparison of the file name to the target pattern, the directory names,
     355along with the slash that ends them, are added on to the prerequisite
     356file names generated from the pattern rule's prerequisite patterns and
     357the file name.  The directories are ignored only for the purpose of
     358finding an implicit rule to use, not in the application of that rule.
     359Thus, `e%t' matches the file name `src/eat', with `src/a' as the stem.
     360When prerequisites are turned into file names, the directories from the
     361stem are added at the front, while the rest of the stem is substituted
     362for the `%'.  The stem `src/a' with a prerequisite pattern `c%r' gives
     363the file name `src/car'.
     364
     365
     366File: make.info,  Node: Match-Anything Rules,  Next: Canceling Rules,  Prev: Pattern Match,  Up: Pattern Rules
     367
     36810.5.5 Match-Anything Pattern Rules
     369-----------------------------------
     370
     371When a pattern rule's target is just `%', it matches any file name
     372whatever.  We call these rules "match-anything" rules.  They are very
     373useful, but it can take a lot of time for `make' to think about them,
     374because it must consider every such rule for each file name listed
     375either as a target or as a prerequisite.
     376
     377   Suppose the makefile mentions `foo.c'.  For this target, `make'
     378would have to consider making it by linking an object file `foo.c.o',
     379or by C compilation-and-linking in one step from `foo.c.c', or by
     380Pascal compilation-and-linking from `foo.c.p', and many other
     381possibilities.
     382
     383   We know these possibilities are ridiculous since `foo.c' is a C
     384source file, not an executable.  If `make' did consider these
     385possibilities, it would ultimately reject them, because files such as
     386`foo.c.o' and `foo.c.p' would not exist.  But these possibilities are so
     387numerous that `make' would run very slowly if it had to consider them.
     388
     389   To gain speed, we have put various constraints on the way `make'
     390considers match-anything rules.  There are two different constraints
     391that can be applied, and each time you define a match-anything rule you
     392must choose one or the other for that rule.
     393
     394   One choice is to mark the match-anything rule as "terminal" by
     395defining it with a double colon.  When a rule is terminal, it does not
     396apply unless its prerequisites actually exist.  Prerequisites that
     397could be made with other implicit rules are not good enough.  In other
     398words, no further chaining is allowed beyond a terminal rule.
     399
     400   For example, the built-in implicit rules for extracting sources from
     401RCS and SCCS files are terminal; as a result, if the file `foo.c,v' does
     402not exist, `make' will not even consider trying to make it as an
     403intermediate file from `foo.c,v.o' or from `RCS/SCCS/s.foo.c,v'.  RCS
     404and SCCS files are generally ultimate source files, which should not be
     405remade from any other files; therefore, `make' can save time by not
     406looking for ways to remake them.
     407
     408   If you do not mark the match-anything rule as terminal, then it is
     409nonterminal.  A nonterminal match-anything rule cannot apply to a file
     410name that indicates a specific type of data.  A file name indicates a
     411specific type of data if some non-match-anything implicit rule target
     412matches it.
     413
     414   For example, the file name `foo.c' matches the target for the pattern
     415rule `%.c : %.y' (the rule to run Yacc).  Regardless of whether this
     416rule is actually applicable (which happens only if there is a file
     417`foo.y'), the fact that its target matches is enough to prevent
     418consideration of any nonterminal match-anything rules for the file
     419`foo.c'.  Thus, `make' will not even consider trying to make `foo.c' as
     420an executable file from `foo.c.o', `foo.c.c', `foo.c.p', etc.
     421
     422   The motivation for this constraint is that nonterminal match-anything
     423rules are used for making files containing specific types of data (such
     424as executable files) and a file name with a recognized suffix indicates
     425some other specific type of data (such as a C source file).
     426
     427   Special built-in dummy pattern rules are provided solely to recognize
     428certain file names so that nonterminal match-anything rules will not be
     429considered.  These dummy rules have no prerequisites and no commands,
     430and they are ignored for all other purposes.  For example, the built-in
     431implicit rule
     432
     433     %.p :
     434
     435exists to make sure that Pascal source files such as `foo.p' match a
     436specific target pattern and thereby prevent time from being wasted
     437looking for `foo.p.o' or `foo.p.c'.
     438
     439   Dummy pattern rules such as the one for `%.p' are made for every
     440suffix listed as valid for use in suffix rules (*note Old-Fashioned
     441Suffix Rules: Suffix Rules.).
     442
     443
     444File: make.info,  Node: Canceling Rules,  Prev: Match-Anything Rules,  Up: Pattern Rules
     445
     44610.5.6 Canceling Implicit Rules
     447-------------------------------
     448
     449You can override a built-in implicit rule (or one you have defined
     450yourself) by defining a new pattern rule with the same target and
     451prerequisites, but different commands.  When the new rule is defined,
     452the built-in one is replaced.  The new rule's position in the sequence
     453of implicit rules is determined by where you write the new rule.
     454
     455   You can cancel a built-in implicit rule by defining a pattern rule
     456with the same target and prerequisites, but no commands.  For example,
     457the following would cancel the rule that runs the assembler:
     458
     459     %.o : %.s
     460
     461
     462File: make.info,  Node: Last Resort,  Next: Suffix Rules,  Prev: Pattern Rules,  Up: Implicit Rules
     463
     46410.6 Defining Last-Resort Default Rules
     465=======================================
     466
     467You can define a last-resort implicit rule by writing a terminal
     468match-anything pattern rule with no prerequisites (*note Match-Anything
     469Rules::).  This is just like any other pattern rule; the only thing
     470special about it is that it will match any target.  So such a rule's
     471commands are used for all targets and prerequisites that have no
     472commands of their own and for which no other implicit rule applies.
     473
     474   For example, when testing a makefile, you might not care if the
     475source files contain real data, only that they exist.  Then you might
     476do this:
     477
     478     %::
     479             touch $@
     480
     481to cause all the source files needed (as prerequisites) to be created
     482automatically.
     483
     484   You can instead define commands to be used for targets for which
     485there are no rules at all, even ones which don't specify commands.  You
     486do this by writing a rule for the target `.DEFAULT'.  Such a rule's
     487commands are used for all prerequisites which do not appear as targets
     488in any explicit rule, and for which no implicit rule applies.
     489Naturally, there is no `.DEFAULT' rule unless you write one.
     490
     491   If you use `.DEFAULT' with no commands or prerequisites:
     492
     493     .DEFAULT:
     494
     495the commands previously stored for `.DEFAULT' are cleared.  Then `make'
     496acts as if you had never defined `.DEFAULT' at all.
     497
     498   If you do not want a target to get the commands from a match-anything
     499pattern rule or `.DEFAULT', but you also do not want any commands to be
     500run for the target, you can give it empty commands (*note Defining
     501Empty Commands: Empty Commands.).
     502
     503   You can use a last-resort rule to override part of another makefile.
     504*Note Overriding Part of Another Makefile: Overriding Makefiles.
     505
     506
     507File: make.info,  Node: Suffix Rules,  Next: Implicit Rule Search,  Prev: Last Resort,  Up: Implicit Rules
     508
     50910.7 Old-Fashioned Suffix Rules
     510===============================
     511
     512"Suffix rules" are the old-fashioned way of defining implicit rules for
     513`make'.  Suffix rules are obsolete because pattern rules are more
     514general and clearer.  They are supported in GNU `make' for
     515compatibility with old makefiles.  They come in two kinds:
     516"double-suffix" and "single-suffix".
     517
     518   A double-suffix rule is defined by a pair of suffixes: the target
     519suffix and the source suffix.  It matches any file whose name ends with
     520the target suffix.  The corresponding implicit prerequisite is made by
     521replacing the target suffix with the source suffix in the file name.  A
     522two-suffix rule whose target and source suffixes are `.o' and `.c' is
     523equivalent to the pattern rule `%.o : %.c'.
     524
     525   A single-suffix rule is defined by a single suffix, which is the
     526source suffix.  It matches any file name, and the corresponding implicit
     527prerequisite name is made by appending the source suffix.  A
     528single-suffix rule whose source suffix is `.c' is equivalent to the
     529pattern rule `% : %.c'.
     530
     531   Suffix rule definitions are recognized by comparing each rule's
     532target against a defined list of known suffixes.  When `make' sees a
     533rule whose target is a known suffix, this rule is considered a
     534single-suffix rule.  When `make' sees a rule whose target is two known
     535suffixes concatenated, this rule is taken as a double-suffix rule.
     536
     537   For example, `.c' and `.o' are both on the default list of known
     538suffixes.  Therefore, if you define a rule whose target is `.c.o',
     539`make' takes it to be a double-suffix rule with source suffix `.c' and
     540target suffix `.o'.  Here is the old-fashioned way to define the rule
     541for compiling a C source file:
     542
     543     .c.o:
     544             $(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
     545
     546   Suffix rules cannot have any prerequisites of their own.  If they
     547have any, they are treated as normal files with funny names, not as
     548suffix rules.  Thus, the rule:
     549
     550     .c.o: foo.h
     551             $(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
     552
     553tells how to make the file `.c.o' from the prerequisite file `foo.h',
     554and is not at all like the pattern rule:
     555
     556     %.o: %.c foo.h
     557             $(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
     558
     559which tells how to make `.o' files from `.c' files, and makes all `.o'
     560files using this pattern rule also depend on `foo.h'.
     561
     562   Suffix rules with no commands are also meaningless.  They do not
     563remove previous rules as do pattern rules with no commands (*note
     564Canceling Implicit Rules: Canceling Rules.).  They simply enter the
     565suffix or pair of suffixes concatenated as a target in the data base.
     566
     567   The known suffixes are simply the names of the prerequisites of the
     568special target `.SUFFIXES'.  You can add your own suffixes by writing a
     569rule for `.SUFFIXES' that adds more prerequisites, as in:
     570
     571     .SUFFIXES: .hack .win
     572
     573which adds `.hack' and `.win' to the end of the list of suffixes.
     574
     575   If you wish to eliminate the default known suffixes instead of just
     576adding to them, write a rule for `.SUFFIXES' with no prerequisites.  By
     577special dispensation, this eliminates all existing prerequisites of
     578`.SUFFIXES'.  You can then write another rule to add the suffixes you
     579want.  For example,
     580
     581     .SUFFIXES:            # Delete the default suffixes
     582     .SUFFIXES: .c .o .h   # Define our suffix list
     583
     584   The `-r' or `--no-builtin-rules' flag causes the default list of
     585suffixes to be empty.
     586
     587   The variable `SUFFIXES' is defined to the default list of suffixes
     588before `make' reads any makefiles.  You can change the list of suffixes
     589with a rule for the special target `.SUFFIXES', but that does not alter
     590this variable.
    24591
    25592
    26593File: make.info,  Node: Implicit Rule Search,  Prev: Suffix Rules,  Up: Implicit Rules
    27594
    28 Implicit Rule Search Algorithm
    29 ==============================
     59510.8 Implicit Rule Search Algorithm
     596===================================
    30597
    31598Here is the procedure `make' uses for searching for an implicit rule
     
    109676File: make.info,  Node: Archives,  Next: Features,  Prev: Implicit Rules,  Up: Top
    110677
    111 Using `make' to Update Archive Files
    112 ************************************
     67811 Using `make' to Update Archive Files
     679***************************************
    113680
    114681"Archive files" are files containing named subfiles called "members";
     
    127694File: make.info,  Node: Archive Members,  Next: Archive Update,  Prev: Archives,  Up: Archives
    128695
    129 Archive Members as Targets
    130 ==========================
     69611.1 Archive Members as Targets
     697===============================
    131698
    132699An individual member of an archive file can be used as a target or
     
    148715
    149716   In fact, nearly all archive member targets are updated in just this
    150 way and there is an implicit rule to do it for you.  *Note:* The `c'
    151 flag to `ar' is required if the archive file does not already exist.
     717way and there is an implicit rule to do it for you.  *Please note:* The
     718`c' flag to `ar' is required if the archive file does not already exist.
    152719
    153720   To specify several members in the same archive, you can write all the
     
    169736File: make.info,  Node: Archive Update,  Next: Archive Pitfalls,  Prev: Archive Members,  Up: Archives
    170737
    171 Implicit Rule for Archive Member Targets
    172 ========================================
     73811.2 Implicit Rule for Archive Member Targets
     739=============================================
    173740
    174741Recall that a target that looks like `A(M)' stands for the member named
     
    219786File: make.info,  Node: Archive Symbols,  Prev: Archive Update,  Up: Archive Update
    220787
    221 Updating Archive Symbol Directories
    222 -----------------------------------
     78811.2.1 Updating Archive Symbol Directories
     789------------------------------------------
    223790
    224791An archive file that is used as a library usually contains a special
     
    250817File: make.info,  Node: Archive Pitfalls,  Next: Archive Suffix Rules,  Prev: Archive Update,  Up: Archives
    251818
    252 Dangers When Using Archives
    253 ===========================
     81911.3 Dangers When Using Archives
     820================================
    254821
    255822It is important to be careful when using parallel execution (the `-j'
     
    266833File: make.info,  Node: Archive Suffix Rules,  Prev: Archive Pitfalls,  Up: Archives
    267834
    268 Suffix Rules for Archive Files
    269 ==============================
     83511.4 Suffix Rules for Archive Files
     836===================================
    270837
    271838You can write a special kind of suffix rule for dealing with archive
     
    305872File: make.info,  Node: Features,  Next: Missing,  Prev: Archives,  Up: Top
    306873
    307 Features of GNU `make'
    308 **********************
     87412 Features of GNU `make'
     875*************************
    309876
    310877Here is a summary of the features of GNU `make', for comparison with
     
    4991066
    5001067   * The built-in variable `MAKE_VERSION' gives the version number of
    501      `make'.
     1068     `make'. 
    5021069
    5031070
    5041071File: make.info,  Node: Missing,  Next: Makefile Conventions,  Prev: Features,  Up: Top
    5051072
    506 Incompatibilities and Missing Features
    507 **************************************
     107313 Incompatibilities and Missing Features
     1074*****************************************
    5081075
    5091076The `make' programs in various other systems support a few features
     
    5451112     imagine what went on in the minds of Unix `make' developers to do
    5461113     this; it is utterly inconsistent with the normal definition of
    547      `$*'.
     1114     `$*'. 
    5481115
    5491116   * In some Unix `make's, implicit rule search (*note Using Implicit
     
    5891156File: make.info,  Node: Makefile Conventions,  Next: Quick Reference,  Prev: Missing,  Up: Top
    5901157
    591 Makefile Conventions
    592 ********************
     115814 Makefile Conventions
     1159***********************
    5931160
    5941161This node describes conventions for writing the Makefiles for GNU
     
    6091176File: make.info,  Node: Makefile Basics,  Next: Utilities in Makefiles,  Up: Makefile Conventions
    6101177
    611 General Conventions for Makefiles
    612 =================================
     117814.1 General Conventions for Makefiles
     1179======================================
    6131180
    6141181Every Makefile should contain this line:
     
    6891256File: make.info,  Node: Utilities in Makefiles,  Next: Command Variables,  Prev: Makefile Basics,  Up: Makefile Conventions
    6901257
    691 Utilities in Makefiles
    692 ======================
     125814.2 Utilities in Makefiles
     1259===========================
    6931260
    6941261Write the Makefile commands (and any shell scripts, such as
     
    7441311File: make.info,  Node: Command Variables,  Next: Directory Variables,  Prev: Utilities in Makefiles,  Up: Makefile Conventions
    7451312
    746 Variables for Specifying Commands
    747 =================================
     131314.3 Variables for Specifying Commands
     1314======================================
    7481315
    7491316Makefiles should provide variables for overriding certain commands,
     
    8241391File: make.info,  Node: Directory Variables,  Next: Standard Targets,  Prev: Command Variables,  Up: Makefile Conventions
    8251392
    826 Variables for Installation Directories
    827 ======================================
     139314.4 Variables for Installation Directories
     1394===========================================
    8281395
    8291396Installation directories should always be named by variables, so it is
    8301397easy to install in a nonstandard place.  The standard names for these
    831 variables are described below.  They are based on a standard filesystem
    832 layout; variants of it are used in SVR4, 4.4BSD, GNU/Linux, Ultrix v4,
    833 and other modern operating systems.
     1398variables and the values they should have in GNU packages are described
     1399below.  They are based on a standard filesystem layout; variants of it
     1400are used in GNU/Linux and other modern operating systems.
     1401
     1402   Installers are expected to override these values when calling `make'
     1403(e.g., `make prefix=/usr install' or `configure' (e.g., `configure
     1404--prefix=/usr').  GNU packages should not try to guess which value
     1405should be appropriate for these variables on the system they are being
     1406installed onto: use the default settings specified here so that all GNU
     1407packages behave identically, allowing the installer to achieve any
     1408desired layout.
    8341409
    8351410   These two variables set the root for the installation.  All the other
     
    8841459     (If you are using Autoconf, write it as `@libexecdir@'.)
    8851460
     1461     The definition of `libexecdir' is the same for all packages, so
     1462     you should install your data in a subdirectory thereof.  Most
     1463     packages install their data under `$(libexecdir)/PACKAGE-NAME/',
     1464     possibly within additional subdirectories thereof, such as
     1465     `$(libexecdir)/PACKAGE-NAME/MACHINE/VERSION'.
     1466
    8861467   Data files used by the program during its execution are divided into
    8871468categories in two ways.
     
    9001481architecture-independent, and it is generally not hard.
    9011482
    902    Therefore, here are the variables Makefiles should use to specify
    903 directories:
     1483   Here are the variables Makefiles should use to specify directories
     1484to put these various kinds of files in:
     1485
     1486`datarootdir'
     1487     The root of the directory tree for read-only
     1488     architecture-independent data files.  This should normally be
     1489     `/usr/local/share', but write it as `$(prefix)/share'.  (If you
     1490     are using Autoconf, write it as `@datarootdir@'.)  `datadir''s
     1491     default value is based on this variable; so are `infodir',
     1492     `mandir', and others.
    9041493
    9051494`datadir'
    906      The directory for installing read-only architecture independent
    907      data files.  This should normally be `/usr/local/share', but write
    908      it as `$(prefix)/share'.  (If you are using Autoconf, write it as
    909      `@datadir@'.)  As a special exception, see `$(infodir)' and
    910      `$(includedir)' below.
     1495     The directory for installing idiosyncratic read-only
     1496     architecture-independent data files for this program.  This is
     1497     usually the same place as `datarootdir', but we use the two
     1498     separate variables so that you can move these program-specific
     1499     files without altering the location for Info files, man pages, etc.
     1500
     1501     This should normally be `/usr/local/share', but write it as
     1502     `$(datarootdir)'.  (If you are using Autoconf, write it as
     1503     `@datadir@'.)
     1504
     1505     The definition of `datadir' is the same for all packages, so you
     1506     should install your data in a subdirectory thereof.  Most packages
     1507     install their data under `$(datadir)/PACKAGE-NAME/'.
    9111508
    9121509`sysconfdir'
     
    9411538     `@localstatedir@'.)
    9421539
    943 `libdir'
    944      The directory for object files and libraries of object code.  Do
    945      not install executables here, they probably ought to go in
    946      `$(libexecdir)' instead.  The value of `libdir' should normally be
    947      `/usr/local/lib', but write it as `$(exec_prefix)/lib'.  (If you
    948      are using Autoconf, write it as `@libdir@'.)
    949 
    950 `infodir'
    951      The directory for installing the Info files for this package.  By
    952      default, it should be `/usr/local/info', but it should be written
    953      as `$(prefix)/info'.  (If you are using Autoconf, write it as
    954      `@infodir@'.)
    955 
    956 `lispdir'
    957      The directory for installing any Emacs Lisp files in this package.
    958      By default, it should be `/usr/local/share/emacs/site-lisp', but
    959      it should be written as `$(prefix)/share/emacs/site-lisp'.
    960 
    961      If you are using Autoconf, write the default as `@lispdir@'.  In
    962      order to make `@lispdir@' work, you need the following lines in
    963      your `configure.in' file:
    964 
    965           lispdir='${datadir}/emacs/site-lisp'
    966           AC_SUBST(lispdir)
     1540   These variables specify the directory for installing certain specific
     1541types of files, if your program has them.  Every GNU package should
     1542have Info files, so every program needs `infodir', but not all need
     1543`libdir' or `lispdir'.
    9671544
    9681545`includedir'
     
    10001577     string in the file--part of a comment--and `grep' for that string.
    10011578
     1579`docdir'
     1580     The directory for installing documentation files (other than Info)
     1581     for this package.  By default, it should be
     1582     `/usr/local/share/doc/YOURPKG', but it should be written as
     1583     `$(datarootdir)/doc/YOURPKG'.  (If you are using Autoconf, write
     1584     it as `@docdir@'.)  The YOURPKG subdirectory, which may include a
     1585     version number, prevents collisions among files with common names,
     1586     such as `README'.
     1587
     1588`infodir'
     1589     The directory for installing the Info files for this package.  By
     1590     default, it should be `/usr/local/share/info', but it should be
     1591     written as `$(datarootdir)/info'.  (If you are using Autoconf,
     1592     write it as `@infodir@'.)  `infodir' is separate from `docdir' for
     1593     compatibility with existing practice.
     1594
     1595`htmldir'
     1596`dvidir'
     1597`pdfdir'
     1598`psdir'
     1599     Directories for installing documentation files in the particular
     1600     format.  (It is not required to support documentation in all these
     1601     formats.)  They should all be set to `$(docdir)' by default.  (If
     1602     you are using Autoconf, write them as `@htmldir@', `@dvidir@',
     1603     etc.)  Packages which supply several translations of their
     1604     documentation should install them in `$(htmldir)/'LL,
     1605     `$(pdfdir)/'LL, etc. where LL is a locale abbreviation such as
     1606     `en' or `pt_BR'.
     1607
     1608`libdir'
     1609     The directory for object files and libraries of object code.  Do
     1610     not install executables here, they probably ought to go in
     1611     `$(libexecdir)' instead.  The value of `libdir' should normally be
     1612     `/usr/local/lib', but write it as `$(exec_prefix)/lib'.  (If you
     1613     are using Autoconf, write it as `@libdir@'.)
     1614
     1615`lispdir'
     1616     The directory for installing any Emacs Lisp files in this package.
     1617     By default, it should be `/usr/local/share/emacs/site-lisp', but
     1618     it should be written as `$(datarootdir)/emacs/site-lisp'.
     1619
     1620     If you are using Autoconf, write the default as `@lispdir@'.  In
     1621     order to make `@lispdir@' work, you need the following lines in
     1622     your `configure.in' file:
     1623
     1624          lispdir='${datarootdir}/emacs/site-lisp'
     1625          AC_SUBST(lispdir)
     1626
     1627`localedir'
     1628     The directory for installing locale-specific message catalogs for
     1629     this package.  By default, it should be `/usr/local/share/locale',
     1630     but it should be written as `$(datarootdir)/locale'.  (If you are
     1631     using Autoconf, write it as `@localedir@'.)  This directory
     1632     usually has a subdirectory per locale.
     1633
    10021634   Unix-style man pages are installed in one of the following:
    10031635
    10041636`mandir'
    10051637     The top-level directory for installing the man pages (if any) for
    1006      this package.  It will normally be `/usr/local/man', but you should
    1007      write it as `$(prefix)/man'.  (If you are using Autoconf, write it
    1008      as `@mandir@'.)
     1638     this package.  It will normally be `/usr/local/share/man', but you
     1639     should write it as `$(datarootdir)/man'.  (If you are using
     1640     Autoconf, write it as `@mandir@'.)
    10091641
    10101642`man1dir'
     
    10491681     # NOTE: This directory must exist when you start the install.
    10501682     prefix = /usr/local
     1683     datarootdir = $(prefix)/share
     1684     datadir = $(datarootdir)
    10511685     exec_prefix = $(prefix)
    10521686     # Where to put the executable for the command `gcc'.
     
    10551689     libexecdir = $(exec_prefix)/libexec
    10561690     # Where to put the Info files.
    1057      infodir = $(prefix)/info
     1691     infodir = $(datarootdir)/info
    10581692
    10591693   If your program installs a large number of files into one of the
     
    10721706File: make.info,  Node: Standard Targets,  Next: Install Command Categories,  Prev: Directory Variables,  Up: Makefile Conventions
    10731707
    1074 Standard Targets for Users
    1075 ==========================
     170814.5 Standard Targets for Users
     1709===============================
    10761710
    10771711All GNU programs should have the following targets in their Makefiles:
     
    11421776     Categories::.
    11431777
     1778`install-html'
     1779`install-dvi'
     1780`install-pdf'
     1781`install-ps'
     1782     These targets install documentation in formats other than Info;
     1783     they're intended to be called explicitly by the person installing
     1784     the package, if that format is desired.  GNU prefers Info files,
     1785     so these must be installed by the `install' target.
     1786
     1787     When you have many documentation files to install, we recommend
     1788     that you avoid collisions and clutter by arranging for these
     1789     targets to install in subdirectories of the appropriate
     1790     installation directory, such as `htmldir'.  As one example, if
     1791     your package has multiple manuals, and you wish to install HTML
     1792     documentation with many files (such as the "split" mode output by
     1793     `makeinfo --html'), you'll certainly want to use subdirectories,
     1794     or two nodes with the same name in different manuals will
     1795     overwrite each other.
     1796
    11441797`uninstall'
    1145      Delete all the installed files--the copies that the `install'
    1146      target creates.
     1798     Delete all the installed files--the copies that the `install' and
     1799     `install-*' targets create.
    11471800
    11481801     This rule should not modify the directories where compilation is
     
    11761829
    11771830`clean'
    1178      Delete all files from the current directory that are normally
    1179      created by building the program.  Don't delete the files that
    1180      record the configuration.  Also preserve files that could be made
    1181      by building, but normally aren't because the distribution comes
    1182      with them.
     1831     Delete all files in the current directory that are normally
     1832     created by building the program.  Also delete files in other
     1833     directories if they are created by this makefile.  However, don't
     1834     delete the files that record the configuration.  Also preserve
     1835     files that could be made by building, but normally aren't because
     1836     the distribution comes with them.  There is no need to delete
     1837     parent directories that were created with `mkdir -p', since they
     1838     could have existed anyway.
    11831839
    11841840     Delete `.dvi' files here if they are not part of the distribution.
    11851841
    11861842`distclean'
    1187      Delete all files from the current directory that are created by
    1188      configuring or building the program.  If you have unpacked the
    1189      source and built the program without creating any other files,
    1190      `make distclean' should leave only the files that were in the
    1191      distribution.
     1843     Delete all files in the current directory (or created by this
     1844     makefile) that are created by configuring or building the program.
     1845     If you have unpacked the source and built the program without
     1846     creating any other files, `make distclean' should leave only the
     1847     files that were in the distribution.  However, there is no need to
     1848     delete parent directories that were created with `mkdir -p', since
     1849     they could have existed anyway.
    11921850
    11931851`mostlyclean'
     
    11981856
    11991857`maintainer-clean'
    1200      Delete almost everything from the current directory that can be
    1201      reconstructed with this Makefile.  This typically includes
    1202      everything deleted by `distclean', plus more: C source files
    1203      produced by Bison, tags tables, Info files, and so on.
     1858     Delete almost everything that can be reconstructed with this
     1859     Makefile.  This typically includes everything deleted by
     1860     `distclean', plus more: C source files produced by Bison, tags
     1861     tables, Info files, and so on.
    12041862
    12051863     The reason we say "almost everything" is that running the command
     
    12081866     generally, `make maintainer-clean' should not delete anything that
    12091867     needs to exist in order to run `configure' and then begin to build
    1210      the program.  This is the only exception; `maintainer-clean' should
     1868     the program.  Also, there is no need to delete parent directories
     1869     that were created with `mkdir -p', since they could have existed
     1870     anyway.  These are the only exceptions; `maintainer-clean' should
    12111871     delete everything else that can be rebuilt.
    12121872
     
    12331893
    12341894          info: foo.info
    1235          
     1895
    12361896          foo.info: foo.texi chap1.texi chap2.texi
    12371897                  $(MAKEINFO) $(srcdir)/foo.texi
     
    12481908
    12491909`dvi'
    1250      Generate DVI files for all Texinfo documentation.  For example:
     1910`html'
     1911`pdf'
     1912`ps'
     1913     Generate documentation files in the given format, if possible.
     1914     Here's an example rule for generating DVI files from Texinfo:
    12511915
    12521916          dvi: foo.dvi
    1253          
     1917
    12541918          foo.dvi: foo.texi chap1.texi chap2.texi
    12551919                  $(TEXI2DVI) $(srcdir)/foo.texi
     
    12591923     distribution.(1)  Alternatively, write just the dependencies, and
    12601924     allow GNU `make' to provide the command.
     1925
     1926     Here's another example, this one for generating HTML from Texinfo:
     1927
     1928          html: foo.html
     1929
     1930          foo.html: foo.texi chap1.texi chap2.texi
     1931                  $(TEXI2HTML) $(srcdir)/foo.texi
     1932
     1933     Again, you would define the variable `TEXI2HTML' in the Makefile;
     1934     for example, it might run `makeinfo --no-split --html' (`makeinfo'
     1935     is part of the Texinfo distribution).
    12611936
    12621937`dist'
     
    13292004File: make.info,  Node: Install Command Categories,  Prev: Standard Targets,  Up: Makefile Conventions
    13302005
    1331 Install Command Categories
    1332 ==========================
     200614.6 Install Command Categories
     2007===============================
    13332008
    13342009When writing the `install' target, you must classify all the commands
     
    14152090   Programs to build binary packages work by extracting the
    14162091pre-installation and post-installation commands.  Here is one way of
    1417 extracting the pre-installation commands:
    1418 
    1419      make -n install -o all \
     2092extracting the pre-installation commands (the `-s' option to `make' is
     2093needed to silence messages about entering subdirectories):
     2094
     2095     make -s -n install -o all \
    14202096           PRE_INSTALL=pre-install \
    14212097           POST_INSTALL=post-install \
     
    14252101where the file `pre-install.awk' could contain this:
    14262102
    1427      $0 ~ /^\t[ \t]*(normal_install|post_install)[ \t]*$/ {on = 0}
     2103     $0 ~ /^(normal-install|post-install)[ \t]*$/ {on = 0}
    14282104     on {print $0}
    1429      $0 ~ /^\t[ \t]*pre_install[ \t]*$/ {on = 1}
    1430 
    1431    The resulting file of pre-installation commands is executed as a
    1432 shell script as part of installing the binary package.
     2105     $0 ~ /^pre-install[ \t]*$/ {on = 1}
    14332106
    14342107
    14352108File: make.info,  Node: Quick Reference,  Next: Error Messages,  Prev: Makefile Conventions,  Up: Top
    14362109
    1437 Quick Reference
    1438 ***************
     2110Appendix A Quick Reference
     2111**************************
    14392112
    14402113This appendix summarizes the directives, text manipulation functions,
     
    15042177     directive.
    15052178
    1506    Here is a summary of the text manipulation functions (*note
    1507 Functions::):
     2179   Here is a summary of the built-in functions (*note Functions::):
    15082180
    15092181`$(subst FROM,TO,TEXT)'
     
    15422214     Functions.
    15432215
     2216`$(word N,TEXT)'
     2217     Extract the Nth word (one-origin) of TEXT.
     2218     *Note Functions for String Substitution and Analysis: Text
     2219     Functions.
     2220
     2221`$(words TEXT)'
     2222     Count the number of words in TEXT.
     2223     *Note Functions for String Substitution and Analysis: Text
     2224     Functions.
     2225
     2226`$(wordlist S,E,TEXT)'
     2227     Returns the list of words in TEXT from S to E.
     2228     *Note Functions for String Substitution and Analysis: Text
     2229     Functions.
     2230
     2231`$(firstword NAMES...)'
     2232     Extract the first word of NAMES.
     2233     *Note Functions for String Substitution and Analysis: Text
     2234     Functions.
     2235
     2236`$(lastword NAMES...)'
     2237     Extract the last word of NAMES.
     2238     *Note Functions for String Substitution and Analysis: Text
     2239     Functions.
     2240
    15442241`$(dir NAMES...)'
    15452242     Extract the directory part of each file name.
     
    15712268     *Note Functions for File Names: File Name Functions.
    15722269
    1573 `$(word N,TEXT)'
    1574      Extract the Nth word (one-origin) of TEXT.
    1575      *Note Functions for File Names: File Name Functions.
    1576 
    1577 `$(words TEXT)'
    1578      Count the number of words in TEXT.
    1579      *Note Functions for File Names: File Name Functions.
    1580 
    1581 `$(wordlist S,E,TEXT)'
    1582      Returns the list of words in TEXT from S to E.
    1583      *Note Functions for File Names: File Name Functions.
    1584 
    1585 `$(firstword NAMES...)'
    1586      Extract the first word of NAMES.
    1587      *Note Functions for File Names: File Name Functions.
    1588 
    15892270`$(wildcard PATTERN...)'
    15902271     Find file names matching a shell file name pattern (_not_ a `%'
     
    15922273     *Note The Function `wildcard': Wildcard Function.
    15932274
     2275`$(realpath NAMES...)'
     2276     For each file name in NAMES, expand to an absolute name that does
     2277     not contain any `.', `..', nor symlinks.
     2278     *Note Functions for File Names: File Name Functions.
     2279
     2280`$(abspath NAMES...)'
     2281     For each file name in NAMES, expand to an absolute name that does
     2282     not contain any `.' or `..' components, but preserves symlinks.
     2283     *Note Functions for File Names: File Name Functions.
     2284
    15942285`$(error TEXT...)'
    15952286     When this function is evaluated, `make' generates a fatal error
     
    16102301     defined.
    16112302     *Note The `origin' Function: Origin Function.
     2303
     2304`$(flavor VARIABLE)'
     2305     Return a string describing the flavor of the `make' variable
     2306     VARIABLE.
     2307     *Note The `flavor' Function: Flavor Function.
    16122308
    16132309`$(foreach VAR,WORDS,TEXT)'
     
    17012397     `/bin/sh'.  You can set `SHELL' in the makefile to change the
    17022398     shell used to run commands.  *Note Command Execution: Execution.
     2399     The `SHELL' variable is handled specially when importing from and
     2400     exporting to the environment.  *Note Choosing the Shell::.
    17032401
    17042402`MAKESHELL'
    17052403     On MS-DOS only, the name of the command interpreter that is to be
    1706      used by `make'. This value takes precedence over the value of
     2404     used by `make'.  This value takes precedence over the value of
    17072405     `SHELL'.  *Note MAKESHELL variable: Execution.
    17082406
     
    17482446File: make.info,  Node: Error Messages,  Next: Complex Makefile,  Prev: Quick Reference,  Up: Top
    17492447
    1750 Errors Generated by Make
    1751 ************************
     2448Appendix B Errors Generated by Make
     2449***********************************
    17522450
    17532451Here is a list of the more common errors you might see generated by
     
    18222520     on the command line, and `make' couldn't find any makefiles to
    18232521     read in.  The latter means that some makefile was found, but it
    1824      didn't contain any default target and none was given on the
    1825      command line.  GNU `make' has nothing to do in these situations.
    1826      *Note Arguments to Specify the Makefile: Makefile Arguments.
     2522     didn't contain any default goal and none was given on the command
     2523     line.  GNU `make' has nothing to do in these situations.  *Note
     2524     Arguments to Specify the Makefile: Makefile Arguments.
    18272525
    18282526`Makefile `XXX' was not found.'
     
    19012599File: make.info,  Node: Complex Makefile,  Next: GNU Free Documentation License,  Prev: Error Messages,  Up: Top
    19022600
    1903 Complex Makefile Example
    1904 ************************
     2601Appendix C Complex Makefile Example
     2602***********************************
    19052603
    19062604Here is the makefile for the GNU `tar' program.  This is a moderately
     
    19382636     # Un*x Makefile for GNU tar program.
    19392637     # Copyright (C) 1991 Free Software Foundation, Inc.
    1940      
     2638
    19412639     # This program is free software; you can redistribute
    19422640     # it and/or modify it under the terms of the GNU
     
    19442642     ...
    19452643     ...
    1946      
     2644
    19472645     SHELL = /bin/sh
    1948      
     2646
    19492647     #### Start of system configuration section. ####
    1950      
     2648
    19512649     srcdir = .
    1952      
     2650
    19532651     # If you use gcc, you should either run the
    19542652     # fixincludes script that comes with it or else use
     
    19592657     INSTALL = /usr/local/bin/install -c
    19602658     INSTALLDATA = /usr/local/bin/install -c -m 644
    1961      
     2659
    19622660     # Things you might add to DEFS:
    19632661     # -DSTDC_HEADERS        If you have ANSI C headers and
     
    20102708     # -DXENIX               If you have sys/inode.h
    20112709     #                       and need it 94 to be included.
    2012      
     2710
    20132711     DEFS =  -DSIGTYPE=int -DDIRENT -DSTRSTR_MISSING \
    20142712             -DVPRINTF_MISSING -DBSD42
     
    20192717     DEF_AR_FILE = /dev/rmt8
    20202718     DEFBLOCKING = 20
    2021      
     2719
    20222720     CDEBUG = -g
    20232721     CFLAGS = $(CDEBUG) -I. -I$(srcdir) $(DEFS) \
     
    20252723             -DDEFBLOCKING=$(DEFBLOCKING)
    20262724     LDFLAGS = -g
    2027      
     2725
    20282726     prefix = /usr/local
    20292727     # Prefix for each installed program,
    20302728     # normally empty or `g'.
    20312729     binprefix =
    2032      
     2730
    20332731     # The directory to install tar in.
    20342732     bindir = $(prefix)/bin
    2035      
     2733
    20362734     # The directory to install the info files in.
    20372735     infodir = $(prefix)/info
    2038      
     2736
    20392737     #### End of system configuration section. ####
    2040      
     2738
    20412739     SRC1 =  tar.c create.c extract.c buffer.c \
    20422740             getoldopt.c update.c gnu.c mangle.c
     
    20582756             msd_dir.h msd_dir.c tcexparg.c \
    20592757             level-0 level-1 backup-specs testpad.c
    2060      
     2758
     2759     .PHONY: all
    20612760     all:    tar rmt tar.info
    2062      
     2761
     2762     .PHONY: tar
    20632763     tar:    $(OBJS)
    20642764             $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
    2065      
     2765
    20662766     rmt:    rmt.c
    20672767             $(CC) $(CFLAGS) $(LDFLAGS) -o $@ rmt.c
    2068      
     2768
    20692769     tar.info: tar.texinfo
    20702770             makeinfo tar.texinfo
    2071      
     2771
     2772     .PHONY: install
    20722773     install: all
    20732774             $(INSTALL) tar $(bindir)/$(binprefix)tar
    20742775             -test ! -f rmt || $(INSTALL) rmt /etc/rmt
    20752776             $(INSTALLDATA) $(srcdir)/tar.info* $(infodir)
    2076      
     2777
    20772778     $(OBJS): tar.h port.h testpad.h
    20782779     regex.o buffer.o tar.o: regex.h
    20792780     # getdate.y has 8 shift/reduce conflicts.
    2080      
     2781
    20812782     testpad.h: testpad
    20822783             ./testpad
    2083      
     2784
    20842785     testpad: testpad.o
    20852786             $(CC) -o $@ testpad.o
    2086      
     2787
    20872788     TAGS:   $(SRCS)
    20882789             etags $(SRCS)
    2089      
     2790
     2791     .PHONY: clean
    20902792     clean:
    20912793             rm -f *.o tar rmt testpad testpad.h core
    2092      
     2794
     2795     .PHONY: distclean
    20932796     distclean: clean
    20942797             rm -f TAGS Makefile config.status
    2095      
     2798
     2799     .PHONY: realclean
    20962800     realclean: distclean
    20972801             rm -f tar.info*
    2098      
     2802
     2803     .PHONY: shar
    20992804     shar: $(SRCS) $(AUX)
    21002805             shar $(SRCS) $(AUX) | compress \
     
    21032808                          -e q
    21042809                          version.c`.shar.Z
    2105      
     2810
     2811     .PHONY: dist
    21062812     dist: $(SRCS) $(AUX)
    21072813             echo tar-`sed \
     
    21152821             tar chZf `cat .fname`.tar.Z `cat .fname`
    21162822             -rm -rf `cat .fname` .fname
    2117      
     2823
    21182824     tar.zoo: $(SRCS) $(AUX)
    21192825             -rm -rf tmp.dir
     
    21302836File: make.info,  Node: GNU Free Documentation License,  Next: Concept Index,  Prev: Complex Makefile,  Up: Top
    21312837
    2132 GNU Free Documentation License
    2133 ******************************
    2134 
    2135                         Version 1.1, March 2000
    2136      Copyright (C) 2000 Free Software Foundation, Inc.
    2137      59 Temple Place, Suite 330, Boston, MA  02111-1307, USA
    2138      
     2838Appendix D GNU Free Documentation License
     2839*****************************************
     2840
     2841                      Version 1.2, November 2002
     2842
     2843     Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
     2844     51 Franklin St, Fifth Floor, Boston, MA  02110-1301, USA
     2845
    21392846     Everyone is permitted to copy and distribute verbatim copies
    21402847     of this license document, but changing it is not allowed.
     
    21432850
    21442851     The purpose of this License is to make a manual, textbook, or other
    2145      written document "free" in the sense of freedom: to assure everyone
    2146      the effective freedom to copy and redistribute it, with or without
    2147      modifying it, either commercially or noncommercially.  Secondarily,
    2148      this License preserves for the author and publisher a way to get
    2149      credit for their work, while not being considered responsible for
    2150      modifications made by others.
     2852     functional and useful document "free" in the sense of freedom: to
     2853     assure everyone the effective freedom to copy and redistribute it,
     2854     with or without modifying it, either commercially or
     2855     noncommercially.  Secondarily, this License preserves for the
     2856     author and publisher a way to get credit for their work, while not
     2857     being considered responsible for modifications made by others.
    21512858
    21522859     This License is a kind of "copyleft", which means that derivative
     
    21662873  1. APPLICABILITY AND DEFINITIONS
    21672874
    2168      This License applies to any manual or other work that contains a
    2169      notice placed by the copyright holder saying it can be distributed
    2170      under the terms of this License.  The "Document", below, refers to
    2171      any such manual or work.  Any member of the public is a licensee,
    2172      and is addressed as "you".
     2875     This License applies to any manual or other work, in any medium,
     2876     that contains a notice placed by the copyright holder saying it
     2877     can be distributed under the terms of this License.  Such a notice
     2878     grants a world-wide, royalty-free license, unlimited in duration,
     2879     to use that work under the conditions stated herein.  The
     2880     "Document", below, refers to any such manual or work.  Any member
     2881     of the public is a licensee, and is addressed as "you".  You
     2882     accept the license if you copy, modify or distribute the work in a
     2883     way requiring permission under copyright law.
    21732884
    21742885     A "Modified Version" of the Document means any work containing the
     
    21762887     modifications and/or translated into another language.
    21772888
    2178      A "Secondary Section" is a named appendix or a front-matter
    2179      section of the Document that deals exclusively with the
    2180      relationship of the publishers or authors of the Document to the
    2181      Document's overall subject (or to related matters) and contains
    2182      nothing that could fall directly within that overall subject.
    2183      (For example, if the Document is in part a textbook of
    2184      mathematics, a Secondary Section may not explain any mathematics.)
    2185      The relationship could be a matter of historical connection with
    2186      the subject or with related matters, or of legal, commercial,
    2187      philosophical, ethical or political position regarding them.
     2889     A "Secondary Section" is a named appendix or a front-matter section
     2890     of the Document that deals exclusively with the relationship of the
     2891     publishers or authors of the Document to the Document's overall
     2892     subject (or to related matters) and contains nothing that could
     2893     fall directly within that overall subject.  (Thus, if the Document
     2894     is in part a textbook of mathematics, a Secondary Section may not
     2895     explain any mathematics.)  The relationship could be a matter of
     2896     historical connection with the subject or with related matters, or
     2897     of legal, commercial, philosophical, ethical or political position
     2898     regarding them.
    21882899
    21892900     The "Invariant Sections" are certain Secondary Sections whose
    21902901     titles are designated, as being those of Invariant Sections, in
    21912902     the notice that says that the Document is released under this
    2192      License.
     2903     License.  If a section does not fit the above definition of
     2904     Secondary then it is not allowed to be designated as Invariant.
     2905     The Document may contain zero Invariant Sections.  If the Document
     2906     does not identify any Invariant Sections then there are none.
    21932907
    21942908     The "Cover Texts" are certain short passages of text that are
    21952909     listed, as Front-Cover Texts or Back-Cover Texts, in the notice
    2196      that says that the Document is released under this License.
     2910     that says that the Document is released under this License.  A
     2911     Front-Cover Text may be at most 5 words, and a Back-Cover Text may
     2912     be at most 25 words.
    21972913
    21982914     A "Transparent" copy of the Document means a machine-readable copy,
    21992915     represented in a format whose specification is available to the
    2200      general public, whose contents can be viewed and edited directly
    2201      and straightforwardly with generic text editors or (for images
     2916     general public, that is suitable for revising the document
     2917     straightforwardly with generic text editors or (for images
    22022918     composed of pixels) generic paint programs or (for drawings) some
    22032919     widely available drawing editor, and that is suitable for input to
    22042920     text formatters or for automatic translation to a variety of
    22052921     formats suitable for input to text formatters.  A copy made in an
    2206      otherwise Transparent file format whose markup has been designed
    2207      to thwart or discourage subsequent modification by readers is not
    2208      Transparent.  A copy that is not "Transparent" is called "Opaque".
     2922     otherwise Transparent file format whose markup, or absence of
     2923     markup, has been arranged to thwart or discourage subsequent
     2924     modification by readers is not Transparent.  An image format is
     2925     not Transparent if used for any substantial amount of text.  A
     2926     copy that is not "Transparent" is called "Opaque".
    22092927
    22102928     Examples of suitable formats for Transparent copies include plain
    22112929     ASCII without markup, Texinfo input format, LaTeX input format,
    22122930     SGML or XML using a publicly available DTD, and
    2213      standard-conforming simple HTML designed for human modification.
    2214      Opaque formats include PostScript, PDF, proprietary formats that
    2215      can be read and edited only by proprietary word processors, SGML
    2216      or XML for which the DTD and/or processing tools are not generally
    2217      available, and the machine-generated HTML produced by some word
    2218      processors for output purposes only.
     2931     standard-conforming simple HTML, PostScript or PDF designed for
     2932     human modification.  Examples of transparent image formats include
     2933     PNG, XCF and JPG.  Opaque formats include proprietary formats that
     2934     can be read and edited only by proprietary word processors, SGML or
     2935     XML for which the DTD and/or processing tools are not generally
     2936     available, and the machine-generated HTML, PostScript or PDF
     2937     produced by some word processors for output purposes only.
    22192938
    22202939     The "Title Page" means, for a printed book, the title page itself,
     
    22242943     Page" means the text near the most prominent appearance of the
    22252944     work's title, preceding the beginning of the body of the text.
     2945
     2946     A section "Entitled XYZ" means a named subunit of the Document
     2947     whose title either is precisely XYZ or contains XYZ in parentheses
     2948     following text that translates XYZ in another language.  (Here XYZ
     2949     stands for a specific section name mentioned below, such as
     2950     "Acknowledgements", "Dedications", "Endorsements", or "History".)
     2951     To "Preserve the Title" of such a section when you modify the
     2952     Document means that it remains a section "Entitled XYZ" according
     2953     to this definition.
     2954
     2955     The Document may include Warranty Disclaimers next to the notice
     2956     which states that this License applies to the Document.  These
     2957     Warranty Disclaimers are considered to be included by reference in
     2958     this License, but only as regards disclaiming warranties: any other
     2959     implication that these Warranty Disclaimers may have is void and
     2960     has no effect on the meaning of this License.
    22262961
    22272962  2. VERBATIM COPYING
     
    22432978  3. COPYING IN QUANTITY
    22442979
    2245      If you publish printed copies of the Document numbering more than
    2246      100, and the Document's license notice requires Cover Texts, you
    2247      must enclose the copies in covers that carry, clearly and legibly,
    2248      all these Cover Texts: Front-Cover Texts on the front cover, and
     2980     If you publish printed copies (or copies in media that commonly
     2981     have printed covers) of the Document, numbering more than 100, and
     2982     the Document's license notice requires Cover Texts, you must
     2983     enclose the copies in covers that carry, clearly and legibly, all
     2984     these Cover Texts: Front-Cover Texts on the front cover, and
    22492985     Back-Cover Texts on the back cover.  Both covers must also clearly
    22502986     and legibly identify you as the publisher of these copies.  The
     
    22643000     numbering more than 100, you must either include a
    22653001     machine-readable Transparent copy along with each Opaque copy, or
    2266      state in or with each Opaque copy a publicly-accessible
    2267      computer-network location containing a complete Transparent copy
    2268      of the Document, free of added material, which the general
    2269      network-using public has access to download anonymously at no
    2270      charge using public-standard network protocols.  If you use the
     3002     state in or with each Opaque copy a computer-network location from
     3003     which the general network-using public has access to download
     3004     using public-standard network protocols a complete Transparent
     3005     copy of the Document, free of added material.  If you use the
    22713006     latter option, you must take reasonably prudent steps, when you
    22723007     begin distribution of Opaque copies in quantity, to ensure that
     
    23023037          the Modified Version, together with at least five of the
    23033038          principal authors of the Document (all of its principal
    2304           authors, if it has less than five).
     3039          authors, if it has fewer than five), unless they release you
     3040          from this requirement.
    23053041
    23063042       C. State on the Title page the name of the publisher of the
     
    23233059       H. Include an unaltered copy of this License.
    23243060
    2325        I. Preserve the section entitled "History", and its title, and
    2326           add to it an item stating at least the title, year, new
     3061       I. Preserve the section Entitled "History", Preserve its Title,
     3062          and add to it an item stating at least the title, year, new
    23273063          authors, and publisher of the Modified Version as given on
    2328           the Title Page.  If there is no section entitled "History" in
     3064          the Title Page.  If there is no section Entitled "History" in
    23293065          the Document, create one stating the title, year, authors,
    23303066          and publisher of the Document as given on its Title Page,
     
    23413077          it refers to gives permission.
    23423078
    2343        K. In any section entitled "Acknowledgments" or "Dedications",
    2344           preserve the section's title, and preserve in the section all
    2345           the substance and tone of each of the contributor
    2346           acknowledgments and/or dedications given therein.
     3079       K. For any section Entitled "Acknowledgements" or "Dedications",
     3080          Preserve the Title of the section, and preserve in the
     3081          section all the substance and tone of each of the contributor
     3082          acknowledgements and/or dedications given therein.
    23473083
    23483084       L. Preserve all the Invariant Sections of the Document,
     
    23513087          titles.
    23523088
    2353        M. Delete any section entitled "Endorsements".  Such a section
     3089       M. Delete any section Entitled "Endorsements".  Such a section
    23543090          may not be included in the Modified Version.
    23553091
    2356        N. Do not retitle any existing section as "Endorsements" or to
    2357           conflict in title with any Invariant Section.
     3092       N. Do not retitle any existing section to be Entitled
     3093          "Endorsements" or to conflict in title with any Invariant
     3094          Section.
     3095
     3096       O. Preserve any Warranty Disclaimers.
    23583097
    23593098     If the Modified Version includes new front-matter sections or
     
    23653104     other section titles.
    23663105
    2367      You may add a section entitled "Endorsements", provided it contains
     3106     You may add a section Entitled "Endorsements", provided it contains
    23683107     nothing but endorsements of your Modified Version by various
    23693108     parties--for example, statements of peer review or that the text
     
    23933132     all of the Invariant Sections of all of the original documents,
    23943133     unmodified, and list them all as Invariant Sections of your
    2395      combined work in its license notice.
     3134     combined work in its license notice, and that you preserve all
     3135     their Warranty Disclaimers.
    23963136
    23973137     The combined work need only contain one copy of this License, and
     
    24053145     combined work.
    24063146
    2407      In the combination, you must combine any sections entitled
     3147     In the combination, you must combine any sections Entitled
    24083148     "History" in the various original documents, forming one section
    2409      entitled "History"; likewise combine any sections entitled
    2410      "Acknowledgments", and any sections entitled "Dedications".  You
    2411      must delete all sections entitled "Endorsements."
     3149     Entitled "History"; likewise combine any sections Entitled
     3150     "Acknowledgements", and any sections Entitled "Dedications".  You
     3151     must delete all sections Entitled "Endorsements."
    24123152
    24133153  6. COLLECTIONS OF DOCUMENTS
     
    24303170     A compilation of the Document or its derivatives with other
    24313171     separate and independent documents or works, in or on a volume of
    2432      a storage or distribution medium, does not as a whole count as a
    2433      Modified Version of the Document, provided no compilation
    2434      copyright is claimed for the compilation.  Such a compilation is
    2435      called an "aggregate", and this License does not apply to the
    2436      other self-contained works thus compiled with the Document, on
    2437      account of their being thus compiled, if they are not themselves
    2438      derivative works of the Document.
     3172     a storage or distribution medium, is called an "aggregate" if the
     3173     copyright resulting from the compilation is not used to limit the
     3174     legal rights of the compilation's users beyond what the individual
     3175     works permit.  When the Document is included in an aggregate, this
     3176     License does not apply to the other works in the aggregate which
     3177     are not themselves derivative works of the Document.
    24393178
    24403179     If the Cover Text requirement of section 3 is applicable to these
    2441      copies of the Document, then if the Document is less than one
    2442      quarter of the entire aggregate, the Document's Cover Texts may be
    2443      placed on covers that surround only the Document within the
    2444      aggregate.  Otherwise they must appear on covers around the whole
    2445      aggregate.
     3180     copies of the Document, then if the Document is less than one half
     3181     of the entire aggregate, the Document's Cover Texts may be placed
     3182     on covers that bracket the Document within the aggregate, or the
     3183     electronic equivalent of covers if the Document is in electronic
     3184     form.  Otherwise they must appear on printed covers that bracket
     3185     the whole aggregate.
    24463186
    24473187  8. TRANSLATION
     
    24533193     translations of some or all Invariant Sections in addition to the
    24543194     original versions of these Invariant Sections.  You may include a
    2455      translation of this License provided that you also include the
    2456      original English version of this License.  In case of a
    2457      disagreement between the translation and the original English
    2458      version of this License, the original English version will prevail.
     3195     translation of this License, and all the license notices in the
     3196     Document, and any Warranty Disclaimers, provided that you also
     3197     include the original English version of this License and the
     3198     original versions of those notices and disclaimers.  In case of a
     3199     disagreement between the translation and the original version of
     3200     this License or a notice or disclaimer, the original version will
     3201     prevail.
     3202
     3203     If a section in the Document is Entitled "Acknowledgements",
     3204     "Dedications", or "History", the requirement (section 4) to
     3205     Preserve its Title (section 1) will typically require changing the
     3206     actual title.
    24593207
    24603208  9. TERMINATION
     
    24863234     Free Software Foundation.
    24873235
    2488 ADDENDUM: How to use this License for your documents
    2489 ====================================================
     3236D.1 ADDENDUM: How to use this License for your documents
     3237========================================================
    24903238
    24913239To use this License in a document you have written, include a copy of
     
    24953243       Copyright (C)  YEAR  YOUR NAME.
    24963244       Permission is granted to copy, distribute and/or modify this document
    2497        under the terms of the GNU Free Documentation License, Version 1.1
     3245       under the terms of the GNU Free Documentation License, Version 1.2
    24983246       or any later version published by the Free Software Foundation;
    2499        with the Invariant Sections being LIST THEIR TITLES, with the
    2500        Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
    2501        A copy of the license is included in the section entitled ``GNU
     3247       with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
     3248       Texts.  A copy of the license is included in the section entitled ``GNU
    25023249       Free Documentation License''.
    25033250
    2504    If you have no Invariant Sections, write "with no Invariant Sections"
    2505 instead of saying which ones are invariant.  If you have no Front-Cover
    2506 Texts, write "no Front-Cover Texts" instead of "Front-Cover Texts being
    2507 LIST"; likewise for Back-Cover Texts.
     3251   If you have Invariant Sections, Front-Cover Texts and Back-Cover
     3252Texts, replace the "with...Texts." line with this:
     3253
     3254         with the Invariant Sections being LIST THEIR TITLES, with
     3255         the Front-Cover Texts being LIST, and with the Back-Cover Texts
     3256         being LIST.
     3257
     3258   If you have Invariant Sections without Cover Texts, or some other
     3259combination of the three, merge those two alternatives to suit the
     3260situation.
    25083261
    25093262   If your document contains nontrivial examples of program code, we
     
    25183271*****************
    25193272
     3273[index]
    25203274* Menu:
    25213275
    2522 * # (comments), in commands:             Commands.
    2523 * # (comments), in makefile:             Makefile Contents.
     3276* # (comments), in commands:             Command Syntax.      (line  27)
     3277* # (comments), in makefile:             Makefile Contents.   (line  41)
    25243278* #include:                              Automatic Prerequisites.
    2525 * $$@, support for:                      Automatic Variables.
    2526 * $, in function call:                   Syntax of Functions.
    2527 * $, in rules:                           Rule Syntax.
    2528 * $, in variable name:                   Computed Names.
    2529 * $, in variable reference:              Reference.
    2530 * %, in pattern rules:                   Pattern Intro.
    2531 * %, quoting in patsubst:                Text Functions.
    2532 * %, quoting in static pattern:          Static Usage.
    2533 * %, quoting in vpath:                   Selective Search.
    2534 * %, quoting with \ (backslash) <1>:     Text Functions.
    2535 * %, quoting with \ (backslash) <2>:     Static Usage.
    2536 * %, quoting with \ (backslash):         Selective Search.
    2537 * * (wildcard character):                Wildcards.
     3279                                                              (line  16)
     3280* $, in function call:                   Syntax of Functions. (line   6)
     3281* $, in rules:                           Rule Syntax.         (line  32)
     3282* $, in variable name:                   Computed Names.      (line   6)
     3283* $, in variable reference:              Reference.           (line   6)
     3284* %, in pattern rules:                   Pattern Intro.       (line   9)
     3285* %, quoting in patsubst:                Text Functions.      (line  26)
     3286* %, quoting in static pattern:          Static Usage.        (line  37)
     3287* %, quoting in vpath:                   Selective Search.    (line  38)
     3288* %, quoting with \ (backslash) <1>:     Text Functions.      (line  26)
     3289* %, quoting with \ (backslash) <2>:     Static Usage.        (line  37)
     3290* %, quoting with \ (backslash):         Selective Search.    (line  38)
     3291* * (wildcard character):                Wildcards.           (line   6)
    25383292* +, and command execution:              Instead of Execution.
    2539 * +, and commands:                       MAKE Variable.
    2540 * +, and define:                         Sequences.
    2541 * +=:                                    Appending.
    2542 * +=, expansion:                         Reading Makefiles.
    2543 * ,v (RCS file extension):               Catalogue of Rules.
    2544 * - (in commands):                       Errors.
    2545 * -, and define:                         Sequences.
    2546 * --always-make:                         Options Summary.
    2547 * --assume-new <1>:                      Options Summary.
     3293                                                              (line  58)
     3294* +, and commands:                       MAKE Variable.       (line  18)
     3295* +, and define:                         Sequences.           (line  50)
     3296* +=:                                    Appending.           (line   6)
     3297* +=, expansion:                         Reading Makefiles.   (line  33)
     3298* ,v (RCS file extension):               Catalogue of Rules.  (line 164)
     3299* - (in commands):                       Errors.              (line  19)
     3300* -, and define:                         Sequences.           (line  50)
     3301* --always-make:                         Options Summary.     (line  15)
     3302* --assume-new <1>:                      Options Summary.     (line 242)
    25483303* --assume-new:                          Instead of Execution.
    2549 * --assume-new, and recursion:           Options/Recursion.
    2550 * --assume-old <1>:                      Options Summary.
     3304                                                              (line  33)
     3305* --assume-new, and recursion:           Options/Recursion.   (line  22)
     3306* --assume-old <1>:                      Options Summary.     (line 147)
    25513307* --assume-old:                          Avoiding Compilation.
    2552 * --assume-old, and recursion:           Options/Recursion.
    2553 * --debug:                               Options Summary.
    2554 * --directory <1>:                       Options Summary.
    2555 * --directory:                           Recursion.
    2556 * --directory, and --print-directory:    -w Option.
    2557 * --directory, and recursion:            Options/Recursion.
    2558 * --dry-run <1>:                         Options Summary.
     3308                                                              (line   6)
     3309* --assume-old, and recursion:           Options/Recursion.   (line  22)
     3310* --check-symlink-times:                 Options Summary.     (line 130)
     3311* --debug:                               Options Summary.     (line  42)
     3312* --directory <1>:                       Options Summary.     (line  26)
     3313* --directory:                           Recursion.           (line  20)
     3314* --directory, and --print-directory:    -w Option.           (line  20)
     3315* --directory, and recursion:            Options/Recursion.   (line  22)
     3316* --dry-run <1>:                         Options Summary.     (line 140)
    25593317* --dry-run <2>:                         Instead of Execution.
    2560 * --dry-run:                             Echoing.
    2561 * --environment-overrides:               Options Summary.
    2562 * --file <1>:                            Options Summary.
    2563 * --file <2>:                            Makefile Arguments.
    2564 * --file:                                Makefile Names.
    2565 * --file, and recursion:                 Options/Recursion.
    2566 * --help:                                Options Summary.
    2567 * --ignore-errors <1>:                   Options Summary.
    2568 * --ignore-errors:                       Errors.
    2569 * --include-dir <1>:                     Options Summary.
    2570 * --include-dir:                         Include.
    2571 * --jobs <1>:                            Options Summary.
    2572 * --jobs:                                Parallel.
    2573 * --jobs, and recursion:                 Options/Recursion.
    2574 * --just-print <1>:                      Options Summary.
     3318                                                              (line  14)
     3319* --dry-run:                             Echoing.             (line  18)
     3320* --environment-overrides:               Options Summary.     (line  78)
     3321* --file <1>:                            Options Summary.     (line  84)
     3322* --file <2>:                            Makefile Arguments.  (line   6)
     3323* --file:                                Makefile Names.      (line  23)
     3324* --file, and recursion:                 Options/Recursion.   (line  22)
     3325* --help:                                Options Summary.     (line  90)
     3326* --ignore-errors <1>:                   Options Summary.     (line  94)
     3327* --ignore-errors:                       Errors.              (line  30)
     3328* --include-dir <1>:                     Options Summary.     (line  99)
     3329* --include-dir:                         Include.             (line  52)
     3330* --jobs <1>:                            Options Summary.     (line 106)
     3331* --jobs:                                Parallel.            (line   6)
     3332* --jobs, and recursion:                 Options/Recursion.   (line  25)
     3333* --just-print <1>:                      Options Summary.     (line 139)
    25753334* --just-print <2>:                      Instead of Execution.
    2576 * --just-print:                          Echoing.
    2577 * --keep-going <1>:                      Options Summary.
    2578 * --keep-going <2>:                      Testing.
    2579 * --keep-going:                          Errors.
    2580 * --load-average <1>:                    Options Summary.
    2581 * --load-average:                        Parallel.
    2582 * --makefile <1>:                        Options Summary.
    2583 * --makefile <2>:                        Makefile Arguments.
    2584 * --makefile:                            Makefile Names.
    2585 * --max-load <1>:                        Options Summary.
    2586 * --max-load:                            Parallel.
    2587 * --new-file <1>:                        Options Summary.
     3335                                                              (line  14)
     3336* --just-print:                          Echoing.             (line  18)
     3337* --keep-going <1>:                      Options Summary.     (line 115)
     3338* --keep-going <2>:                      Testing.             (line  16)
     3339* --keep-going:                          Errors.              (line  47)
     3340* --load-average <1>:                    Options Summary.     (line 122)
     3341* --load-average:                        Parallel.            (line  57)
     3342* --makefile <1>:                        Options Summary.     (line  85)
     3343* --makefile <2>:                        Makefile Arguments.  (line   6)
     3344* --makefile:                            Makefile Names.      (line  23)
     3345* --max-load <1>:                        Options Summary.     (line 123)
     3346* --max-load:                            Parallel.            (line  57)
     3347* --new-file <1>:                        Options Summary.     (line 241)
    25883348* --new-file:                            Instead of Execution.
    2589 * --new-file, and recursion:             Options/Recursion.
    2590 * --no-builtin-rules:                    Options Summary.
    2591 * --no-builtin-variables:                Options Summary.
    2592 * --no-keep-going:                       Options Summary.
    2593 * --no-print-directory <1>:              Options Summary.
    2594 * --no-print-directory:                  -w Option.
    2595 * --old-file <1>:                        Options Summary.
     3349                                                              (line  33)
     3350* --new-file, and recursion:             Options/Recursion.   (line  22)
     3351* --no-builtin-rules:                    Options Summary.     (line 175)
     3352* --no-builtin-variables:                Options Summary.     (line 188)
     3353* --no-keep-going:                       Options Summary.     (line 203)
     3354* --no-print-directory <1>:              Options Summary.     (line 233)
     3355* --no-print-directory:                  -w Option.           (line  20)
     3356* --old-file <1>:                        Options Summary.     (line 146)
    25963357* --old-file:                            Avoiding Compilation.
    2597 * --old-file, and recursion:             Options/Recursion.
    2598 * --print-data-base:                     Options Summary.
    2599 * --print-directory:                     Options Summary.
    2600 * --print-directory, and --directory:    -w Option.
    2601 * --print-directory, and recursion:      -w Option.
    2602 * --print-directory, disabling:          -w Option.
    2603 * --question <1>:                        Options Summary.
     3358                                                              (line   6)
     3359* --old-file, and recursion:             Options/Recursion.   (line  22)
     3360* --print-data-base:                     Options Summary.     (line 155)
     3361* --print-directory:                     Options Summary.     (line 225)
     3362* --print-directory, and --directory:    -w Option.           (line  20)
     3363* --print-directory, and recursion:      -w Option.           (line  20)
     3364* --print-directory, disabling:          -w Option.           (line  20)
     3365* --question <1>:                        Options Summary.     (line 167)
    26043366* --question:                            Instead of Execution.
    2605 * --quiet <1>:                           Options Summary.
    2606 * --quiet:                               Echoing.
    2607 * --recon <1>:                           Options Summary.
     3367                                                              (line  25)
     3368* --quiet <1>:                           Options Summary.     (line 198)
     3369* --quiet:                               Echoing.             (line  24)
     3370* --recon <1>:                           Options Summary.     (line 141)
    26083371* --recon <2>:                           Instead of Execution.
    2609 * --recon:                               Echoing.
    2610 * --silent <1>:                          Options Summary.
    2611 * --silent:                              Echoing.
    2612 * --stop:                                Options Summary.
    2613 * --touch <1>:                           Options Summary.
     3372                                                              (line  14)
     3373* --recon:                               Echoing.             (line  18)
     3374* --silent <1>:                          Options Summary.     (line 197)
     3375* --silent:                              Echoing.             (line  24)
     3376* --stop:                                Options Summary.     (line 204)
     3377* --touch <1>:                           Options Summary.     (line 212)
    26143378* --touch:                               Instead of Execution.
    2615 * --touch, and recursion:                MAKE Variable.
    2616 * --version:                             Options Summary.
    2617 * --warn-undefined-variables:            Options Summary.
    2618 * --what-if <1>:                         Options Summary.
     3379                                                              (line  19)
     3380* --touch, and recursion:                MAKE Variable.       (line  34)
     3381* --version:                             Options Summary.     (line 220)
     3382* --warn-undefined-variables:            Options Summary.     (line 251)
     3383* --what-if <1>:                         Options Summary.     (line 240)
    26193384* --what-if:                             Instead of Execution.
    2620 * -B:                                    Options Summary.
    2621 * -b:                                    Options Summary.
    2622 * -C <1>:                                Options Summary.
    2623 * -C:                                    Recursion.
    2624 * -C, and -w:                            -w Option.
    2625 * -C, and recursion:                     Options/Recursion.
    2626 * -d:                                    Options Summary.
    2627 * -e:                                    Options Summary.
     3385                                                              (line  33)
     3386* -B:                                    Options Summary.     (line  14)
     3387* -b:                                    Options Summary.     (line   9)
     3388* -C <1>:                                Options Summary.     (line  25)
     3389* -C:                                    Recursion.           (line  20)
     3390* -C, and -w:                            -w Option.           (line  20)
     3391* -C, and recursion:                     Options/Recursion.   (line  22)
     3392* -d:                                    Options Summary.     (line  33)
     3393* -e:                                    Options Summary.     (line  77)
    26283394* -e (shell flag):                       Automatic Prerequisites.
    2629 * -f <1>:                                Options Summary.
    2630 * -f <2>:                                Makefile Arguments.
    2631 * -f:                                    Makefile Names.
    2632 * -f, and recursion:                     Options/Recursion.
    2633 * -h:                                    Options Summary.
    2634 * -I:                                    Options Summary.
    2635 * -i <1>:                                Options Summary.
    2636 * -i:                                    Errors.
    2637 * -I:                                    Include.
    2638 * -j <1>:                                Options Summary.
    2639 * -j:                                    Parallel.
    2640 * -j, and archive update:                Archive Pitfalls.
    2641 * -j, and recursion:                     Options/Recursion.
    2642 * -k <1>:                                Options Summary.
    2643 * -k <2>:                                Testing.
    2644 * -k:                                    Errors.
    2645 * -l:                                    Options Summary.
    2646 * -l (library search):                   Libraries/Search.
    2647 * -l (load average):                     Parallel.
    2648 * -m:                                    Options Summary.
     3395                                                              (line  66)
     3396* -f <1>:                                Options Summary.     (line  83)
     3397* -f <2>:                                Makefile Arguments.  (line   6)
     3398* -f:                                    Makefile Names.      (line  23)
     3399* -f, and recursion:                     Options/Recursion.   (line  22)
     3400* -h:                                    Options Summary.     (line  89)
     3401* -I:                                    Options Summary.     (line  98)
     3402* -i <1>:                                Options Summary.     (line  93)
     3403* -i:                                    Errors.              (line  30)
     3404* -I:                                    Include.             (line  52)
     3405* -j <1>:                                Options Summary.     (line 105)
     3406* -j:                                    Parallel.            (line   6)
     3407* -j, and archive update:                Archive Pitfalls.    (line   6)
     3408* -j, and recursion:                     Options/Recursion.   (line  25)
     3409* -k <1>:                                Options Summary.     (line 114)
     3410* -k <2>:                                Testing.             (line  16)
     3411* -k:                                    Errors.              (line  47)
     3412* -L:                                    Options Summary.     (line 129)
     3413* -l:                                    Options Summary.     (line 121)
     3414* -l (library search):                   Libraries/Search.    (line   6)
     3415* -l (load average):                     Parallel.            (line  57)
     3416* -m:                                    Options Summary.     (line  10)
    26493417* -M (to compiler):                      Automatic Prerequisites.
     3418                                                              (line  18)
    26503419* -MM (to GNU compiler):                 Automatic Prerequisites.
    2651 * -n <1>:                                Options Summary.
     3420                                                              (line  68)
     3421* -n <1>:                                Options Summary.     (line 138)
    26523422* -n <2>:                                Instead of Execution.
    2653 * -n:                                    Echoing.
    2654 * -o <1>:                                Options Summary.
     3423                                                              (line  14)
     3424* -n:                                    Echoing.             (line  18)
     3425* -o <1>:                                Options Summary.     (line 145)
    26553426* -o:                                    Avoiding Compilation.
    2656 * -o, and recursion:                     Options/Recursion.
    2657 * -p:                                    Options Summary.
    2658 * -q <1>:                                Options Summary.
     3427                                                              (line   6)
     3428* -o, and recursion:                     Options/Recursion.   (line  22)
     3429* -p:                                    Options Summary.     (line 154)
     3430* -q <1>:                                Options Summary.     (line 166)
    26593431* -q:                                    Instead of Execution.
    2660 * -R:                                    Options Summary.
    2661 * -r:                                    Options Summary.
    2662 * -S:                                    Options Summary.
    2663 * -s <1>:                                Options Summary.
    2664 * -s:                                    Echoing.
    2665 * -t <1>:                                Options Summary.
     3432                                                              (line  25)
     3433* -R:                                    Options Summary.     (line 187)
     3434* -r:                                    Options Summary.     (line 174)
     3435* -S:                                    Options Summary.     (line 202)
     3436* -s <1>:                                Options Summary.     (line 196)
     3437* -s:                                    Echoing.             (line  24)
     3438* -t <1>:                                Options Summary.     (line 211)
    26663439* -t:                                    Instead of Execution.
    2667 * -t, and recursion:                     MAKE Variable.
    2668 * -v:                                    Options Summary.
    2669 * -W:                                    Options Summary.
    2670 * -w:                                    Options Summary.
     3440                                                              (line  19)
     3441* -t, and recursion:                     MAKE Variable.       (line  34)
     3442* -v:                                    Options Summary.     (line 219)
     3443* -W:                                    Options Summary.     (line 239)
     3444* -w:                                    Options Summary.     (line 224)
    26713445* -W:                                    Instead of Execution.
    2672 * -w, and -C:                            -w Option.
    2673 * -w, and recursion:                     -w Option.
    2674 * -W, and recursion:                     Options/Recursion.
    2675 * -w, disabling:                         -w Option.
     3446                                                              (line  33)
     3447* -w, and -C:                            -w Option.           (line  20)
     3448* -w, and recursion:                     -w Option.           (line  20)
     3449* -W, and recursion:                     Options/Recursion.   (line  22)
     3450* -w, disabling:                         -w Option.           (line  20)
    26763451* .a (archives):                         Archive Suffix Rules.
    2677 * .C:                                    Catalogue of Rules.
    2678 * .c:                                    Catalogue of Rules.
    2679 * .cc:                                   Catalogue of Rules.
    2680 * .ch:                                   Catalogue of Rules.
     3452                                                              (line   6)
     3453* .C:                                    Catalogue of Rules.  (line  39)
     3454* .c:                                    Catalogue of Rules.  (line  35)
     3455* .cc:                                   Catalogue of Rules.  (line  39)
     3456* .ch:                                   Catalogue of Rules.  (line 151)
     3457* .cpp:                                  Catalogue of Rules.  (line  39)
    26813458* .d:                                    Automatic Prerequisites.
    2682 * .def:                                  Catalogue of Rules.
    2683 * .dvi:                                  Catalogue of Rules.
    2684 * .F:                                    Catalogue of Rules.
    2685 * .f:                                    Catalogue of Rules.
    2686 * .info:                                 Catalogue of Rules.
    2687 * .l:                                    Catalogue of Rules.
    2688 * .LIBPATTERNS, and link libraries:      Libraries/Search.
    2689 * .ln:                                   Catalogue of Rules.
    2690 * .mod:                                  Catalogue of Rules.
    2691 * .o:                                    Catalogue of Rules.
    2692 * .p:                                    Catalogue of Rules.
    2693 * .PRECIOUS intermediate files:          Chained Rules.
    2694 * .r:                                    Catalogue of Rules.
    2695 * .S:                                    Catalogue of Rules.
    2696 * .s:                                    Catalogue of Rules.
    2697 * .sh:                                   Catalogue of Rules.
    2698 * .sym:                                  Catalogue of Rules.
    2699 * .tex:                                  Catalogue of Rules.
    2700 * .texi:                                 Catalogue of Rules.
    2701 * .texinfo:                              Catalogue of Rules.
    2702 * .txinfo:                               Catalogue of Rules.
    2703 * .w:                                    Catalogue of Rules.
    2704 * .web:                                  Catalogue of Rules.
    2705 * .y:                                    Catalogue of Rules.
    2706 * :: rules (double-colon):               Double-Colon.
    2707 * := <1>:                                Setting.
    2708 * :=:                                    Flavors.
    2709 * = <1>:                                 Setting.
    2710 * =:                                     Flavors.
    2711 * =, expansion:                          Reading Makefiles.
    2712 * ? (wildcard character):                Wildcards.
    2713 * ?= <1>:                                Setting.
    2714 * ?=:                                    Flavors.
    2715 * ?=, expansion:                         Reading Makefiles.
    2716 * @ (in commands):                       Echoing.
    2717 * @, and define:                         Sequences.
    2718 * [...] (wildcard characters):           Wildcards.
    2719 * \ (backslash), for continuation lines: Simple Makefile.
    2720 * \ (backslash), in commands:            Execution.
    2721 * \ (backslash), to quote % <1>:         Text Functions.
    2722 * \ (backslash), to quote % <2>:         Static Usage.
    2723 * \ (backslash), to quote %:             Selective Search.
    2724 * __.SYMDEF:                             Archive Symbols.
    2725 * algorithm for directory search:        Search Algorithm.
    2726 * all (standard target):                 Goals.
    2727 * appending to variables:                Appending.
    2728 * ar:                                    Implicit Variables.
    2729 * archive:                               Archives.
    2730 * archive member targets:                Archive Members.
    2731 * archive symbol directory updating:     Archive Symbols.
    2732 * archive, and -j:                       Archive Pitfalls.
    2733 * archive, and parallel execution:       Archive Pitfalls.
     3459                                                              (line  81)
     3460* .def:                                  Catalogue of Rules.  (line  74)
     3461* .dvi:                                  Catalogue of Rules.  (line 151)
     3462* .F:                                    Catalogue of Rules.  (line  49)
     3463* .f:                                    Catalogue of Rules.  (line  49)
     3464* .info:                                 Catalogue of Rules.  (line 158)
     3465* .l:                                    Catalogue of Rules.  (line 124)
     3466* .LIBPATTERNS, and link libraries:      Libraries/Search.    (line   6)
     3467* .ln:                                   Catalogue of Rules.  (line 146)
     3468* .mod:                                  Catalogue of Rules.  (line  74)
     3469* .o:                                    Catalogue of Rules.  (line  35)
     3470* .p:                                    Catalogue of Rules.  (line  45)
     3471* .PRECIOUS intermediate files:          Chained Rules.       (line  56)
     3472* .r:                                    Catalogue of Rules.  (line  49)
     3473* .S:                                    Catalogue of Rules.  (line  82)
     3474* .s:                                    Catalogue of Rules.  (line  79)
     3475* .sh:                                   Catalogue of Rules.  (line 180)
     3476* .sym:                                  Catalogue of Rules.  (line  74)
     3477* .tex:                                  Catalogue of Rules.  (line 151)
     3478* .texi:                                 Catalogue of Rules.  (line 158)
     3479* .texinfo:                              Catalogue of Rules.  (line 158)
     3480* .txinfo:                               Catalogue of Rules.  (line 158)
     3481* .w:                                    Catalogue of Rules.  (line 151)
     3482* .web:                                  Catalogue of Rules.  (line 151)
     3483* .y:                                    Catalogue of Rules.  (line 120)
     3484* :: rules (double-colon):               Double-Colon.        (line   6)
     3485* := <1>:                                Setting.             (line   6)
     3486* :=:                                    Flavors.             (line  56)
     3487* = <1>:                                 Setting.             (line   6)
     3488* =:                                     Flavors.             (line  10)
     3489* =, expansion:                          Reading Makefiles.   (line  33)
     3490* ? (wildcard character):                Wildcards.           (line   6)
     3491* ?= <1>:                                Setting.             (line   6)
     3492* ?=:                                    Flavors.             (line 129)
     3493* ?=, expansion:                         Reading Makefiles.   (line  33)
     3494* @ (in commands):                       Echoing.             (line   6)
     3495* @, and define:                         Sequences.           (line  50)
     3496* [...] (wildcard characters):           Wildcards.           (line   6)
     3497* \ (backslash), for continuation lines: Simple Makefile.     (line  40)
     3498* \ (backslash), in commands:            Splitting Lines.     (line   6)
     3499* \ (backslash), to quote % <1>:         Text Functions.      (line  26)
     3500* \ (backslash), to quote % <2>:         Static Usage.        (line  37)
     3501* \ (backslash), to quote %:             Selective Search.    (line  38)
     3502* __.SYMDEF:                             Archive Symbols.     (line   6)
     3503* abspath:                               File Name Functions. (line 121)
     3504* algorithm for directory search:        Search Algorithm.    (line   6)
     3505* all (standard target):                 Goals.               (line  72)
     3506* appending to variables:                Appending.           (line   6)
     3507* ar:                                    Implicit Variables.  (line  41)
     3508* archive:                               Archives.            (line   6)
     3509* archive member targets:                Archive Members.     (line   6)
     3510* archive symbol directory updating:     Archive Symbols.     (line   6)
     3511* archive, and -j:                       Archive Pitfalls.    (line   6)
     3512* archive, and parallel execution:       Archive Pitfalls.    (line   6)
    27343513* archive, suffix rule for:              Archive Suffix Rules.
    2735 * Arg list too long:                     Options/Recursion.
    2736 * arguments of functions:                Syntax of Functions.
    2737 * as <1>:                                Implicit Variables.
    2738 * as:                                    Catalogue of Rules.
    2739 * assembly, rule to compile:             Catalogue of Rules.
     3514                                                              (line   6)
     3515* Arg list too long:                     Options/Recursion.   (line  57)
     3516* arguments of functions:                Syntax of Functions. (line   6)
     3517* as <1>:                                Implicit Variables.  (line  44)
     3518* as:                                    Catalogue of Rules.  (line  79)
     3519* assembly, rule to compile:             Catalogue of Rules.  (line  79)
    27403520* automatic generation of prerequisites <1>: Automatic Prerequisites.
    2741 * automatic generation of prerequisites: Include.
    2742 * automatic variables:                   Automatic Variables.
    2743 * automatic variables in prerequisites:  Automatic Variables.
    2744 * backquotes:                            Shell Function.
    2745 * backslash (\), for continuation lines: Simple Makefile.
    2746 * backslash (\), in commands:            Execution.
    2747 * backslash (\), to quote % <1>:         Text Functions.
    2748 * backslash (\), to quote % <2>:         Static Usage.
    2749 * backslash (\), to quote %:             Selective Search.
     3521                                                              (line   6)
     3522* automatic generation of prerequisites: Include.             (line  50)
     3523* automatic variables:                   Automatic Variables. (line   6)
     3524* automatic variables in prerequisites:  Automatic Variables. (line  17)
     3525* backquotes:                            Shell Function.      (line   6)
     3526* backslash (\), for continuation lines: Simple Makefile.     (line  40)
     3527* backslash (\), in commands:            Splitting Lines.     (line   6)
     3528* backslash (\), to quote % <1>:         Text Functions.      (line  26)
     3529* backslash (\), to quote % <2>:         Static Usage.        (line  37)
     3530* backslash (\), to quote %:             Selective Search.    (line  38)
    27503531* backslashes in pathnames and wildcard expansion: Wildcard Pitfall.
    2751 * basename:                              File Name Functions.
     3532                                                              (line  31)
     3533* basename:                              File Name Functions. (line  57)
    27523534* binary packages:                       Install Command Categories.
    2753 * broken pipe:                           Parallel.
    2754 * bugs, reporting:                       Bugs.
    2755 * built-in special targets:              Special Targets.
    2756 * C++, rule to compile:                  Catalogue of Rules.
    2757 * C, rule to compile:                    Catalogue of Rules.
    2758 * cc <1>:                                Implicit Variables.
    2759 * cc:                                    Catalogue of Rules.
    2760 * cd (shell command) <1>:                MAKE Variable.
    2761 * cd (shell command):                    Execution.
    2762 * chains of rules:                       Chained Rules.
    2763 * check (standard target):               Goals.
    2764 * clean (standard target):               Goals.
    2765 * clean target <1>:                      Cleanup.
    2766 * clean target:                          Simple Makefile.
    2767 * cleaning up:                           Cleanup.
    2768 * clobber (standard target):             Goals.
    2769 * co <1>:                                Implicit Variables.
    2770 * co:                                    Catalogue of Rules.
     3535                                                              (line  80)
     3536* broken pipe:                           Parallel.            (line  30)
     3537* bugs, reporting:                       Bugs.                (line   6)
     3538* built-in special targets:              Special Targets.     (line   6)
     3539* C++, rule to compile:                  Catalogue of Rules.  (line  39)
     3540* C, rule to compile:                    Catalogue of Rules.  (line  35)
     3541* cc <1>:                                Implicit Variables.  (line  47)
     3542* cc:                                    Catalogue of Rules.  (line  35)
     3543* cd (shell command) <1>:                MAKE Variable.       (line  16)
     3544* cd (shell command):                    Execution.           (line  10)
     3545* chains of rules:                       Chained Rules.       (line   6)
     3546* check (standard target):               Goals.               (line 114)
     3547* clean (standard target):               Goals.               (line  75)
     3548* clean target <1>:                      Cleanup.             (line  11)
     3549* clean target:                          Simple Makefile.     (line  83)
     3550* cleaning up:                           Cleanup.             (line   6)
     3551* clobber (standard target):             Goals.               (line  86)
     3552* co <1>:                                Implicit Variables.  (line  56)
     3553* co:                                    Catalogue of Rules.  (line 164)
    27713554* combining rules by prerequisite:       Combine By Prerequisite.
     3555                                                              (line   6)
    27723556* command line variable definitions, and recursion: Options/Recursion.
    2773 * command line variables:                Overriding.
    2774 * commands:                              Rule Syntax.
    2775 * commands, backslash (\) in:            Execution.
    2776 * commands, comments in:                 Commands.
    2777 * commands, echoing:                     Echoing.
    2778 * commands, empty:                       Empty Commands.
    2779 * commands, errors in:                   Errors.
    2780 * commands, execution:                   Execution.
    2781 * commands, execution in parallel:       Parallel.
    2782 * commands, expansion:                   Shell Function.
    2783 * commands, how to write:                Commands.
     3557                                                              (line  17)
     3558* command line variables:                Overriding.          (line   6)
     3559* command syntax:                        Command Syntax.      (line   6)
     3560* commands:                              Rule Syntax.         (line  26)
     3561* commands setting shell variables:      Execution.           (line  10)
     3562* commands, backslash (\) in:            Splitting Lines.     (line   6)
     3563* commands, comments in:                 Command Syntax.      (line  27)
     3564* commands, echoing:                     Echoing.             (line   6)
     3565* commands, empty:                       Empty Commands.      (line   6)
     3566* commands, errors in:                   Errors.              (line   6)
     3567* commands, execution:                   Execution.           (line   6)
     3568* commands, execution in parallel:       Parallel.            (line   6)
     3569* commands, expansion:                   Shell Function.      (line   6)
     3570* commands, how to write:                Commands.            (line   6)
    27843571* commands, instead of executing:        Instead of Execution.
    2785 * commands, introduction to:             Rule Introduction.
    2786 * commands, quoting newlines in:         Execution.
    2787 * commands, sequences of:                Sequences.
    2788 * comments, in commands:                 Commands.
    2789 * comments, in makefile:                 Makefile Contents.
    2790 * compatibility:                         Features.
    2791 * compatibility in exporting:            Variables/Recursion.
    2792 * compilation, testing:                  Testing.
    2793 * computed variable name:                Computed Names.
    2794 * conditional expansion:                 If Function.
    2795 * conditional variable assignment:       Flavors.
    2796 * conditionals:                          Conditionals.
    2797 * continuation lines:                    Simple Makefile.
     3572                                                              (line   6)
     3573* commands, introduction to:             Rule Introduction.   (line   8)
     3574* commands, quoting newlines in:         Splitting Lines.     (line   6)
     3575* commands, sequences of:                Sequences.           (line   6)
     3576* commands, splitting:                   Splitting Lines.     (line   6)
     3577* commands, using variables in:          Variables in Commands.
     3578                                                              (line   6)
     3579* comments, in commands:                 Command Syntax.      (line  27)
     3580* comments, in makefile:                 Makefile Contents.   (line  41)
     3581* compatibility:                         Features.            (line   6)
     3582* compatibility in exporting:            Variables/Recursion. (line 105)
     3583* compilation, testing:                  Testing.             (line   6)
     3584* computed variable name:                Computed Names.      (line   6)
     3585* conditional expansion:                 Conditional Functions.
     3586                                                              (line   6)
     3587* conditional variable assignment:       Flavors.             (line 129)
     3588* conditionals:                          Conditionals.        (line   6)
     3589* continuation lines:                    Simple Makefile.     (line  40)
    27983590* controlling make:                      Make Control Functions.
     3591                                                              (line   6)
    27993592* conventions for makefiles:             Makefile Conventions.
    2800 * ctangle <1>:                           Implicit Variables.
    2801 * ctangle:                               Catalogue of Rules.
    2802 * cweave <1>:                            Implicit Variables.
    2803 * cweave:                                Catalogue of Rules.
    2804 * data base of make rules:               Options Summary.
    2805 * deducing commands (implicit rules):    make Deduces.
    2806 * default directories for included makefiles: Include.
    2807 * default goal <1>:                      Rules.
    2808 * default goal:                          How Make Works.
    2809 * default makefile name:                 Makefile Names.
    2810 * default rules, last-resort:            Last Resort.
    2811 * define, expansion:                     Reading Makefiles.
    2812 * defining variables verbatim:           Defining.
    2813 * deletion of target files <1>:          Interrupts.
    2814 * deletion of target files:              Errors.
    2815 * directive:                             Makefile Contents.
    2816 * directories, printing them:            -w Option.
    2817 * directories, updating archive symbol:  Archive Symbols.
    2818 * directory part:                        File Name Functions.
    2819 * directory search (VPATH):              Directory Search.
     3593                                                              (line   6)
     3594* ctangle <1>:                           Implicit Variables.  (line 107)
     3595* ctangle:                               Catalogue of Rules.  (line 151)
     3596* cweave <1>:                            Implicit Variables.  (line 101)
     3597* cweave:                                Catalogue of Rules.  (line 151)
     3598* data base of make rules:               Options Summary.     (line 155)
     3599* deducing commands (implicit rules):    make Deduces.        (line   6)
     3600* default directories for included makefiles: Include.        (line  52)
     3601* default goal <1>:                      Rules.               (line  11)
     3602* default goal:                          How Make Works.      (line  11)
     3603* default makefile name:                 Makefile Names.      (line   6)
     3604* default rules, last-resort:            Last Resort.         (line   6)
     3605* define, expansion:                     Reading Makefiles.   (line  33)
     3606* defining variables verbatim:           Defining.            (line   6)
     3607* deletion of target files <1>:          Interrupts.          (line   6)
     3608* deletion of target files:              Errors.              (line  64)
     3609* directive:                             Makefile Contents.   (line  28)
     3610* directories, printing them:            -w Option.           (line   6)
     3611* directories, updating archive symbol:  Archive Symbols.     (line   6)
     3612* directory part:                        File Name Functions. (line  17)
     3613* directory search (VPATH):              Directory Search.    (line   6)
    28203614* directory search (VPATH), and implicit rules: Implicit/Search.
     3615                                                              (line   6)
    28213616* directory search (VPATH), and link libraries: Libraries/Search.
     3617                                                              (line   6)
    28223618* directory search (VPATH), and shell commands: Commands/Search.
    2823 * directory search algorithm:            Search Algorithm.
    2824 * directory search, traditional (GPATH): Search Algorithm.
    2825 * dist (standard target):                Goals.
    2826 * distclean (standard target):           Goals.
    2827 * dollar sign ($), in function call:     Syntax of Functions.
    2828 * dollar sign ($), in rules:             Rule Syntax.
    2829 * dollar sign ($), in variable name:     Computed Names.
    2830 * dollar sign ($), in variable reference: Reference.
    2831 * double-colon rules:                    Double-Colon.
    2832 * duplicate words, removing:             Text Functions.
    2833 * E2BIG:                                 Options/Recursion.
    2834 * echoing of commands:                   Echoing.
    2835 * editor:                                Introduction.
    2836 * Emacs (M-x compile):                   Errors.
    2837 * empty commands:                        Empty Commands.
    2838 * empty targets:                         Empty Targets.
    2839 * environment:                           Environment.
    2840 * environment, and recursion:            Variables/Recursion.
    2841 * environment, SHELL in:                 Execution.
     3619                                                              (line   6)
     3620* directory search algorithm:            Search Algorithm.    (line   6)
     3621* directory search, traditional (GPATH): Search Algorithm.    (line  42)
     3622* dist (standard target):                Goals.               (line 106)
     3623* distclean (standard target):           Goals.               (line  84)
     3624* dollar sign ($), in function call:     Syntax of Functions. (line   6)
     3625* dollar sign ($), in rules:             Rule Syntax.         (line  32)
     3626* dollar sign ($), in variable name:     Computed Names.      (line   6)
     3627* dollar sign ($), in variable reference: Reference.          (line   6)
     3628* DOS, choosing a shell in:              Choosing the Shell.  (line  36)
     3629* double-colon rules:                    Double-Colon.        (line   6)
     3630* duplicate words, removing:             Text Functions.      (line 155)
     3631* E2BIG:                                 Options/Recursion.   (line  57)
     3632* echoing of commands:                   Echoing.             (line   6)
     3633* editor:                                Introduction.        (line  22)
     3634* Emacs (M-x compile):                   Errors.              (line  62)
     3635* empty commands:                        Empty Commands.      (line   6)
     3636* empty targets:                         Empty Targets.       (line   6)
     3637* environment:                           Environment.         (line   6)
     3638* environment, and recursion:            Variables/Recursion. (line   6)
     3639* environment, SHELL in:                 Choosing the Shell.  (line  10)
    28423640* error, stopping on:                    Make Control Functions.
    2843 * errors (in commands):                  Errors.
    2844 * errors with wildcards:                 Wildcard Pitfall.
    2845 * evaluating makefile syntax:            Eval Function.
    2846 * execution, in parallel:                Parallel.
     3641                                                              (line  11)
     3642* errors (in commands):                  Errors.              (line   6)
     3643* errors with wildcards:                 Wildcard Pitfall.    (line   6)
     3644* evaluating makefile syntax:            Eval Function.       (line   6)
     3645* execution, in parallel:                Parallel.            (line   6)
    28473646* execution, instead of:                 Instead of Execution.
    2848 * execution, of commands:                Execution.
    2849 * exit status (errors):                  Errors.
    2850 * explicit rule, definition of:          Makefile Contents.
    2851 * explicit rule, expansion:              Reading Makefiles.
    2852 * exporting variables:                   Variables/Recursion.
    2853 * f77 <1>:                               Implicit Variables.
    2854 * f77:                                   Catalogue of Rules.
     3647                                                              (line   6)
     3648* execution, of commands:                Execution.           (line   6)
     3649* exit status (errors):                  Errors.              (line   6)
     3650* exit status of make:                   Running.             (line  18)
     3651* expansion, secondary:                  Secondary Expansion. (line   6)
     3652* explicit rule, definition of:          Makefile Contents.   (line  10)
     3653* explicit rule, expansion:              Reading Makefiles.   (line  62)
     3654* explicit rules, secondary expansion of: Secondary Expansion.
     3655                                                              (line 106)
     3656* exporting variables:                   Variables/Recursion. (line   6)
     3657* f77 <1>:                               Implicit Variables.  (line  64)
     3658* f77:                                   Catalogue of Rules.  (line  49)
    28553659* FDL, GNU Free Documentation License:   GNU Free Documentation License.
    2856 * features of GNU make:                  Features.
    2857 * features, missing:                     Missing.
    2858 * file name functions:                   File Name Functions.
    2859 * file name of makefile:                 Makefile Names.
    2860 * file name of makefile, how to specify: Makefile Names.
    2861 * file name prefix, adding:              File Name Functions.
    2862 * file name suffix:                      File Name Functions.
    2863 * file name suffix, adding:              File Name Functions.
    2864 * file name with wildcards:              Wildcards.
    2865 * file name, basename of:                File Name Functions.
    2866 * file name, directory part:             File Name Functions.
    2867 * file name, nondirectory part:          File Name Functions.
     3660                                                              (line   6)
     3661* features of GNU make:                  Features.            (line   6)
     3662* features, missing:                     Missing.             (line   6)
     3663* file name functions:                   File Name Functions. (line   6)
     3664* file name of makefile:                 Makefile Names.      (line   6)
     3665* file name of makefile, how to specify: Makefile Names.      (line  30)
     3666* file name prefix, adding:              File Name Functions. (line  79)
     3667* file name suffix:                      File Name Functions. (line  43)
     3668* file name suffix, adding:              File Name Functions. (line  68)
     3669* file name with wildcards:              Wildcards.           (line   6)
     3670* file name, abspath of:                 File Name Functions. (line 121)
     3671* file name, basename of:                File Name Functions. (line  57)
     3672* file name, directory part:             File Name Functions. (line  17)
     3673* file name, nondirectory part:          File Name Functions. (line  27)
     3674* file name, realpath of:                File Name Functions. (line 114)
    28683675* files, assuming new:                   Instead of Execution.
     3676                                                              (line  33)
    28693677* files, assuming old:                   Avoiding Compilation.
     3678                                                              (line   6)
    28703679* files, avoiding recompilation of:      Avoiding Compilation.
    2871 * files, intermediate:                   Chained Rules.
    2872 * filtering out words:                   Text Functions.
    2873 * filtering words:                       Text Functions.
    2874 * finding strings:                       Text Functions.
    2875 * flags:                                 Options Summary.
    2876 * flags for compilers:                   Implicit Variables.
    2877 * flavors of variables:                  Flavors.
    2878 * FORCE:                                 Force Targets.
    2879 * force targets:                         Force Targets.
    2880 * Fortran, rule to compile:              Catalogue of Rules.
    2881 * functions:                             Functions.
     3680                                                              (line   6)
     3681* files, intermediate:                   Chained Rules.       (line  16)
     3682* filtering out words:                   Text Functions.      (line 132)
     3683* filtering words:                       Text Functions.      (line 114)
     3684* finding strings:                       Text Functions.      (line 103)
     3685* flags:                                 Options Summary.     (line   6)
     3686* flags for compilers:                   Implicit Variables.  (line   6)
     3687* flavor of variable:                    Flavor Function.     (line   6)
     3688* flavors of variables:                  Flavors.             (line   6)
     3689* FORCE:                                 Force Targets.       (line   6)
     3690* force targets:                         Force Targets.       (line   6)
     3691* Fortran, rule to compile:              Catalogue of Rules.  (line  49)
     3692* functions:                             Functions.           (line   6)
    28823693* functions, for controlling make:       Make Control Functions.
    2883 * functions, for file names:             File Name Functions.
    2884 * functions, for text:                   Text Functions.
    2885 * functions, syntax of:                  Syntax of Functions.
    2886 * functions, user defined:               Call Function.
    2887 * g++ <1>:                               Implicit Variables.
    2888 * g++:                                   Catalogue of Rules.
    2889 * gcc:                                   Catalogue of Rules.
     3694                                                              (line   6)
     3695* functions, for file names:             File Name Functions. (line   6)
     3696* functions, for text:                   Text Functions.      (line   6)
     3697* functions, syntax of:                  Syntax of Functions. (line   6)
     3698* functions, user defined:               Call Function.       (line   6)
     3699* g++ <1>:                               Implicit Variables.  (line  53)
     3700* g++:                                   Catalogue of Rules.  (line  39)
     3701* gcc:                                   Catalogue of Rules.  (line  35)
    28903702* generating prerequisites automatically <1>: Automatic Prerequisites.
    2891 * generating prerequisites automatically: Include.
    2892 * get <1>:                               Implicit Variables.
    2893 * get:                                   Catalogue of Rules.
    2894 * globbing (wildcards):                  Wildcards.
    2895 * goal:                                  How Make Works.
    2896 * goal, default <1>:                     Rules.
    2897 * goal, default:                         How Make Works.
    2898 * goal, how to specify:                  Goals.
    2899 * home directory:                        Wildcards.
    2900 * IEEE Standard 1003.2:                  Overview.
    2901 * ifdef, expansion:                      Reading Makefiles.
    2902 * ifeq, expansion:                       Reading Makefiles.
    2903 * ifndef, expansion:                     Reading Makefiles.
    2904 * ifneq, expansion:                      Reading Makefiles.
    2905 * implicit rule:                         Implicit Rules.
    2906 * implicit rule, and directory search:   Implicit/Search.
    2907 * implicit rule, and VPATH:              Implicit/Search.
    2908 * implicit rule, definition of:          Makefile Contents.
    2909 * implicit rule, expansion:              Reading Makefiles.
    2910 * implicit rule, how to use:             Using Implicit.
    2911 * implicit rule, introduction to:        make Deduces.
    2912 * implicit rule, predefined:             Catalogue of Rules.
     3703                                                              (line   6)
     3704* generating prerequisites automatically: Include.            (line  50)
     3705* get <1>:                               Implicit Variables.  (line  67)
     3706* get:                                   Catalogue of Rules.  (line 173)
     3707* globbing (wildcards):                  Wildcards.           (line   6)
     3708* goal:                                  How Make Works.      (line  11)
     3709* goal, default <1>:                     Rules.               (line  11)
     3710* goal, default:                         How Make Works.      (line  11)
     3711* goal, how to specify:                  Goals.               (line   6)
     3712* home directory:                        Wildcards.           (line  11)
     3713* IEEE Standard 1003.2:                  Overview.            (line  13)
     3714* ifdef, expansion:                      Reading Makefiles.   (line  51)
     3715* ifeq, expansion:                       Reading Makefiles.   (line  51)
     3716* ifndef, expansion:                     Reading Makefiles.   (line  51)
     3717* ifneq, expansion:                      Reading Makefiles.   (line  51)
     3718* implicit rule:                         Implicit Rules.      (line   6)
     3719* implicit rule, and directory search:   Implicit/Search.     (line   6)
     3720* implicit rule, and VPATH:              Implicit/Search.     (line   6)
     3721* implicit rule, definition of:          Makefile Contents.   (line  16)
     3722* implicit rule, expansion:              Reading Makefiles.   (line  62)
     3723* implicit rule, how to use:             Using Implicit.      (line   6)
     3724* implicit rule, introduction to:        make Deduces.        (line   6)
     3725* implicit rule, predefined:             Catalogue of Rules.  (line   6)
    29133726* implicit rule, search algorithm:       Implicit Rule Search.
    2914 * included makefiles, default directories: Include.
     3727                                                              (line   6)
     3728* implicit rules, secondary expansion of: Secondary Expansion.
     3729                                                              (line 146)
     3730* included makefiles, default directories: Include.           (line  52)
    29153731* including (MAKEFILE_LIST variable):    MAKEFILE_LIST Variable.
    2916 * including (MAKEFILES variable):        MAKEFILES Variable.
    2917 * including other makefiles:             Include.
    2918 * incompatibilities:                     Missing.
    2919 * Info, rule to format:                  Catalogue of Rules.
    2920 * install (standard target):             Goals.
    2921 * intermediate files:                    Chained Rules.
    2922 * intermediate files, preserving:        Chained Rules.
    2923 * intermediate targets, explicit:        Special Targets.
    2924 * interrupt:                             Interrupts.
    2925 * job slots:                             Parallel.
    2926 * job slots, and recursion:              Options/Recursion.
    2927 * jobs, limiting based on load:          Parallel.
    2928 * joining lists of words:                File Name Functions.
    2929 * killing (interruption):                Interrupts.
    2930 * last-resort default rules:             Last Resort.
    2931 * ld:                                    Catalogue of Rules.
    2932 * lex <1>:                               Implicit Variables.
    2933 * lex:                                   Catalogue of Rules.
    2934 * Lex, rule to run:                      Catalogue of Rules.
    2935 * libraries for linking, directory search: Libraries/Search.
     3732                                                              (line   6)
     3733* including (MAKEFILES variable):        MAKEFILES Variable.  (line   6)
     3734* including other makefiles:             Include.             (line   6)
     3735* incompatibilities:                     Missing.             (line   6)
     3736* Info, rule to format:                  Catalogue of Rules.  (line 158)
     3737* install (standard target):             Goals.               (line  92)
     3738* intermediate files:                    Chained Rules.       (line  16)
     3739* intermediate files, preserving:        Chained Rules.       (line  46)
     3740* intermediate targets, explicit:        Special Targets.     (line  44)
     3741* interrupt:                             Interrupts.          (line   6)
     3742* job slots:                             Parallel.            (line   6)
     3743* job slots, and recursion:              Options/Recursion.   (line  25)
     3744* jobs, limiting based on load:          Parallel.            (line  57)
     3745* joining lists of words:                File Name Functions. (line  90)
     3746* killing (interruption):                Interrupts.          (line   6)
     3747* last-resort default rules:             Last Resort.         (line   6)
     3748* ld:                                    Catalogue of Rules.  (line  86)
     3749* lex <1>:                               Implicit Variables.  (line  71)
     3750* lex:                                   Catalogue of Rules.  (line 124)
     3751* Lex, rule to run:                      Catalogue of Rules.  (line 124)
     3752* libraries for linking, directory search: Libraries/Search.  (line   6)
    29363753* library archive, suffix rule for:      Archive Suffix Rules.
    2937 * limiting jobs based on load:           Parallel.
    2938 * link libraries, and directory search:  Libraries/Search.
    2939 * link libraries, patterns matching:     Libraries/Search.
    2940 * linking, predefined rule for:          Catalogue of Rules.
    2941 * lint:                                  Catalogue of Rules.
    2942 * lint, rule to run:                     Catalogue of Rules.
    2943 * list of all prerequisites:             Automatic Variables.
    2944 * list of changed prerequisites:         Automatic Variables.
    2945 * load average:                          Parallel.
    2946 * loops in variable expansion:           Flavors.
    2947 * lpr (shell command) <1>:               Empty Targets.
    2948 * lpr (shell command):                   Wildcard Examples.
    2949 * m2c:                                   Catalogue of Rules.
    2950 * macro:                                 Using Variables.
     3754                                                              (line   6)
     3755* limiting jobs based on load:           Parallel.            (line  57)
     3756* link libraries, and directory search:  Libraries/Search.    (line   6)
     3757* link libraries, patterns matching:     Libraries/Search.    (line   6)
     3758* linking, predefined rule for:          Catalogue of Rules.  (line  86)
     3759* lint <1>:                              Implicit Variables.  (line  78)
     3760* lint:                                  Catalogue of Rules.  (line 146)
     3761* lint, rule to run:                     Catalogue of Rules.  (line 146)
     3762* list of all prerequisites:             Automatic Variables. (line  61)
     3763* list of changed prerequisites:         Automatic Variables. (line  51)
     3764* load average:                          Parallel.            (line  57)
     3765* loops in variable expansion:           Flavors.             (line  44)
     3766* lpr (shell command) <1>:               Empty Targets.       (line  25)
     3767* lpr (shell command):                   Wildcard Examples.   (line  21)
     3768* m2c <1>:                               Implicit Variables.  (line  81)
     3769* m2c:                                   Catalogue of Rules.  (line  74)
     3770* macro:                                 Using Variables.     (line  10)
    29513771* make depend:                           Automatic Prerequisites.
    2952 * MAKECMDGOALS:                          Goals.
    2953 * makefile:                              Introduction.
    2954 * makefile name:                         Makefile Names.
    2955 * makefile name, how to specify:         Makefile Names.
    2956 * makefile rule parts:                   Rule Introduction.
    2957 * makefile syntax, evaluating:           Eval Function.
    2958 * makefile, and MAKEFILES variable:      MAKEFILES Variable.
     3772                                                              (line  37)
     3773* makefile:                              Introduction.        (line   7)
     3774* makefile name:                         Makefile Names.      (line   6)
     3775* makefile name, how to specify:         Makefile Names.      (line  30)
     3776* makefile rule parts:                   Rule Introduction.   (line   6)
     3777* makefile syntax, evaluating:           Eval Function.       (line   6)
     3778* makefile, and MAKEFILES variable:      MAKEFILES Variable.  (line   6)
    29593779* makefile, conventions for:             Makefile Conventions.
    2960 * makefile, how make processes:          How Make Works.
    2961 * makefile, how to write:                Makefiles.
    2962 * makefile, including:                   Include.
     3780                                                              (line   6)
     3781* makefile, how make processes:          How Make Works.      (line   6)
     3782* makefile, how to write:                Makefiles.           (line   6)
     3783* makefile, including:                   Include.             (line   6)
    29633784* makefile, overriding:                  Overriding Makefiles.
    2964 * makefile, parsing:                     Reading Makefiles.
    2965 * makefile, remaking of:                 Remaking Makefiles.
    2966 * makefile, simple:                      Simple Makefile.
     3785                                                              (line   6)
     3786* makefile, parsing:                     Reading Makefiles.   (line   6)
     3787* makefile, remaking of:                 Remaking Makefiles.  (line   6)
     3788* makefile, simple:                      Simple Makefile.     (line   6)
    29673789* makefiles, and MAKEFILE_LIST variable: MAKEFILE_LIST Variable.
    2968 * makefiles, and special variables:      Special Variables.
    2969 * makeinfo <1>:                          Implicit Variables.
    2970 * makeinfo:                              Catalogue of Rules.
     3790                                                              (line   6)
     3791* makefiles, and special variables:      Special Variables.   (line   6)
     3792* makeinfo <1>:                          Implicit Variables.  (line  88)
     3793* makeinfo:                              Catalogue of Rules.  (line 158)
    29713794* match-anything rule:                   Match-Anything Rules.
     3795                                                              (line   6)
    29723796* match-anything rule, used to override: Overriding Makefiles.
    2973 * missing features:                      Missing.
    2974 * mistakes with wildcards:               Wildcard Pitfall.
    2975 * modified variable reference:           Substitution Refs.
    2976 * Modula-2, rule to compile:             Catalogue of Rules.
    2977 * mostlyclean (standard target):         Goals.
    2978 * multiple rules for one target:         Multiple Rules.
    2979 * multiple rules for one target (::):    Double-Colon.
    2980 * multiple targets:                      Multiple Targets.
    2981 * multiple targets, in pattern rule:     Pattern Intro.
    2982 * name of makefile:                      Makefile Names.
    2983 * name of makefile, how to specify:      Makefile Names.
    2984 * nested variable reference:             Computed Names.
    2985 * newline, quoting, in commands:         Execution.
    2986 * newline, quoting, in makefile:         Simple Makefile.
    2987 * nondirectory part:                     File Name Functions.
    2988 * normal prerequisites:                  Prerequisite Types.
    2989 * OBJ:                                   Variables Simplify.
    2990 * obj:                                   Variables Simplify.
    2991 * OBJECTS:                               Variables Simplify.
    2992 * objects:                               Variables Simplify.
    2993 * OBJS:                                  Variables Simplify.
    2994 * objs:                                  Variables Simplify.
    2995 * old-fashioned suffix rules:            Suffix Rules.
    2996 * options:                               Options Summary.
    2997 * options, and recursion:                Options/Recursion.
    2998 * options, setting from environment:     Options/Recursion.
    2999 * options, setting in makefiles:         Options/Recursion.
    3000 * order of pattern rules:                Pattern Intro.
    3001 * order-only prerequisites:              Prerequisite Types.
    3002 * origin of variable:                    Origin Function.
     3797                                                              (line  12)
     3798* missing features:                      Missing.             (line   6)
     3799* mistakes with wildcards:               Wildcard Pitfall.    (line   6)
     3800* modified variable reference:           Substitution Refs.   (line   6)
     3801* Modula-2, rule to compile:             Catalogue of Rules.  (line  74)
     3802* mostlyclean (standard target):         Goals.               (line  78)
     3803* multiple rules for one target:         Multiple Rules.      (line   6)
     3804* multiple rules for one target (::):    Double-Colon.        (line   6)
     3805* multiple targets:                      Multiple Targets.    (line   6)
     3806* multiple targets, in pattern rule:     Pattern Intro.       (line  49)
     3807* name of makefile:                      Makefile Names.      (line   6)
     3808* name of makefile, how to specify:      Makefile Names.      (line  30)
     3809* nested variable reference:             Computed Names.      (line   6)
     3810* newline, quoting, in commands:         Splitting Lines.     (line   6)
     3811* newline, quoting, in makefile:         Simple Makefile.     (line  40)
     3812* nondirectory part:                     File Name Functions. (line  27)
     3813* normal prerequisites:                  Prerequisite Types.  (line   6)
     3814* OBJ:                                   Variables Simplify.  (line  20)
     3815* obj:                                   Variables Simplify.  (line  20)
     3816* OBJECTS:                               Variables Simplify.  (line  20)
     3817* objects:                               Variables Simplify.  (line  14)
     3818* OBJS:                                  Variables Simplify.  (line  20)
     3819* objs:                                  Variables Simplify.  (line  20)
     3820* old-fashioned suffix rules:            Suffix Rules.        (line   6)
     3821* options:                               Options Summary.     (line   6)
     3822* options, and recursion:                Options/Recursion.   (line   6)
     3823* options, setting from environment:     Options/Recursion.   (line  81)
     3824* options, setting in makefiles:         Options/Recursion.   (line  81)
     3825* order of pattern rules:                Pattern Intro.       (line  57)
     3826* order-only prerequisites:              Prerequisite Types.  (line   6)
     3827* origin of variable:                    Origin Function.     (line   6)
    30033828* overriding makefiles:                  Overriding Makefiles.
    3004 * overriding variables with arguments:   Overriding.
    3005 * overriding with override:              Override Directive.
    3006 * parallel execution:                    Parallel.
    3007 * parallel execution, and archive update: Archive Pitfalls.
    3008 * parallel execution, overriding:        Special Targets.
    3009 * parts of makefile rule:                Rule Introduction.
    3010 * Pascal, rule to compile:               Catalogue of Rules.
    3011 * pattern rule:                          Pattern Intro.
    3012 * pattern rule, expansion:               Reading Makefiles.
    3013 * pattern rules, order of:               Pattern Intro.
    3014 * pattern rules, static (not implicit):  Static Pattern.
    3015 * pattern rules, static, syntax of:      Static Usage.
    3016 * pattern-specific variables:            Pattern-specific.
    3017 * pc <1>:                                Implicit Variables.
    3018 * pc:                                    Catalogue of Rules.
    3019 * phony targets:                         Phony Targets.
    3020 * pitfalls of wildcards:                 Wildcard Pitfall.
    3021 * portability:                           Features.
    3022 * POSIX:                                 Overview.
    3023 * POSIX.2:                               Options/Recursion.
     3829                                                              (line   6)
     3830* overriding variables with arguments:   Overriding.          (line   6)
     3831* overriding with override:              Override Directive.  (line   6)
     3832* parallel execution:                    Parallel.            (line   6)
     3833* parallel execution, and archive update: Archive Pitfalls.   (line   6)
     3834* parallel execution, overriding:        Special Targets.     (line 135)
     3835* parts of makefile rule:                Rule Introduction.   (line   6)
     3836* Pascal, rule to compile:               Catalogue of Rules.  (line  45)
     3837* pattern rule:                          Pattern Intro.       (line   6)
     3838* pattern rule, expansion:               Reading Makefiles.   (line  62)
     3839* pattern rules, order of:               Pattern Intro.       (line  57)
     3840* pattern rules, static (not implicit):  Static Pattern.      (line   6)
     3841* pattern rules, static, syntax of:      Static Usage.        (line   6)
     3842* pattern-specific variables:            Pattern-specific.    (line   6)
     3843* pc <1>:                                Implicit Variables.  (line  84)
     3844* pc:                                    Catalogue of Rules.  (line  45)
     3845* phony targets:                         Phony Targets.       (line   6)
     3846* pitfalls of wildcards:                 Wildcard Pitfall.    (line   6)
     3847* portability:                           Features.            (line   6)
     3848* POSIX:                                 Overview.            (line  13)
     3849* POSIX.2:                               Options/Recursion.   (line  60)
    30243850* post-installation commands:            Install Command Categories.
     3851                                                              (line   6)
    30253852* pre-installation commands:             Install Command Categories.
    3026 * precious targets:                      Special Targets.
    3027 * predefined rules and variables, printing: Options Summary.
    3028 * prefix, adding:                        File Name Functions.
    3029 * prerequisite:                          Rules.
    3030 * prerequisite pattern, implicit:        Pattern Intro.
    3031 * prerequisite pattern, static (not implicit): Static Usage.
    3032 * prerequisite types:                    Prerequisite Types.
    3033 * prerequisite, expansion:               Reading Makefiles.
    3034 * prerequisites:                         Rule Syntax.
     3853                                                              (line   6)
     3854* precious targets:                      Special Targets.     (line  29)
     3855* predefined rules and variables, printing: Options Summary.  (line 155)
     3856* prefix, adding:                        File Name Functions. (line  79)
     3857* prerequisite:                          Rules.               (line   6)
     3858* prerequisite pattern, implicit:        Pattern Intro.       (line  22)
     3859* prerequisite pattern, static (not implicit): Static Usage.  (line  30)
     3860* prerequisite types:                    Prerequisite Types.  (line   6)
     3861* prerequisite, expansion:               Reading Makefiles.   (line  62)
     3862* prerequisites:                         Rule Syntax.         (line  46)
    30353863* prerequisites, and automatic variables: Automatic Variables.
     3864                                                              (line  17)
    30363865* prerequisites, automatic generation <1>: Automatic Prerequisites.
    3037 * prerequisites, automatic generation:   Include.
    3038 * prerequisites, introduction to:        Rule Introduction.
    3039 * prerequisites, list of all:            Automatic Variables.
    3040 * prerequisites, list of changed:        Automatic Variables.
    3041 * prerequisites, normal:                 Prerequisite Types.
    3042 * prerequisites, order-only:             Prerequisite Types.
    3043 * prerequisites, varying (static pattern): Static Pattern.
    3044 * preserving intermediate files:         Chained Rules.
    3045 * preserving with .PRECIOUS <1>:         Chained Rules.
    3046 * preserving with .PRECIOUS:             Special Targets.
    3047 * preserving with .SECONDARY:            Special Targets.
    3048 * print (standard target):               Goals.
    3049 * print target <1>:                      Empty Targets.
    3050 * print target:                          Wildcard Examples.
    3051 * printing directories:                  -w Option.
    3052 * printing of commands:                  Echoing.
     3866                                                              (line   6)
     3867* prerequisites, automatic generation:   Include.             (line  50)
     3868* prerequisites, introduction to:        Rule Introduction.   (line   8)
     3869* prerequisites, list of all:            Automatic Variables. (line  61)
     3870* prerequisites, list of changed:        Automatic Variables. (line  51)
     3871* prerequisites, normal:                 Prerequisite Types.  (line   6)
     3872* prerequisites, order-only:             Prerequisite Types.  (line   6)
     3873* prerequisites, varying (static pattern): Static Pattern.    (line   6)
     3874* preserving intermediate files:         Chained Rules.       (line  46)
     3875* preserving with .PRECIOUS <1>:         Chained Rules.       (line  56)
     3876* preserving with .PRECIOUS:             Special Targets.     (line  29)
     3877* preserving with .SECONDARY:            Special Targets.     (line  49)
     3878* print (standard target):               Goals.               (line  97)
     3879* print target <1>:                      Empty Targets.       (line  25)
     3880* print target:                          Wildcard Examples.   (line  21)
     3881* printing directories:                  -w Option.           (line   6)
     3882* printing messages:                     Make Control Functions.
     3883                                                              (line  43)
     3884* printing of commands:                  Echoing.             (line   6)
    30533885* printing user warnings:                Make Control Functions.
    3054 * problems and bugs, reporting:          Bugs.
    3055 * problems with wildcards:               Wildcard Pitfall.
    3056 * processing a makefile:                 How Make Works.
     3886                                                              (line  35)
     3887* problems and bugs, reporting:          Bugs.                (line   6)
     3888* problems with wildcards:               Wildcard Pitfall.    (line   6)
     3889* processing a makefile:                 How Make Works.      (line   6)
    30573890* question mode:                         Instead of Execution.
    3058 * quoting %, in patsubst:                Text Functions.
    3059 * quoting %, in static pattern:          Static Usage.
    3060 * quoting %, in vpath:                   Selective Search.
    3061 * quoting newline, in commands:          Execution.
    3062 * quoting newline, in makefile:          Simple Makefile.
    3063 * Ratfor, rule to compile:               Catalogue of Rules.
    3064 * RCS, rule to extract from:             Catalogue of Rules.
    3065 * reading makefiles:                     Reading Makefiles.
    3066 * README:                                Makefile Names.
    3067 * realclean (standard target):           Goals.
    3068 * recompilation:                         Introduction.
     3891                                                              (line  25)
     3892* quoting %, in patsubst:                Text Functions.      (line  26)
     3893* quoting %, in static pattern:          Static Usage.        (line  37)
     3894* quoting %, in vpath:                   Selective Search.    (line  38)
     3895* quoting newline, in commands:          Splitting Lines.     (line   6)
     3896* quoting newline, in makefile:          Simple Makefile.     (line  40)
     3897* Ratfor, rule to compile:               Catalogue of Rules.  (line  49)
     3898* RCS, rule to extract from:             Catalogue of Rules.  (line 164)
     3899* reading makefiles:                     Reading Makefiles.   (line   6)
     3900* README:                                Makefile Names.      (line   9)
     3901* realclean (standard target):           Goals.               (line  85)
     3902* realpath:                              File Name Functions. (line 114)
     3903* recompilation:                         Introduction.        (line  22)
    30693904* recompilation, avoiding:               Avoiding Compilation.
    3070 * recording events with empty targets:   Empty Targets.
    3071 * recursion:                             Recursion.
    3072 * recursion, and -C:                     Options/Recursion.
    3073 * recursion, and -f:                     Options/Recursion.
    3074 * recursion, and -j:                     Options/Recursion.
    3075 * recursion, and -o:                     Options/Recursion.
    3076 * recursion, and -t:                     MAKE Variable.
    3077 * recursion, and -w:                     -w Option.
    3078 * recursion, and -W:                     Options/Recursion.
     3905                                                              (line   6)
     3906* recording events with empty targets:   Empty Targets.       (line   6)
     3907* recursion:                             Recursion.           (line   6)
     3908* recursion, and -C:                     Options/Recursion.   (line  22)
     3909* recursion, and -f:                     Options/Recursion.   (line  22)
     3910* recursion, and -j:                     Options/Recursion.   (line  25)
     3911* recursion, and -o:                     Options/Recursion.   (line  22)
     3912* recursion, and -t:                     MAKE Variable.       (line  34)
     3913* recursion, and -w:                     -w Option.           (line  20)
     3914* recursion, and -W:                     Options/Recursion.   (line  22)
    30793915* recursion, and command line variable definitions: Options/Recursion.
    3080 * recursion, and environment:            Variables/Recursion.
    3081 * recursion, and MAKE variable:          MAKE Variable.
    3082 * recursion, and MAKEFILES variable:     MAKEFILES Variable.
    3083 * recursion, and options:                Options/Recursion.
    3084 * recursion, and printing directories:   -w Option.
    3085 * recursion, and variables:              Variables/Recursion.
    3086 * recursion, level of:                   Variables/Recursion.
    3087 * recursive variable expansion <1>:      Flavors.
    3088 * recursive variable expansion:          Using Variables.
    3089 * recursively expanded variables:        Flavors.
    3090 * reference to variables <1>:            Advanced.
    3091 * reference to variables:                Reference.
    3092 * relinking:                             How Make Works.
    3093 * remaking makefiles:                    Remaking Makefiles.
    3094 * removal of target files <1>:           Interrupts.
    3095 * removal of target files:               Errors.
    3096 * removing duplicate words:              Text Functions.
    3097 * removing targets on failure:           Special Targets.
    3098 * removing, to clean up:                 Cleanup.
    3099 * reporting bugs:                        Bugs.
    3100 * rm:                                    Implicit Variables.
    3101 * rm (shell command) <1>:                Errors.
    3102 * rm (shell command) <2>:                Phony Targets.
    3103 * rm (shell command) <3>:                Wildcard Examples.
    3104 * rm (shell command):                    Simple Makefile.
    3105 * rule commands:                         Commands.
    3106 * rule prerequisites:                    Rule Syntax.
    3107 * rule syntax:                           Rule Syntax.
    3108 * rule targets:                          Rule Syntax.
    3109 * rule, and $:                           Rule Syntax.
    3110 * rule, double-colon (::):               Double-Colon.
    3111 * rule, explicit, definition of:         Makefile Contents.
    3112 * rule, how to write:                    Rules.
    3113 * rule, implicit:                        Implicit Rules.
    3114 * rule, implicit, and directory search:  Implicit/Search.
    3115 * rule, implicit, and VPATH:             Implicit/Search.
    3116 * rule, implicit, chains of:             Chained Rules.
    3117 * rule, implicit, definition of:         Makefile Contents.
    3118 * rule, implicit, how to use:            Using Implicit.
    3119 * rule, implicit, introduction to:       make Deduces.
    3120 * rule, implicit, predefined:            Catalogue of Rules.
    3121 * rule, introduction to:                 Rule Introduction.
    3122 * rule, multiple for one target:         Multiple Rules.
    3123 * rule, no commands or prerequisites:    Force Targets.
    3124 * rule, pattern:                         Pattern Intro.
    3125 * rule, static pattern:                  Static Pattern.
     3916                                                              (line  17)
     3917* recursion, and environment:            Variables/Recursion. (line   6)
     3918* recursion, and MAKE variable:          MAKE Variable.       (line   6)
     3919* recursion, and MAKEFILES variable:     MAKEFILES Variable.  (line  14)
     3920* recursion, and options:                Options/Recursion.   (line   6)
     3921* recursion, and printing directories:   -w Option.           (line   6)
     3922* recursion, and variables:              Variables/Recursion. (line   6)
     3923* recursion, level of:                   Variables/Recursion. (line 115)
     3924* recursive variable expansion <1>:      Flavors.             (line   6)
     3925* recursive variable expansion:          Using Variables.     (line   6)
     3926* recursively expanded variables:        Flavors.             (line   6)
     3927* reference to variables <1>:            Advanced.            (line   6)
     3928* reference to variables:                Reference.           (line   6)
     3929* relinking:                             How Make Works.      (line  46)
     3930* remaking makefiles:                    Remaking Makefiles.  (line   6)
     3931* removal of target files <1>:           Interrupts.          (line   6)
     3932* removal of target files:               Errors.              (line  64)
     3933* removing duplicate words:              Text Functions.      (line 155)
     3934* removing targets on failure:           Special Targets.     (line  68)
     3935* removing, to clean up:                 Cleanup.             (line   6)
     3936* reporting bugs:                        Bugs.                (line   6)
     3937* rm:                                    Implicit Variables.  (line 110)
     3938* rm (shell command) <1>:                Errors.              (line  27)
     3939* rm (shell command) <2>:                Phony Targets.       (line  20)
     3940* rm (shell command) <3>:                Wildcard Examples.   (line  12)
     3941* rm (shell command):                    Simple Makefile.     (line  83)
     3942* rule commands:                         Commands.            (line   6)
     3943* rule prerequisites:                    Rule Syntax.         (line  46)
     3944* rule syntax:                           Rule Syntax.         (line   6)
     3945* rule targets:                          Rule Syntax.         (line  18)
     3946* rule, double-colon (::):               Double-Colon.        (line   6)
     3947* rule, explicit, definition of:         Makefile Contents.   (line  10)
     3948* rule, how to write:                    Rules.               (line   6)
     3949* rule, implicit:                        Implicit Rules.      (line   6)
     3950* rule, implicit, and directory search:  Implicit/Search.     (line   6)
     3951* rule, implicit, and VPATH:             Implicit/Search.     (line   6)
     3952* rule, implicit, chains of:             Chained Rules.       (line   6)
     3953* rule, implicit, definition of:         Makefile Contents.   (line  16)
     3954* rule, implicit, how to use:            Using Implicit.      (line   6)
     3955* rule, implicit, introduction to:       make Deduces.        (line   6)
     3956* rule, implicit, predefined:            Catalogue of Rules.  (line   6)
     3957* rule, introduction to:                 Rule Introduction.   (line   6)
     3958* rule, multiple for one target:         Multiple Rules.      (line   6)
     3959* rule, no commands or prerequisites:    Force Targets.       (line   6)
     3960* rule, pattern:                         Pattern Intro.       (line   6)
     3961* rule, static pattern:                  Static Pattern.      (line   6)
    31263962* rule, static pattern versus implicit:  Static versus Implicit.
    3127 * rule, with multiple targets:           Multiple Targets.
    3128 * s. (SCCS file prefix):                 Catalogue of Rules.
    3129 * SCCS, rule to extract from:            Catalogue of Rules.
     3963                                                              (line   6)
     3964* rule, with multiple targets:           Multiple Targets.    (line   6)
     3965* rules, and $:                          Rule Syntax.         (line  32)
     3966* s. (SCCS file prefix):                 Catalogue of Rules.  (line 173)
     3967* SCCS, rule to extract from:            Catalogue of Rules.  (line 173)
    31303968* search algorithm, implicit rule:       Implicit Rule Search.
    3131 * search path for prerequisites (VPATH): Directory Search.
     3969                                                              (line   6)
     3970* search path for prerequisites (VPATH): Directory Search.    (line   6)
    31323971* search path for prerequisites (VPATH), and implicit rules: Implicit/Search.
     3972                                                              (line   6)
    31333973* search path for prerequisites (VPATH), and link libraries: Libraries/Search.
    3134 * searching for strings:                 Text Functions.
    3135 * secondary files:                       Chained Rules.
    3136 * secondary targets:                     Special Targets.
     3974                                                              (line   6)
     3975* searching for strings:                 Text Functions.      (line 103)
     3976* secondary expansion:                   Secondary Expansion. (line   6)
     3977* secondary expansion and explicit rules: Secondary Expansion.
     3978                                                              (line 106)
     3979* secondary expansion and implicit rules: Secondary Expansion.
     3980                                                              (line 146)
     3981* secondary expansion and static pattern rules: Secondary Expansion.
     3982                                                              (line 138)
     3983* secondary files:                       Chained Rules.       (line  46)
     3984* secondary targets:                     Special Targets.     (line  49)
    31373985* sed (shell command):                   Automatic Prerequisites.
    3138 * selecting a word:                      Text Functions.
    3139 * selecting word lists:                  Text Functions.
    3140 * sequences of commands:                 Sequences.
    3141 * setting options from environment:      Options/Recursion.
    3142 * setting options in makefiles:          Options/Recursion.
    3143 * setting variables:                     Setting.
    3144 * several rules for one target:          Multiple Rules.
    3145 * several targets in a rule:             Multiple Targets.
    3146 * shar (standard target):                Goals.
    3147 * shell command:                         Simple Makefile.
    3148 * shell command, and directory search:   Commands/Search.
    3149 * shell command, execution:              Execution.
    3150 * shell command, function for:           Shell Function.
    3151 * shell file name pattern (in include):  Include.
    3152 * shell wildcards (in include):          Include.
    3153 * SHELL, MS-DOS specifics:               Execution.
    3154 * signal:                                Interrupts.
    3155 * silent operation:                      Echoing.
    3156 * simple makefile:                       Simple Makefile.
    3157 * simple variable expansion:             Using Variables.
    3158 * simplifying with variables:            Variables Simplify.
    3159 * simply expanded variables:             Flavors.
    3160 * sorting words:                         Text Functions.
    3161 * spaces, in variable values:            Flavors.
    3162 * spaces, stripping:                     Text Functions.
    3163 * special targets:                       Special Targets.
    3164 * special variables:                     Special Variables.
    3165 * specifying makefile name:              Makefile Names.
    3166 * standard input:                        Parallel.
    3167 * standards conformance:                 Overview.
     3986                                                              (line  73)
     3987* selecting a word:                      Text Functions.      (line 159)
     3988* selecting word lists:                  Text Functions.      (line 168)
     3989* sequences of commands:                 Sequences.           (line   6)
     3990* setting options from environment:      Options/Recursion.   (line  81)
     3991* setting options in makefiles:          Options/Recursion.   (line  81)
     3992* setting variables:                     Setting.             (line   6)
     3993* several rules for one target:          Multiple Rules.      (line   6)
     3994* several targets in a rule:             Multiple Targets.    (line   6)
     3995* shar (standard target):                Goals.               (line 103)
     3996* shell command:                         Simple Makefile.     (line  72)
     3997* shell command, and directory search:   Commands/Search.     (line   6)
     3998* shell command, execution:              Execution.           (line   6)
     3999* shell command, function for:           Shell Function.      (line   6)
     4000* shell file name pattern (in include):  Include.             (line  13)
     4001* shell variables, setting in commands:  Execution.           (line  10)
     4002* shell wildcards (in include):          Include.             (line  13)
     4003* shell, choosing the:                   Choosing the Shell.  (line   6)
     4004* SHELL, exported value:                 Variables/Recursion. (line  23)
     4005* SHELL, import from environment:        Environment.         (line  37)
     4006* shell, in DOS and Windows:             Choosing the Shell.  (line  36)
     4007* SHELL, MS-DOS specifics:               Choosing the Shell.  (line  42)
     4008* SHELL, value of:                       Choosing the Shell.  (line   6)
     4009* signal:                                Interrupts.          (line   6)
     4010* silent operation:                      Echoing.             (line   6)
     4011* simple makefile:                       Simple Makefile.     (line   6)
     4012* simple variable expansion:             Using Variables.     (line   6)
     4013* simplifying with variables:            Variables Simplify.  (line   6)
     4014* simply expanded variables:             Flavors.             (line  56)
     4015* sorting words:                         Text Functions.      (line 146)
     4016* spaces, in variable values:            Flavors.             (line 103)
     4017* spaces, stripping:                     Text Functions.      (line  80)
     4018* special targets:                       Special Targets.     (line   6)
     4019* special variables:                     Special Variables.   (line   6)
     4020* specifying makefile name:              Makefile Names.      (line  30)
     4021* splitting commands:                    Splitting Lines.     (line   6)
     4022* standard input:                        Parallel.            (line  30)
     4023* standards conformance:                 Overview.            (line  13)
    31684024* standards for makefiles:               Makefile Conventions.
    3169 * static pattern rule:                   Static Pattern.
    3170 * static pattern rule, syntax of:        Static Usage.
     4025                                                              (line   6)
     4026* static pattern rule:                   Static Pattern.      (line   6)
     4027* static pattern rule, syntax of:        Static Usage.        (line   6)
    31714028* static pattern rule, versus implicit:  Static versus Implicit.
    3172 * stem <1>:                              Pattern Match.
    3173 * stem:                                  Static Usage.
    3174 * stem, variable for:                    Automatic Variables.
     4029                                                              (line   6)
     4030* static pattern rules, secondary expansion of: Secondary Expansion.
     4031                                                              (line 138)
     4032* stem <1>:                              Pattern Match.       (line   6)
     4033* stem:                                  Static Usage.        (line  17)
     4034* stem, variable for:                    Automatic Variables. (line  77)
    31754035* stopping make:                         Make Control Functions.
    3176 * strings, searching for:                Text Functions.
    3177 * stripping whitespace:                  Text Functions.
    3178 * sub-make:                              Variables/Recursion.
    3179 * subdirectories, recursion for:         Recursion.
    3180 * substitution variable reference:       Substitution Refs.
    3181 * suffix rule:                           Suffix Rules.
     4036                                                              (line  11)
     4037* strings, searching for:                Text Functions.      (line 103)
     4038* stripping whitespace:                  Text Functions.      (line  80)
     4039* sub-make:                              Variables/Recursion. (line   6)
     4040* subdirectories, recursion for:         Recursion.           (line   6)
     4041* substitution variable reference:       Substitution Refs.   (line   6)
     4042* suffix rule:                           Suffix Rules.        (line   6)
    31824043* suffix rule, for archive:              Archive Suffix Rules.
    3183 * suffix, adding:                        File Name Functions.
    3184 * suffix, function to find:              File Name Functions.
    3185 * suffix, substituting in variables:     Substitution Refs.
    3186 * switches:                              Options Summary.
    3187 * symbol directories, updating archive:  Archive Symbols.
    3188 * syntax of rules:                       Rule Syntax.
    3189 * tab character (in commands):           Rule Syntax.
    3190 * tabs in rules:                         Rule Introduction.
    3191 * TAGS (standard target):                Goals.
    3192 * tangle <1>:                            Implicit Variables.
    3193 * tangle:                                Catalogue of Rules.
    3194 * tar (standard target):                 Goals.
    3195 * target:                                Rules.
    3196 * target pattern, implicit:              Pattern Intro.
    3197 * target pattern, static (not implicit): Static Usage.
    3198 * target, deleting on error:             Errors.
    3199 * target, deleting on interrupt:         Interrupts.
    3200 * target, expansion:                     Reading Makefiles.
    3201 * target, multiple in pattern rule:      Pattern Intro.
    3202 * target, multiple rules for one:        Multiple Rules.
     4044                                                              (line   6)
     4045* suffix, adding:                        File Name Functions. (line  68)
     4046* suffix, function to find:              File Name Functions. (line  43)
     4047* suffix, substituting in variables:     Substitution Refs.   (line   6)
     4048* switches:                              Options Summary.     (line   6)
     4049* symbol directories, updating archive:  Archive Symbols.     (line   6)
     4050* syntax of commands:                    Command Syntax.      (line   6)
     4051* syntax of rules:                       Rule Syntax.         (line   6)
     4052* tab character (in commands):           Rule Syntax.         (line  26)
     4053* tabs in rules:                         Rule Introduction.   (line  21)
     4054* TAGS (standard target):                Goals.               (line 111)
     4055* tangle <1>:                            Implicit Variables.  (line 104)
     4056* tangle:                                Catalogue of Rules.  (line 151)
     4057* tar (standard target):                 Goals.               (line 100)
     4058* target:                                Rules.               (line   6)
     4059* target pattern, implicit:              Pattern Intro.       (line   9)
     4060* target pattern, static (not implicit): Static Usage.        (line  17)
     4061* target, deleting on error:             Errors.              (line  64)
     4062* target, deleting on interrupt:         Interrupts.          (line   6)
     4063* target, expansion:                     Reading Makefiles.   (line  62)
     4064* target, multiple in pattern rule:      Pattern Intro.       (line  49)
     4065* target, multiple rules for one:        Multiple Rules.      (line   6)
    32034066* target, touching:                      Instead of Execution.
    3204 * target-specific variables:             Target-specific.
    3205 * targets:                               Rule Syntax.
    3206 * targets without a file:                Phony Targets.
    3207 * targets, built-in special:             Special Targets.
    3208 * targets, empty:                        Empty Targets.
    3209 * targets, force:                        Force Targets.
    3210 * targets, introduction to:              Rule Introduction.
    3211 * targets, multiple:                     Multiple Targets.
    3212 * targets, phony:                        Phony Targets.
     4067                                                              (line  19)
     4068* target-specific variables:             Target-specific.     (line   6)
     4069* targets:                               Rule Syntax.         (line  18)
     4070* targets without a file:                Phony Targets.       (line   6)
     4071* targets, built-in special:             Special Targets.     (line   6)
     4072* targets, empty:                        Empty Targets.       (line   6)
     4073* targets, force:                        Force Targets.       (line   6)
     4074* targets, introduction to:              Rule Introduction.   (line   8)
     4075* targets, multiple:                     Multiple Targets.    (line   6)
     4076* targets, phony:                        Phony Targets.       (line   6)
    32134077* terminal rule:                         Match-Anything Rules.
    3214 * test (standard target):                Goals.
    3215 * testing compilation:                   Testing.
    3216 * tex <1>:                               Implicit Variables.
    3217 * tex:                                   Catalogue of Rules.
    3218 * TeX, rule to run:                      Catalogue of Rules.
    3219 * texi2dvi <1>:                          Implicit Variables.
    3220 * texi2dvi:                              Catalogue of Rules.
    3221 * Texinfo, rule to format:               Catalogue of Rules.
    3222 * tilde (~):                             Wildcards.
    3223 * touch (shell command) <1>:             Empty Targets.
    3224 * touch (shell command):                 Wildcard Examples.
     4078                                                              (line   6)
     4079* test (standard target):                Goals.               (line 115)
     4080* testing compilation:                   Testing.             (line   6)
     4081* tex <1>:                               Implicit Variables.  (line  91)
     4082* tex:                                   Catalogue of Rules.  (line 151)
     4083* TeX, rule to run:                      Catalogue of Rules.  (line 151)
     4084* texi2dvi <1>:                          Implicit Variables.  (line  95)
     4085* texi2dvi:                              Catalogue of Rules.  (line 158)
     4086* Texinfo, rule to format:               Catalogue of Rules.  (line 158)
     4087* tilde (~):                             Wildcards.           (line  11)
     4088* touch (shell command) <1>:             Empty Targets.       (line  25)
     4089* touch (shell command):                 Wildcard Examples.   (line  21)
    32254090* touching files:                        Instead of Execution.
    3226 * traditional directory search (GPATH):  Search Algorithm.
    3227 * types of prerequisites:                Prerequisite Types.
    3228 * undefined variables, warning message:  Options Summary.
    3229 * updating archive symbol directories:   Archive Symbols.
    3230 * updating makefiles:                    Remaking Makefiles.
    3231 * user defined functions:                Call Function.
    3232 * value:                                 Using Variables.
    3233 * value, how a variable gets it:         Values.
    3234 * variable:                              Using Variables.
    3235 * variable definition:                   Makefile Contents.
    3236 * variables:                             Variables Simplify.
    3237 * variables, $ in name:                  Computed Names.
    3238 * variables, and implicit rule:          Automatic Variables.
    3239 * variables, appending to:               Appending.
    3240 * variables, automatic:                  Automatic Variables.
    3241 * variables, command line:               Overriding.
    3242 * variables, command line, and recursion: Options/Recursion.
    3243 * variables, computed names:             Computed Names.
    3244 * variables, conditional assignment:     Flavors.
    3245 * variables, defining verbatim:          Defining.
    3246 * variables, environment <1>:            Environment.
    3247 * variables, environment:                Variables/Recursion.
    3248 * variables, exporting:                  Variables/Recursion.
    3249 * variables, flavors:                    Flavors.
    3250 * variables, how they get their values:  Values.
    3251 * variables, how to reference:           Reference.
    3252 * variables, loops in expansion:         Flavors.
    3253 * variables, modified reference:         Substitution Refs.
    3254 * variables, nested references:          Computed Names.
    3255 * variables, origin of:                  Origin Function.
    3256 * variables, overriding:                 Override Directive.
    3257 * variables, overriding with arguments:  Overriding.
    3258 * variables, pattern-specific:           Pattern-specific.
    3259 * variables, recursively expanded:       Flavors.
    3260 * variables, setting:                    Setting.
    3261 * variables, simply expanded:            Flavors.
    3262 * variables, spaces in values:           Flavors.
    3263 * variables, substituting suffix in:     Substitution Refs.
    3264 * variables, substitution reference:     Substitution Refs.
    3265 * variables, target-specific:            Target-specific.
    3266 * variables, unexpanded value:           Value Function.
    3267 * variables, warning for undefined:      Options Summary.
    3268 * varying prerequisites:                 Static Pattern.
    3269 * verbatim variable definition:          Defining.
    3270 * vpath:                                 Directory Search.
    3271 * VPATH, and implicit rules:             Implicit/Search.
    3272 * VPATH, and link libraries:             Libraries/Search.
     4091                                                              (line  19)
     4092* traditional directory search (GPATH):  Search Algorithm.    (line  42)
     4093* types of prerequisites:                Prerequisite Types.  (line   6)
     4094* undefined variables, warning message:  Options Summary.     (line 251)
     4095* updating archive symbol directories:   Archive Symbols.     (line   6)
     4096* updating makefiles:                    Remaking Makefiles.  (line   6)
     4097* user defined functions:                Call Function.       (line   6)
     4098* value:                                 Using Variables.     (line   6)
     4099* value, how a variable gets it:         Values.              (line   6)
     4100* variable:                              Using Variables.     (line   6)
     4101* variable definition:                   Makefile Contents.   (line  22)
     4102* variable references in commands:       Variables in Commands.
     4103                                                              (line   6)
     4104* variables:                             Variables Simplify.  (line   6)
     4105* variables, $ in name:                  Computed Names.      (line   6)
     4106* variables, and implicit rule:          Automatic Variables. (line   6)
     4107* variables, appending to:               Appending.           (line   6)
     4108* variables, automatic:                  Automatic Variables. (line   6)
     4109* variables, command line:               Overriding.          (line   6)
     4110* variables, command line, and recursion: Options/Recursion.  (line  17)
     4111* variables, computed names:             Computed Names.      (line   6)
     4112* variables, conditional assignment:     Flavors.             (line 129)
     4113* variables, defining verbatim:          Defining.            (line   6)
     4114* variables, environment <1>:            Environment.         (line   6)
     4115* variables, environment:                Variables/Recursion. (line   6)
     4116* variables, exporting:                  Variables/Recursion. (line   6)
     4117* variables, flavor of:                  Flavor Function.     (line   6)
     4118* variables, flavors:                    Flavors.             (line   6)
     4119* variables, how they get their values:  Values.              (line   6)
     4120* variables, how to reference:           Reference.           (line   6)
     4121* variables, loops in expansion:         Flavors.             (line  44)
     4122* variables, modified reference:         Substitution Refs.   (line   6)
     4123* variables, nested references:          Computed Names.      (line   6)
     4124* variables, origin of:                  Origin Function.     (line   6)
     4125* variables, overriding:                 Override Directive.  (line   6)
     4126* variables, overriding with arguments:  Overriding.          (line   6)
     4127* variables, pattern-specific:           Pattern-specific.    (line   6)
     4128* variables, recursively expanded:       Flavors.             (line   6)
     4129* variables, setting:                    Setting.             (line   6)
     4130* variables, simply expanded:            Flavors.             (line  56)
     4131* variables, spaces in values:           Flavors.             (line 103)
     4132* variables, substituting suffix in:     Substitution Refs.   (line   6)
     4133* variables, substitution reference:     Substitution Refs.   (line   6)
     4134* variables, target-specific:            Target-specific.     (line   6)
     4135* variables, unexpanded value:           Value Function.      (line   6)
     4136* variables, warning for undefined:      Options Summary.     (line 251)
     4137* varying prerequisites:                 Static Pattern.      (line   6)
     4138* verbatim variable definition:          Defining.            (line   6)
     4139* vpath:                                 Directory Search.    (line   6)
     4140* VPATH, and implicit rules:             Implicit/Search.     (line   6)
     4141* VPATH, and link libraries:             Libraries/Search.    (line   6)
    32734142* warnings, printing:                    Make Control Functions.
    3274 * weave <1>:                             Implicit Variables.
    3275 * weave:                                 Catalogue of Rules.
    3276 * Web, rule to run:                      Catalogue of Rules.
     4143                                                              (line  35)
     4144* weave <1>:                             Implicit Variables.  (line  98)
     4145* weave:                                 Catalogue of Rules.  (line 151)
     4146* Web, rule to run:                      Catalogue of Rules.  (line 151)
    32774147* what if:                               Instead of Execution.
    3278 * whitespace, in variable values:        Flavors.
    3279 * whitespace, stripping:                 Text Functions.
    3280 * wildcard:                              Wildcards.
    3281 * wildcard pitfalls:                     Wildcard Pitfall.
    3282 * wildcard, function:                    File Name Functions.
    3283 * wildcard, in archive member:           Archive Members.
    3284 * wildcard, in include:                  Include.
     4148                                                              (line  33)
     4149* whitespace, in variable values:        Flavors.             (line 103)
     4150* whitespace, stripping:                 Text Functions.      (line  80)
     4151* wildcard:                              Wildcards.           (line   6)
     4152* wildcard pitfalls:                     Wildcard Pitfall.    (line   6)
     4153* wildcard, function:                    File Name Functions. (line 107)
     4154* wildcard, in archive member:           Archive Members.     (line  36)
     4155* wildcard, in include:                  Include.             (line  13)
    32854156* wildcards and MS-DOS/MS-Windows backslashes: Wildcard Pitfall.
    3286 * word, selecting a:                     Text Functions.
    3287 * words, extracting first:               Text Functions.
    3288 * words, filtering:                      Text Functions.
    3289 * words, filtering out:                  Text Functions.
    3290 * words, finding number:                 Text Functions.
    3291 * words, iterating over:                 Foreach Function.
    3292 * words, joining lists:                  File Name Functions.
    3293 * words, removing duplicates:            Text Functions.
    3294 * words, selecting lists of:             Text Functions.
    3295 * writing rule commands:                 Commands.
    3296 * writing rules:                         Rules.
    3297 * yacc <1>:                              Implicit Variables.
    3298 * yacc <2>:                              Catalogue of Rules.
    3299 * yacc:                                  Sequences.
    3300 * Yacc, rule to run:                     Catalogue of Rules.
    3301 * ~ (tilde):                             Wildcards.
     4157                                                              (line  31)
     4158* Windows, choosing a shell in:          Choosing the Shell.  (line  36)
     4159* word, selecting a:                     Text Functions.      (line 159)
     4160* words, extracting first:               Text Functions.      (line 184)
     4161* words, extracting last:                Text Functions.      (line 197)
     4162* words, filtering:                      Text Functions.      (line 114)
     4163* words, filtering out:                  Text Functions.      (line 132)
     4164* words, finding number:                 Text Functions.      (line 180)
     4165* words, iterating over:                 Foreach Function.    (line   6)
     4166* words, joining lists:                  File Name Functions. (line  90)
     4167* words, removing duplicates:            Text Functions.      (line 155)
     4168* words, selecting lists of:             Text Functions.      (line 168)
     4169* writing rule commands:                 Commands.            (line   6)
     4170* writing rules:                         Rules.               (line   6)
     4171* yacc <1>:                              Implicit Variables.  (line  75)
     4172* yacc <2>:                              Catalogue of Rules.  (line 120)
     4173* yacc:                                  Sequences.           (line  18)
     4174* Yacc, rule to run:                     Catalogue of Rules.  (line 120)
     4175* ~ (tilde):                             Wildcards.           (line  11)
    33024176
    33034177
     
    33074181*******************************************
    33084182
     4183[index]
    33094184* Menu:
    33104185
    3311 * $$(@D):                                Automatic Variables.
    3312 * $$(@F):                                Automatic Variables.
    3313 * $$@:                                   Automatic Variables.
    3314 * $%:                                    Automatic Variables.
    3315 * $(%D):                                 Automatic Variables.
    3316 * $(%F):                                 Automatic Variables.
    3317 * $(*D):                                 Automatic Variables.
    3318 * $(*F):                                 Automatic Variables.
    3319 * $(+D):                                 Automatic Variables.
    3320 * $(+F):                                 Automatic Variables.
    3321 * $(.VARIABLES):                         Special Variables.
    3322 * $(<D):                                 Automatic Variables.
    3323 * $(<F):                                 Automatic Variables.
    3324 * $(?D):                                 Automatic Variables.
    3325 * $(?F):                                 Automatic Variables.
    3326 * $(@D):                                 Automatic Variables.
    3327 * $(@F):                                 Automatic Variables.
    3328 * $(^D):                                 Automatic Variables.
    3329 * $(^F):                                 Automatic Variables.
    3330 * $*:                                    Automatic Variables.
    3331 * $*, and static pattern:                Static Usage.
    3332 * $+:                                    Automatic Variables.
    3333 * $<:                                    Automatic Variables.
    3334 * $?:                                    Automatic Variables.
    3335 * $@:                                    Automatic Variables.
    3336 * $^:                                    Automatic Variables.
    3337 * % (automatic variable):                Automatic Variables.
    3338 * %D (automatic variable):               Automatic Variables.
    3339 * %F (automatic variable):               Automatic Variables.
    3340 * * (automatic variable):                Automatic Variables.
    3341 * * (automatic variable), unsupported bizarre usage: Missing.
    3342 * *D (automatic variable):               Automatic Variables.
    3343 * *F (automatic variable):               Automatic Variables.
    3344 * + (automatic variable):                Automatic Variables.
    3345 * +D (automatic variable):               Automatic Variables.
    3346 * +F (automatic variable):               Automatic Variables.
    3347 * .DEFAULT <1>:                          Last Resort.
    3348 * .DEFAULT:                              Special Targets.
    3349 * .DEFAULT, and empty commands:          Empty Commands.
    3350 * .DELETE_ON_ERROR <1>:                  Errors.
    3351 * .DELETE_ON_ERROR:                      Special Targets.
    3352 * .EXPORT_ALL_VARIABLES <1>:             Variables/Recursion.
    3353 * .EXPORT_ALL_VARIABLES:                 Special Targets.
    3354 * .IGNORE <1>:                           Errors.
    3355 * .IGNORE:                               Special Targets.
    3356 * .INTERMEDIATE:                         Special Targets.
    3357 * .LIBPATTERNS:                          Libraries/Search.
    3358 * .LOW_RESOLUTION_TIME:                  Special Targets.
    3359 * .NOTPARALLEL:                          Special Targets.
    3360 * .PHONY <1>:                            Special Targets.
    3361 * .PHONY:                                Phony Targets.
    3362 * .POSIX:                                Options/Recursion.
    3363 * .PRECIOUS <1>:                         Interrupts.
    3364 * .PRECIOUS:                             Special Targets.
    3365 * .SECONDARY:                            Special Targets.
    3366 * .SILENT <1>:                           Echoing.
    3367 * .SILENT:                               Special Targets.
    3368 * .SUFFIXES <1>:                         Suffix Rules.
    3369 * .SUFFIXES:                             Special Targets.
    3370 * .VARIABLES (list of variables):        Special Variables.
    3371 * /usr/gnu/include:                      Include.
    3372 * /usr/include:                          Include.
    3373 * /usr/local/include:                    Include.
    3374 * < (automatic variable):                Automatic Variables.
    3375 * <D (automatic variable):               Automatic Variables.
    3376 * <F (automatic variable):               Automatic Variables.
    3377 * ? (automatic variable):                Automatic Variables.
    3378 * ?D (automatic variable):               Automatic Variables.
    3379 * ?F (automatic variable):               Automatic Variables.
    3380 * @ (automatic variable):                Automatic Variables.
    3381 * @D (automatic variable):               Automatic Variables.
    3382 * @F (automatic variable):               Automatic Variables.
    3383 * ^ (automatic variable):                Automatic Variables.
    3384 * ^D (automatic variable):               Automatic Variables.
    3385 * ^F (automatic variable):               Automatic Variables.
    3386 * addprefix:                             File Name Functions.
    3387 * addsuffix:                             File Name Functions.
    3388 * AR:                                    Implicit Variables.
    3389 * ARFLAGS:                               Implicit Variables.
    3390 * AS:                                    Implicit Variables.
    3391 * ASFLAGS:                               Implicit Variables.
    3392 * basename:                              File Name Functions.
    3393 * bindir:                                Directory Variables.
    3394 * call:                                  Call Function.
    3395 * CC:                                    Implicit Variables.
    3396 * CFLAGS:                                Implicit Variables.
    3397 * CO:                                    Implicit Variables.
    3398 * COFLAGS:                               Implicit Variables.
    3399 * COMSPEC:                               Execution.
    3400 * CPP:                                   Implicit Variables.
    3401 * CPPFLAGS:                              Implicit Variables.
    3402 * CTANGLE:                               Implicit Variables.
    3403 * CURDIR:                                Recursion.
    3404 * CWEAVE:                                Implicit Variables.
    3405 * CXX:                                   Implicit Variables.
    3406 * CXXFLAGS:                              Implicit Variables.
    3407 * define:                                Defining.
    3408 * dir:                                   File Name Functions.
    3409 * else:                                  Conditional Syntax.
    3410 * endef:                                 Defining.
    3411 * endif:                                 Conditional Syntax.
     4186* $%:                                    Automatic Variables. (line  37)
     4187* $(%D):                                 Automatic Variables. (line 129)
     4188* $(%F):                                 Automatic Variables. (line 130)
     4189* $(*D):                                 Automatic Variables. (line 124)
     4190* $(*F):                                 Automatic Variables. (line 125)
     4191* $(+D):                                 Automatic Variables. (line 147)
     4192* $(+F):                                 Automatic Variables. (line 148)
     4193* $(<D):                                 Automatic Variables. (line 137)
     4194* $(<F):                                 Automatic Variables. (line 138)
     4195* $(?D):                                 Automatic Variables. (line 153)
     4196* $(?F):                                 Automatic Variables. (line 154)
     4197* $(@D):                                 Automatic Variables. (line 113)
     4198* $(@F):                                 Automatic Variables. (line 119)
     4199* $(^D):                                 Automatic Variables. (line 142)
     4200* $(^F):                                 Automatic Variables. (line 143)
     4201* $*:                                    Automatic Variables. (line  73)
     4202* $*, and static pattern:                Static Usage.        (line  81)
     4203* $+:                                    Automatic Variables. (line  63)
     4204* $<:                                    Automatic Variables. (line  43)
     4205* $?:                                    Automatic Variables. (line  48)
     4206* $@:                                    Automatic Variables. (line  30)
     4207* $^:                                    Automatic Variables. (line  53)
     4208* $|:                                    Automatic Variables. (line  69)
     4209* % (automatic variable):                Automatic Variables. (line  37)
     4210* %D (automatic variable):               Automatic Variables. (line 129)
     4211* %F (automatic variable):               Automatic Variables. (line 130)
     4212* * (automatic variable):                Automatic Variables. (line  73)
     4213* * (automatic variable), unsupported bizarre usage: Missing. (line  44)
     4214* *D (automatic variable):               Automatic Variables. (line 124)
     4215* *F (automatic variable):               Automatic Variables. (line 125)
     4216* + (automatic variable):                Automatic Variables. (line  63)
     4217* +D (automatic variable):               Automatic Variables. (line 147)
     4218* +F (automatic variable):               Automatic Variables. (line 148)
     4219* .DEFAULT <1>:                          Last Resort.         (line  23)
     4220* .DEFAULT:                              Special Targets.     (line  20)
     4221* .DEFAULT, and empty commands:          Empty Commands.      (line  16)
     4222* .DEFAULT_GOAL (define default goal):   Special Variables.   (line  10)
     4223* .DELETE_ON_ERROR <1>:                  Errors.              (line  64)
     4224* .DELETE_ON_ERROR:                      Special Targets.     (line  67)
     4225* .EXPORT_ALL_VARIABLES <1>:             Variables/Recursion. (line  99)
     4226* .EXPORT_ALL_VARIABLES:                 Special Targets.     (line 129)
     4227* .FEATURES (list of supported features): Special Variables.  (line  65)
     4228* .IGNORE <1>:                           Errors.              (line  30)
     4229* .IGNORE:                               Special Targets.     (line  74)
     4230* .INCLUDE_DIRS (list of include directories): Special Variables.
     4231                                                              (line  98)
     4232* .INTERMEDIATE:                         Special Targets.     (line  43)
     4233* .LIBPATTERNS:                          Libraries/Search.    (line   6)
     4234* .LOW_RESOLUTION_TIME:                  Special Targets.     (line  86)
     4235* .NOTPARALLEL:                          Special Targets.     (line 134)
     4236* .PHONY <1>:                            Special Targets.     (line   8)
     4237* .PHONY:                                Phony Targets.       (line  22)
     4238* .POSIX:                                Options/Recursion.   (line  60)
     4239* .PRECIOUS <1>:                         Interrupts.          (line  22)
     4240* .PRECIOUS:                             Special Targets.     (line  28)
     4241* .SECONDARY:                            Special Targets.     (line  48)
     4242* .SECONDEXPANSION <1>:                  Special Targets.     (line  57)
     4243* .SECONDEXPANSION:                      Secondary Expansion. (line   6)
     4244* .SILENT <1>:                           Echoing.             (line  24)
     4245* .SILENT:                               Special Targets.     (line 116)
     4246* .SUFFIXES <1>:                         Suffix Rules.        (line  61)
     4247* .SUFFIXES:                             Special Targets.     (line  15)
     4248* .VARIABLES (list of variables):        Special Variables.   (line  56)
     4249* /usr/gnu/include:                      Include.             (line  52)
     4250* /usr/include:                          Include.             (line  52)
     4251* /usr/local/include:                    Include.             (line  52)
     4252* < (automatic variable):                Automatic Variables. (line  43)
     4253* <D (automatic variable):               Automatic Variables. (line 137)
     4254* <F (automatic variable):               Automatic Variables. (line 138)
     4255* ? (automatic variable):                Automatic Variables. (line  48)
     4256* ?D (automatic variable):               Automatic Variables. (line 153)
     4257* ?F (automatic variable):               Automatic Variables. (line 154)
     4258* @ (automatic variable):                Automatic Variables. (line  30)
     4259* @D (automatic variable):               Automatic Variables. (line 113)
     4260* @F (automatic variable):               Automatic Variables. (line 119)
     4261* ^ (automatic variable):                Automatic Variables. (line  53)
     4262* ^D (automatic variable):               Automatic Variables. (line 142)
     4263* ^F (automatic variable):               Automatic Variables. (line 143)
     4264* abspath:                               File Name Functions. (line 121)
     4265* addprefix:                             File Name Functions. (line  79)
     4266* addsuffix:                             File Name Functions. (line  68)
     4267* and:                                   Conditional Functions.
     4268                                                              (line  45)
     4269* AR:                                    Implicit Variables.  (line  41)
     4270* ARFLAGS:                               Implicit Variables.  (line 117)
     4271* AS:                                    Implicit Variables.  (line  44)
     4272* ASFLAGS:                               Implicit Variables.  (line 120)
     4273* basename:                              File Name Functions. (line  57)
     4274* bindir:                                Directory Variables. (line  53)
     4275* call:                                  Call Function.       (line   6)
     4276* CC:                                    Implicit Variables.  (line  47)
     4277* CFLAGS:                                Implicit Variables.  (line 124)
     4278* CO:                                    Implicit Variables.  (line  50)
     4279* COFLAGS:                               Implicit Variables.  (line 130)
     4280* COMSPEC:                               Choosing the Shell.  (line  39)
     4281* CPP:                                   Implicit Variables.  (line  59)
     4282* CPPFLAGS:                              Implicit Variables.  (line 133)
     4283* CTANGLE:                               Implicit Variables.  (line 107)
     4284* CURDIR:                                Recursion.           (line  28)
     4285* CWEAVE:                                Implicit Variables.  (line 101)
     4286* CXX:                                   Implicit Variables.  (line  53)
     4287* CXXFLAGS:                              Implicit Variables.  (line 127)
     4288* define:                                Defining.            (line   6)
     4289* dir:                                   File Name Functions. (line  17)
     4290* else:                                  Conditional Syntax.  (line   6)
     4291* endef:                                 Defining.            (line   6)
     4292* endif:                                 Conditional Syntax.  (line   6)
    34124293* error:                                 Make Control Functions.
    3413 * eval:                                  Eval Function.
    3414 * exec_prefix:                           Directory Variables.
    3415 * export:                                Variables/Recursion.
    3416 * FC:                                    Implicit Variables.
    3417 * FFLAGS:                                Implicit Variables.
    3418 * filter:                                Text Functions.
    3419 * filter-out:                            Text Functions.
    3420 * findstring:                            Text Functions.
    3421 * firstword:                             Text Functions.
    3422 * foreach:                               Foreach Function.
    3423 * GET:                                   Implicit Variables.
    3424 * GFLAGS:                                Implicit Variables.
    3425 * GNUmakefile:                           Makefile Names.
    3426 * GPATH:                                 Search Algorithm.
    3427 * if:                                    If Function.
    3428 * ifdef:                                 Conditional Syntax.
    3429 * ifeq:                                  Conditional Syntax.
    3430 * ifndef:                                Conditional Syntax.
    3431 * ifneq:                                 Conditional Syntax.
    3432 * include:                               Include.
    3433 * join:                                  File Name Functions.
    3434 * LDFLAGS:                               Implicit Variables.
    3435 * LEX:                                   Implicit Variables.
    3436 * LFLAGS:                                Implicit Variables.
    3437 * libexecdir:                            Directory Variables.
    3438 * MAKE <1>:                              Flavors.
    3439 * MAKE:                                  MAKE Variable.
    3440 * MAKECMDGOALS:                          Goals.
    3441 * makefile:                              Makefile Names.
    3442 * Makefile:                              Makefile Names.
    3443 * MAKEFILES <1>:                         Variables/Recursion.
    3444 * MAKEFILES:                             MAKEFILES Variable.
    3445 * MAKEFLAGS:                             Options/Recursion.
    3446 * MAKEINFO:                              Implicit Variables.
    3447 * MAKELEVEL <1>:                         Flavors.
    3448 * MAKELEVEL:                             Variables/Recursion.
    3449 * MAKEOVERRIDES:                         Options/Recursion.
    3450 * MFLAGS:                                Options/Recursion.
    3451 * notdir:                                File Name Functions.
    3452 * origin:                                Origin Function.
    3453 * OUTPUT_OPTION:                         Catalogue of Rules.
    3454 * override:                              Override Directive.
    3455 * patsubst <1>:                          Text Functions.
    3456 * patsubst:                              Substitution Refs.
    3457 * PC:                                    Implicit Variables.
    3458 * PFLAGS:                                Implicit Variables.
    3459 * prefix:                                Directory Variables.
    3460 * RFLAGS:                                Implicit Variables.
    3461 * RM:                                    Implicit Variables.
    3462 * sbindir:                               Directory Variables.
    3463 * shell:                                 Shell Function.
    3464 * SHELL:                                 Execution.
    3465 * SHELL (command execution):             Execution.
    3466 * sort:                                  Text Functions.
    3467 * strip:                                 Text Functions.
    3468 * subst <1>:                             Text Functions.
    3469 * subst:                                 Multiple Targets.
    3470 * suffix:                                File Name Functions.
    3471 * SUFFIXES:                              Suffix Rules.
    3472 * TANGLE:                                Implicit Variables.
    3473 * TEX:                                   Implicit Variables.
    3474 * TEXI2DVI:                              Implicit Variables.
    3475 * unexport:                              Variables/Recursion.
    3476 * value:                                 Value Function.
    3477 * vpath:                                 Selective Search.
    3478 * VPATH:                                 General Search.
    3479 * vpath:                                 Directory Search.
    3480 * VPATH:                                 Directory Search.
     4294                                                              (line  11)
     4295* eval:                                  Eval Function.       (line   6)
     4296* exec_prefix:                           Directory Variables. (line  35)
     4297* export:                                Variables/Recursion. (line  40)
     4298* FC:                                    Implicit Variables.  (line  63)
     4299* FFLAGS:                                Implicit Variables.  (line 137)
     4300* filter:                                Text Functions.      (line 114)
     4301* filter-out:                            Text Functions.      (line 132)
     4302* findstring:                            Text Functions.      (line 103)
     4303* firstword:                             Text Functions.      (line 184)
     4304* flavor:                                Flavor Function.     (line   6)
     4305* foreach:                               Foreach Function.    (line   6)
     4306* GET:                                   Implicit Variables.  (line  67)
     4307* GFLAGS:                                Implicit Variables.  (line 140)
     4308* GNUmakefile:                           Makefile Names.      (line   7)
     4309* GPATH:                                 Search Algorithm.    (line  48)
     4310* if:                                    Conditional Functions.
     4311                                                              (line   6)
     4312* ifdef:                                 Conditional Syntax.  (line   6)
     4313* ifeq:                                  Conditional Syntax.  (line   6)
     4314* ifndef:                                Conditional Syntax.  (line   6)
     4315* ifneq:                                 Conditional Syntax.  (line   6)
     4316* include:                               Include.             (line   6)
     4317* info:                                  Make Control Functions.
     4318                                                              (line  43)
     4319* join:                                  File Name Functions. (line  90)
     4320* lastword:                              Text Functions.      (line 197)
     4321* LDFLAGS:                               Implicit Variables.  (line 143)
     4322* LEX:                                   Implicit Variables.  (line  70)
     4323* LFLAGS:                                Implicit Variables.  (line 147)
     4324* libexecdir:                            Directory Variables. (line  66)
     4325* LINT:                                  Implicit Variables.  (line  78)
     4326* LINTFLAGS:                             Implicit Variables.  (line 159)
     4327* M2C:                                   Implicit Variables.  (line  81)
     4328* MAKE <1>:                              Flavors.             (line  84)
     4329* MAKE:                                  MAKE Variable.       (line   6)
     4330* MAKE_RESTARTS (number of times make has restarted): Special Variables.
     4331                                                              (line  49)
     4332* MAKE_VERSION:                          Features.            (line 197)
     4333* MAKECMDGOALS:                          Goals.               (line  30)
     4334* makefile:                              Makefile Names.      (line   7)
     4335* Makefile:                              Makefile Names.      (line   7)
     4336* MAKEFILE_LIST:                         MAKEFILE_LIST Variable.
     4337                                                              (line   6)
     4338* MAKEFILES <1>:                         Variables/Recursion. (line 127)
     4339* MAKEFILES:                             MAKEFILES Variable.  (line   6)
     4340* MAKEFLAGS:                             Options/Recursion.   (line   6)
     4341* MAKEINFO:                              Implicit Variables.  (line  87)
     4342* MAKELEVEL <1>:                         Flavors.             (line  84)
     4343* MAKELEVEL:                             Variables/Recursion. (line 115)
     4344* MAKEOVERRIDES:                         Options/Recursion.   (line  49)
     4345* MAKESHELL (MS-DOS alternative to SHELL): Choosing the Shell.
     4346                                                              (line  25)
     4347* MFLAGS:                                Options/Recursion.   (line  65)
     4348* notdir:                                File Name Functions. (line  27)
     4349* or:                                    Conditional Functions.
     4350                                                              (line  37)
     4351* origin:                                Origin Function.     (line   6)
     4352* OUTPUT_OPTION:                         Catalogue of Rules.  (line 202)
     4353* override:                              Override Directive.  (line   6)
     4354* patsubst <1>:                          Text Functions.      (line  18)
     4355* patsubst:                              Substitution Refs.   (line  28)
     4356* PC:                                    Implicit Variables.  (line  84)
     4357* PFLAGS:                                Implicit Variables.  (line 153)
     4358* prefix:                                Directory Variables. (line  25)
     4359* realpath:                              File Name Functions. (line 114)
     4360* RFLAGS:                                Implicit Variables.  (line 156)
     4361* RM:                                    Implicit Variables.  (line 110)
     4362* sbindir:                               Directory Variables. (line  59)
     4363* shell:                                 Shell Function.      (line   6)
     4364* SHELL:                                 Choosing the Shell.  (line   6)
     4365* SHELL (command execution):             Execution.           (line   6)
     4366* sort:                                  Text Functions.      (line 146)
     4367* strip:                                 Text Functions.      (line  80)
     4368* subst <1>:                             Text Functions.      (line   9)
     4369* subst:                                 Multiple Targets.    (line  28)
     4370* suffix:                                File Name Functions. (line  43)
     4371* SUFFIXES:                              Suffix Rules.        (line  81)
     4372* TANGLE:                                Implicit Variables.  (line 104)
     4373* TEX:                                   Implicit Variables.  (line  91)
     4374* TEXI2DVI:                              Implicit Variables.  (line  94)
     4375* unexport:                              Variables/Recursion. (line  45)
     4376* value:                                 Value Function.      (line   6)
     4377* vpath:                                 Selective Search.    (line   6)
     4378* VPATH:                                 General Search.      (line   6)
     4379* vpath:                                 Directory Search.    (line   6)
     4380* VPATH:                                 Directory Search.    (line   6)
    34814381* warning:                               Make Control Functions.
    3482 * WEAVE:                                 Implicit Variables.
    3483 * wildcard <1>:                          File Name Functions.
    3484 * wildcard:                              Wildcard Function.
    3485 * word:                                  Text Functions.
    3486 * wordlist:                              Text Functions.
    3487 * words:                                 Text Functions.
    3488 * YACC:                                  Implicit Variables.
    3489 * YACCR:                                 Implicit Variables.
    3490 * YFLAGS:                                Implicit Variables.
    3491 
    3492 
     4382                                                              (line  35)
     4383* WEAVE:                                 Implicit Variables.  (line  98)
     4384* wildcard <1>:                          File Name Functions. (line 107)
     4385* wildcard:                              Wildcard Function.   (line   6)
     4386* word:                                  Text Functions.      (line 159)
     4387* wordlist:                              Text Functions.      (line 168)
     4388* words:                                 Text Functions.      (line 180)
     4389* YACC:                                  Implicit Variables.  (line  74)
     4390* YFLAGS:                                Implicit Variables.  (line 150)
     4391* | (automatic variable):                Automatic Variables. (line  69)
     4392
     4393
Note: See TracChangeset for help on using the changeset viewer.