'xrdef {Overview-title}{Overview of \code {make}} 'xrdef {Overview-pg}{1} 'xrdef {Overview-snt}{Chapter'tie1} 'xrdef {Reading-title}{How to Read This Manual} 'xrdef {Reading-pg}{1} 'xrdef {Reading-snt}{Section'tie1.1} 'xrdef {Bugs-title}{Problems and Bugs} 'xrdef {Bugs-pg}{1} 'xrdef {Bugs-snt}{Section'tie1.2} 'xrdef {Introduction-title}{An Introduction to Makefiles} 'xrdef {Introduction-pg}{3} 'xrdef {Introduction-snt}{Chapter'tie2} 'xrdef {Rule Introduction-title}{What a Rule Looks Like} 'xrdef {Rule Introduction-pg}{3} 'xrdef {Rule Introduction-snt}{Section'tie2.1} 'xrdef {Simple Makefile-title}{A Simple Makefile} 'xrdef {Simple Makefile-pg}{4} 'xrdef {Simple Makefile-snt}{Section'tie2.2} 'xrdef {How Make Works-title}{How \code {make} Processes a Makefile} 'xrdef {How Make Works-pg}{5} 'xrdef {How Make Works-snt}{Section'tie2.3} 'xrdef {Variables Simplify-title}{Variables Make Makefiles Simpler} 'xrdef {Variables Simplify-pg}{6} 'xrdef {Variables Simplify-snt}{Section'tie2.4} 'xrdef {make Deduces-title}{Letting \code {make} Deduce the Commands} 'xrdef {make Deduces-pg}{7} 'xrdef {make Deduces-snt}{Section'tie2.5} 'xrdef {Combine By Prerequisite-title}{Another Style of Makefile} 'xrdef {Combine By Prerequisite-pg}{7} 'xrdef {Combine By Prerequisite-snt}{Section'tie2.6} 'xrdef {Cleanup-title}{Rules for Cleaning the Directory} 'xrdef {Cleanup-pg}{8} 'xrdef {Cleanup-snt}{Section'tie2.7} 'xrdef {Makefiles-title}{Writing Makefiles} 'xrdef {Makefiles-pg}{9} 'xrdef {Makefiles-snt}{Chapter'tie3} 'xrdef {Makefile Contents-title}{What Makefiles Contain} 'xrdef {Makefile Contents-pg}{9} 'xrdef {Makefile Contents-snt}{Section'tie3.1} 'xrdef {Makefile Names-title}{What Name to Give Your Makefile} 'xrdef {Makefile Names-pg}{9} 'xrdef {Makefile Names-snt}{Section'tie3.2} 'xrdef {Include-title}{Including Other Makefiles} 'xrdef {Include-pg}{10} 'xrdef {Include-snt}{Section'tie3.3} 'xrdef {MAKEFILES Variable-title}{The Variable \code {MAKEFILES}} 'xrdef {MAKEFILES Variable-pg}{11} 'xrdef {MAKEFILES Variable-snt}{Section'tie3.4} 'xrdef {Remaking Makefiles-title}{How Makefiles Are Remade} 'xrdef {Remaking Makefiles-pg}{11} 'xrdef {Remaking Makefiles-snt}{Section'tie3.5} 'xrdef {Overriding Makefiles-title}{Overriding Part of Another Makefile} 'xrdef {Overriding Makefiles-pg}{13} 'xrdef {Overriding Makefiles-snt}{Section'tie3.6} 'xrdef {Reading Makefiles-title}{How \code {make} Reads a Makefile} 'xrdef {Reading Makefiles-pg}{13} 'xrdef {Reading Makefiles-snt}{Section'tie3.7} 'xrdef {Rules-title}{Writing Rules} 'xrdef {Rules-pg}{15} 'xrdef {Rules-snt}{Chapter'tie4} 'xrdef {Rule Syntax-title}{Rule Syntax} 'xrdef {Rule Syntax-pg}{15} 'xrdef {Rule Syntax-snt}{Section'tie4.1} 'xrdef {Wildcards-title}{Using Wildcard Characters in File Names} 'xrdef {Wildcards-pg}{16} 'xrdef {Wildcards-snt}{Section'tie4.2} 'xrdef {Wildcard Examples-title}{Wildcard Examples} 'xrdef {Wildcard Examples-pg}{16} 'xrdef {Wildcard Examples-snt}{Section'tie4.2.1} 'xrdef {Wildcard Pitfall-title}{Pitfalls of Using Wildcards} 'xrdef {Wildcard Pitfall-pg}{17} 'xrdef {Wildcard Pitfall-snt}{Section'tie4.2.2} 'xrdef {Wildcard Function-title}{The Function \code {wildcard}} 'xrdef {Wildcard Function-pg}{17} 'xrdef {Wildcard Function-snt}{Section'tie4.2.3} 'xrdef {Directory Search-title}{Searching Directories for Prerequisites} 'xrdef {Directory Search-pg}{18} 'xrdef {Directory Search-snt}{Section'tie4.3} 'xrdef {General Search-title}{\code {VPATH}: Search Path for All Prerequisites} 'xrdef {General Search-pg}{18} 'xrdef {General Search-snt}{Section'tie4.3.1} 'xrdef {Selective Search-title}{The \code {vpath} Directive} 'xrdef {Selective Search-pg}{19} 'xrdef {Selective Search-snt}{Section'tie4.3.2} 'xrdef {Search Algorithm-title}{How Directory Searches are Performed} 'xrdef {Search Algorithm-pg}{20} 'xrdef {Search Algorithm-snt}{Section'tie4.3.3} 'xrdef {Commands/Search-title}{Writing Shell Commands with Directory Search} 'xrdef {Commands/Search-pg}{21} 'xrdef {Commands/Search-snt}{Section'tie4.3.4} 'xrdef {Implicit/Search-title}{Directory Search and Implicit Rules} 'xrdef {Implicit/Search-pg}{21} 'xrdef {Implicit/Search-snt}{Section'tie4.3.5} 'xrdef {Libraries/Search-title}{Directory Search for Link Libraries} 'xrdef {Libraries/Search-pg}{21} 'xrdef {Libraries/Search-snt}{Section'tie4.3.6} 'xrdef {Phony Targets-title}{Phony Targets} 'xrdef {Phony Targets-pg}{22} 'xrdef {Phony Targets-snt}{Section'tie4.4} 'xrdef {Force Targets-title}{Rules without Commands or Prerequisites} 'xrdef {Force Targets-pg}{24} 'xrdef {Force Targets-snt}{Section'tie4.5} 'xrdef {Empty Targets-title}{Empty Target Files to Record Events} 'xrdef {Empty Targets-pg}{24} 'xrdef {Empty Targets-snt}{Section'tie4.6} 'xrdef {Special Targets-title}{Special Built-in Target Names} 'xrdef {Special Targets-pg}{25} 'xrdef {Special Targets-snt}{Section'tie4.7} 'xrdef {Multiple Targets-title}{Multiple Targets in a Rule} 'xrdef {Multiple Targets-pg}{27} 'xrdef {Multiple Targets-snt}{Section'tie4.8} 'xrdef {Multiple Rules-title}{Multiple Rules for One Target} 'xrdef {Multiple Rules-pg}{27} 'xrdef {Multiple Rules-snt}{Section'tie4.9} 'xrdef {Static Pattern-title}{Static Pattern Rules} 'xrdef {Static Pattern-pg}{28} 'xrdef {Static Pattern-snt}{Section'tie4.10} 'xrdef {Static Usage-title}{Syntax of Static Pattern Rules} 'xrdef {Static Usage-pg}{28} 'xrdef {Static Usage-snt}{Section'tie4.10.1} 'xrdef {Static versus Implicit-title}{Static Pattern Rules versus Implicit Rules} 'xrdef {Static versus Implicit-pg}{29} 'xrdef {Static versus Implicit-snt}{Section'tie4.10.2} 'xrdef {Double-Colon-title}{Double-Colon Rules} 'xrdef {Double-Colon-pg}{30} 'xrdef {Double-Colon-snt}{Section'tie4.11} 'xrdef {Automatic Prerequisites-title}{Generating Prerequisites Automatically} 'xrdef {Automatic Prerequisites-pg}{30} 'xrdef {Automatic Prerequisites-snt}{Section'tie4.12} 'xrdef {Commands-title}{Writing the Commands in Rules} 'xrdef {Commands-pg}{33} 'xrdef {Commands-snt}{Chapter'tie5} 'xrdef {Echoing-title}{Command Echoing} 'xrdef {Echoing-pg}{33} 'xrdef {Echoing-snt}{Section'tie5.1} 'xrdef {Execution-title}{Command Execution} 'xrdef {Execution-pg}{33} 'xrdef {Execution-snt}{Section'tie5.2} 'xrdef {Parallel-title}{Parallel Execution} 'xrdef {Parallel-pg}{35} 'xrdef {Parallel-snt}{Section'tie5.3} 'xrdef {Errors-title}{Errors in Commands} 'xrdef {Errors-pg}{36} 'xrdef {Errors-snt}{Section'tie5.4} 'xrdef {Interrupts-title}{Interrupting or Killing \code {make}} 'xrdef {Interrupts-pg}{37} 'xrdef {Interrupts-snt}{Section'tie5.5} 'xrdef {Recursion-title}{Recursive Use of \code {make}} 'xrdef {Recursion-pg}{37} 'xrdef {Recursion-snt}{Section'tie5.6} 'xrdef {MAKE Variable-title}{How the \code {MAKE} Variable Works} 'xrdef {MAKE Variable-pg}{38} 'xrdef {MAKE Variable-snt}{Section'tie5.6.1} 'xrdef {Variables/Recursion-title}{Communicating Variables to a Sub-\code {make}} 'xrdef {Variables/Recursion-pg}{38} 'xrdef {Variables/Recursion-snt}{Section'tie5.6.2} 'xrdef {Options/Recursion-title}{Communicating Options to a Sub-\code {make}} 'xrdef {Options/Recursion-pg}{40} 'xrdef {Options/Recursion-snt}{Section'tie5.6.3} 'xrdef {-w Option-title}{The \samp {--print-directory} Option} 'xrdef {-w Option-pg}{42} 'xrdef {-w Option-snt}{Section'tie5.6.4} 'xrdef {Sequences-title}{Defining Canned Command Sequences} 'xrdef {Sequences-pg}{42} 'xrdef {Sequences-snt}{Section'tie5.7} 'xrdef {Empty Commands-title}{Using Empty Commands} 'xrdef {Empty Commands-pg}{43} 'xrdef {Empty Commands-snt}{Section'tie5.8} 'xrdef {Using Variables-title}{How to Use Variables} 'xrdef {Using Variables-pg}{45} 'xrdef {Using Variables-snt}{Chapter'tie6} 'xrdef {Reference-title}{Basics of Variable References} 'xrdef {Reference-pg}{45} 'xrdef {Reference-snt}{Section'tie6.1} 'xrdef {Flavors-title}{The Two Flavors of Variables} 'xrdef {Flavors-pg}{46} 'xrdef {Flavors-snt}{Section'tie6.2} 'xrdef {Advanced-title}{Advanced Features for Reference to Variables} 'xrdef {Advanced-pg}{48} 'xrdef {Advanced-snt}{Section'tie6.3} 'xrdef {Substitution Refs-title}{Substitution References} 'xrdef {Substitution Refs-pg}{48} 'xrdef {Substitution Refs-snt}{Section'tie6.3.1} 'xrdef {Computed Names-title}{Computed Variable Names} 'xrdef {Computed Names-pg}{49} 'xrdef {Computed Names-snt}{Section'tie6.3.2} 'xrdef {Values-title}{How Variables Get Their Values} 'xrdef {Values-pg}{51} 'xrdef {Values-snt}{Section'tie6.4} 'xrdef {Setting-title}{Setting Variables} 'xrdef {Setting-pg}{51} 'xrdef {Setting-snt}{Section'tie6.5} 'xrdef {Appending-title}{Appending More Text to Variables} 'xrdef {Appending-pg}{52} 'xrdef {Appending-snt}{Section'tie6.6} 'xrdef {Override Directive-title}{The \code {override} Directive} 'xrdef {Override Directive-pg}{53} 'xrdef {Override Directive-snt}{Section'tie6.7} 'xrdef {Defining-title}{Defining Variables Verbatim} 'xrdef {Defining-pg}{54} 'xrdef {Defining-snt}{Section'tie6.8} 'xrdef {Environment-title}{Variables from the Environment} 'xrdef {Environment-pg}{55} 'xrdef {Environment-snt}{Section'tie6.9} 'xrdef {Target-specific-title}{Target-specific Variable Values} 'xrdef {Target-specific-pg}{55} 'xrdef {Target-specific-snt}{Section'tie6.10} 'xrdef {Pattern-specific-title}{Pattern-specific Variable Values} 'xrdef {Pattern-specific-pg}{56} 'xrdef {Pattern-specific-snt}{Section'tie6.11} 'xrdef {Conditionals-title}{Conditional Parts of Makefiles} 'xrdef {Conditionals-pg}{57} 'xrdef {Conditionals-snt}{Chapter'tie7} 'xrdef {Conditional Example-title}{Example of a Conditional} 'xrdef {Conditional Example-pg}{57} 'xrdef {Conditional Example-snt}{Section'tie7.1} 'xrdef {Conditional Syntax-title}{Syntax of Conditionals} 'xrdef {Conditional Syntax-pg}{58} 'xrdef {Conditional Syntax-snt}{Section'tie7.2} 'xrdef {Testing Flags-title}{Conditionals that Test Flags} 'xrdef {Testing Flags-pg}{60} 'xrdef {Testing Flags-snt}{Section'tie7.3} 'xrdef {Functions-title}{Functions for Transforming Text} 'xrdef {Functions-pg}{61} 'xrdef {Functions-snt}{Chapter'tie8} 'xrdef {Syntax of Functions-title}{Function Call Syntax} 'xrdef {Syntax of Functions-pg}{61} 'xrdef {Syntax of Functions-snt}{Section'tie8.1} 'xrdef {Text Functions-title}{Functions for String Substitution and Analysis} 'xrdef {Text Functions-pg}{62} 'xrdef {Text Functions-snt}{Section'tie8.2} 'xrdef {File Name Functions-title}{Functions for File Names} 'xrdef {File Name Functions-pg}{64} 'xrdef {File Name Functions-snt}{Section'tie8.3} 'xrdef {Foreach Function-title}{The \code {foreach} Function} 'xrdef {Foreach Function-pg}{67} 'xrdef {Foreach Function-snt}{Section'tie8.4} 'xrdef {If Function-title}{The \code {if} Function} 'xrdef {If Function-pg}{68} 'xrdef {If Function-snt}{Section'tie8.5} 'xrdef {Call Function-title}{The \code {call} Function} 'xrdef {Call Function-pg}{68} 'xrdef {Call Function-snt}{Section'tie8.6} 'xrdef {Origin Function-title}{The \code {origin} Function} 'xrdef {Origin Function-pg}{69} 'xrdef {Origin Function-snt}{Section'tie8.7} 'xrdef {Shell Function-title}{The \code {shell} Function} 'xrdef {Shell Function-pg}{70} 'xrdef {Shell Function-snt}{Section'tie8.8} 'xrdef {Make Control Functions-title}{Functions That Control Make} 'xrdef {Make Control Functions-pg}{71} 'xrdef {Make Control Functions-snt}{Section'tie8.9} 'xrdef {Running-title}{How to Run \code {make}} 'xrdef {Running-pg}{73} 'xrdef {Running-snt}{Chapter'tie9} 'xrdef {Makefile Arguments-title}{Arguments to Specify the Makefile} 'xrdef {Makefile Arguments-pg}{73} 'xrdef {Makefile Arguments-snt}{Section'tie9.1} 'xrdef {Goals-title}{Arguments to Specify the Goals} 'xrdef {Goals-pg}{73} 'xrdef {Goals-snt}{Section'tie9.2} 'xrdef {Instead of Execution-title}{Instead of Executing the Commands} 'xrdef {Instead of Execution-pg}{75} 'xrdef {Instead of Execution-snt}{Section'tie9.3} 'xrdef {Avoiding Compilation-title}{Avoiding Recompilation of Some Files} 'xrdef {Avoiding Compilation-pg}{76} 'xrdef {Avoiding Compilation-snt}{Section'tie9.4} 'xrdef {Overriding-title}{Overriding Variables} 'xrdef {Overriding-pg}{77} 'xrdef {Overriding-snt}{Section'tie9.5} 'xrdef {Testing-title}{Testing the Compilation of a Program} 'xrdef {Testing-pg}{77} 'xrdef {Testing-snt}{Section'tie9.6} 'xrdef {Options Summary-title}{Summary of Options} 'xrdef {Options Summary-pg}{78} 'xrdef {Options Summary-snt}{Section'tie9.7} 'xrdef {Implicit Rules-title}{Using Implicit Rules} 'xrdef {Implicit Rules-pg}{83} 'xrdef {Implicit Rules-snt}{Chapter'tie10} 'xrdef {Using Implicit-title}{Using Implicit Rules} 'xrdef {Using Implicit-pg}{83} 'xrdef {Using Implicit-snt}{Section'tie10.1} 'xrdef {Catalogue of Rules-title}{Catalogue of Implicit Rules} 'xrdef {Catalogue of Rules-pg}{84} 'xrdef {Catalogue of Rules-snt}{Section'tie10.2} 'xrdef {Implicit Variables-title}{Variables Used by Implicit Rules} 'xrdef {Implicit Variables-pg}{87} 'xrdef {Implicit Variables-snt}{Section'tie10.3} 'xrdef {Chained Rules-title}{Chains of Implicit Rules} 'xrdef {Chained Rules-pg}{89} 'xrdef {Chained Rules-snt}{Section'tie10.4} 'xrdef {Pattern Rules-title}{Defining and Redefining Pattern Rules} 'xrdef {Pattern Rules-pg}{90} 'xrdef {Pattern Rules-snt}{Section'tie10.5} 'xrdef {Pattern Intro-title}{Introduction to Pattern Rules} 'xrdef {Pattern Intro-pg}{91} 'xrdef {Pattern Intro-snt}{Section'tie10.5.1} 'xrdef {Pattern Examples-title}{Pattern Rule Examples} 'xrdef {Pattern Examples-pg}{91} 'xrdef {Pattern Examples-snt}{Section'tie10.5.2} 'xrdef {Automatic-title}{Automatic Variables} 'xrdef {Automatic-pg}{92} 'xrdef {Automatic-snt}{Section'tie10.5.3} 'xrdef {Pattern Match-title}{How Patterns Match} 'xrdef {Pattern Match-pg}{94} 'xrdef {Pattern Match-snt}{Section'tie10.5.4} 'xrdef {Match-Anything Rules-title}{Match-Anything Pattern Rules} 'xrdef {Match-Anything Rules-pg}{95} 'xrdef {Match-Anything Rules-snt}{Section'tie10.5.5} 'xrdef {Canceling Rules-title}{Canceling Implicit Rules} 'xrdef {Canceling Rules-pg}{96} 'xrdef {Canceling Rules-snt}{Section'tie10.5.6} 'xrdef {Last Resort-title}{Defining Last-Resort Default Rules} 'xrdef {Last Resort-pg}{96} 'xrdef {Last Resort-snt}{Section'tie10.6} 'xrdef {Suffix Rules-title}{Old-Fashioned Suffix Rules} 'xrdef {Suffix Rules-pg}{97} 'xrdef {Suffix Rules-snt}{Section'tie10.7} 'xrdef {Implicit Rule Search-title}{Implicit Rule Search Algorithm} 'xrdef {Implicit Rule Search-pg}{98} 'xrdef {Implicit Rule Search-snt}{Section'tie10.8} 'xrdef {Archives-title}{Using \code {make} to Update Archive Files} 'xrdef {Archives-pg}{101} 'xrdef {Archives-snt}{Chapter'tie11} 'xrdef {Archive Members-title}{Archive Members as Targets} 'xrdef {Archive Members-pg}{101} 'xrdef {Archive Members-snt}{Section'tie11.1} 'xrdef {Archive Update-title}{Implicit Rule for Archive Member Targets} 'xrdef {Archive Update-pg}{101} 'xrdef {Archive Update-snt}{Section'tie11.2} 'xrdef {Archive Symbols-title}{Updating Archive Symbol Directories} 'xrdef {Archive Symbols-pg}{102} 'xrdef {Archive Symbols-snt}{Section'tie11.2.1} 'xrdef {Archive Pitfalls-title}{Dangers When Using Archives} 'xrdef {Archive Pitfalls-pg}{102} 'xrdef {Archive Pitfalls-snt}{Section'tie11.3} 'xrdef {Archive Suffix Rules-title}{Suffix Rules for Archive Files} 'xrdef {Archive Suffix Rules-pg}{103} 'xrdef {Archive Suffix Rules-snt}{Section'tie11.4} 'xrdef {Features-title}{Features of GNU \code {make}} 'xrdef {Features-pg}{105} 'xrdef {Features-snt}{Chapter'tie12} 'xrdef {Missing-title}{Incompatibilities and Missing Features} 'xrdef {Missing-pg}{109} 'xrdef {Missing-snt}{Chapter'tie13} 'xrdef {Makefile Conventions-title}{Makefile Conventions} 'xrdef {Makefile Conventions-pg}{111} 'xrdef {Makefile Conventions-snt}{Chapter'tie14} 'xrdef {Makefile Basics-title}{General Conventions for Makefiles} 'xrdef {Makefile Basics-pg}{111} 'xrdef {Makefile Basics-snt}{Section'tie14.1} 'xrdef {Utilities in Makefiles-title}{Utilities in Makefiles} 'xrdef {Utilities in Makefiles-pg}{112} 'xrdef {Utilities in Makefiles-snt}{Section'tie14.2} 'xrdef {Command Variables-title}{Variables for Specifying Commands} 'xrdef {Command Variables-pg}{113} 'xrdef {Command Variables-snt}{Section'tie14.3} 'xrdef {Directory Variables-title}{Variables for Installation Directories} 'xrdef {Directory Variables-pg}{114} 'xrdef {Directory Variables-snt}{Section'tie14.4} 'xrdef {Standard Targets-title}{Standard Targets for Users} 'xrdef {Standard Targets-pg}{117} 'xrdef {Standard Targets-snt}{Section'tie14.5} 'xrdef {Install Command Categories-title}{Install Command Categories} 'xrdef {Install Command Categories-pg}{121} 'xrdef {Install Command Categories-snt}{Section'tie14.6} 'xrdef {Quick Reference-title}{Quick Reference} 'xrdef {Quick Reference-pg}{123} 'xrdef {Quick Reference-snt}{Appendix'tie'char65{}} 'xrdef {Error Messages-title}{Errors Generated by Make} 'xrdef {Error Messages-pg}{129} 'xrdef {Error Messages-snt}{Appendix'tie'char66{}} 'xrdef {Complex Makefile-title}{Complex Makefile Example} 'xrdef {Complex Makefile-pg}{133} 'xrdef {Complex Makefile-snt}{Appendix'tie'char67{}} 'xrdef {Concept Index-title}{Index of Concepts} 'xrdef {Concept Index-pg}{139} 'xrdef {Concept Index-snt}{} 'xrdef {Name Index-title}{Index of Functions, Variables, & Directives} 'xrdef {Name Index-pg}{149} 'xrdef {Name Index-snt}{} .