1 This is make.info, produced by makeinfo version 4.2 from make.texi.
3 INFO-DIR-SECTION GNU Packages
5 * Make: (make). Remake files automatically.
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.
12 This is Edition 0.60, last updated 08 July 2002, of `The GNU Make
13 Manual', for `make', Version 3.80.
15 Copyright 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
16 1997, 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
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".
26 File: make.info, Node: Concept Index, Next: Name Index, Prev: GNU Free Documentation License, Up: Top
33 * # (comments), in commands: Commands.
34 * # (comments), in makefile: Makefile Contents.
35 * #include: Automatic Prerequisites.
36 * $$@, support for: Automatic.
37 * $, in function call: Syntax of Functions.
38 * $, in rules: Rule Syntax.
39 * $, in variable name: Computed Names.
40 * $, in variable reference: Reference.
41 * %, in pattern rules: Pattern Intro.
42 * %, quoting in patsubst: Text Functions.
43 * %, quoting in static pattern: Static Usage.
44 * %, quoting in vpath: Selective Search.
45 * %, quoting with \ (backslash) <1>: Text Functions.
46 * %, quoting with \ (backslash) <2>: Static Usage.
47 * %, quoting with \ (backslash): Selective Search.
48 * * (wildcard character): Wildcards.
49 * +, and command execution: Instead of Execution.
50 * +, and commands: MAKE Variable.
51 * +, and define: Sequences.
53 * +=, expansion: Reading Makefiles.
54 * ,v (RCS file extension): Catalogue of Rules.
55 * - (in commands): Errors.
56 * -, and define: Sequences.
57 * --always-make: Options Summary.
58 * --assume-new <1>: Options Summary.
59 * --assume-new: Instead of Execution.
60 * --assume-new, and recursion: Options/Recursion.
61 * --assume-old <1>: Options Summary.
62 * --assume-old: Avoiding Compilation.
63 * --assume-old, and recursion: Options/Recursion.
64 * --debug: Options Summary.
65 * --directory <1>: Options Summary.
66 * --directory: Recursion.
67 * --directory, and --print-directory: -w Option.
68 * --directory, and recursion: Options/Recursion.
69 * --dry-run <1>: Options Summary.
70 * --dry-run <2>: Instead of Execution.
72 * --environment-overrides: Options Summary.
73 * --file <1>: Options Summary.
74 * --file <2>: Makefile Arguments.
75 * --file: Makefile Names.
76 * --file, and recursion: Options/Recursion.
77 * --help: Options Summary.
78 * --ignore-errors <1>: Options Summary.
79 * --ignore-errors: Errors.
80 * --include-dir <1>: Options Summary.
81 * --include-dir: Include.
82 * --jobs <1>: Options Summary.
84 * --jobs, and recursion: Options/Recursion.
85 * --just-print <1>: Options Summary.
86 * --just-print <2>: Instead of Execution.
87 * --just-print: Echoing.
88 * --keep-going <1>: Options Summary.
89 * --keep-going <2>: Testing.
90 * --keep-going: Errors.
91 * --load-average <1>: Options Summary.
92 * --load-average: Parallel.
93 * --makefile <1>: Options Summary.
94 * --makefile <2>: Makefile Arguments.
95 * --makefile: Makefile Names.
96 * --max-load <1>: Options Summary.
97 * --max-load: Parallel.
98 * --new-file <1>: Options Summary.
99 * --new-file: Instead of Execution.
100 * --new-file, and recursion: Options/Recursion.
101 * --no-builtin-rules: Options Summary.
102 * --no-builtin-variables: Options Summary.
103 * --no-keep-going: Options Summary.
104 * --no-print-directory <1>: Options Summary.
105 * --no-print-directory: -w Option.
106 * --old-file <1>: Options Summary.
107 * --old-file: Avoiding Compilation.
108 * --old-file, and recursion: Options/Recursion.
109 * --print-data-base: Options Summary.
110 * --print-directory: Options Summary.
111 * --print-directory, and --directory: -w Option.
112 * --print-directory, and recursion: -w Option.
113 * --print-directory, disabling: -w Option.
114 * --question <1>: Options Summary.
115 * --question: Instead of Execution.
116 * --quiet <1>: Options Summary.
118 * --recon <1>: Options Summary.
119 * --recon <2>: Instead of Execution.
121 * --silent <1>: Options Summary.
123 * --stop: Options Summary.
124 * --touch <1>: Options Summary.
125 * --touch: Instead of Execution.
126 * --touch, and recursion: MAKE Variable.
127 * --version: Options Summary.
128 * --warn-undefined-variables: Options Summary.
129 * --what-if <1>: Options Summary.
130 * --what-if: Instead of Execution.
131 * -B: Options Summary.
132 * -b: Options Summary.
133 * -C <1>: Options Summary.
135 * -C, and -w: -w Option.
136 * -C, and recursion: Options/Recursion.
137 * -d: Options Summary.
138 * -e: Options Summary.
139 * -e (shell flag): Automatic Prerequisites.
140 * -f <1>: Options Summary.
141 * -f <2>: Makefile Arguments.
142 * -f: Makefile Names.
143 * -f, and recursion: Options/Recursion.
144 * -h: Options Summary.
145 * -I: Options Summary.
146 * -i <1>: Options Summary.
149 * -j <1>: Options Summary.
151 * -j, and archive update: Archive Pitfalls.
152 * -j, and recursion: Options/Recursion.
153 * -k <1>: Options Summary.
156 * -l: Options Summary.
157 * -l (library search): Libraries/Search.
158 * -l (load average): Parallel.
159 * -m: Options Summary.
160 * -M (to compiler): Automatic Prerequisites.
161 * -MM (to GNU compiler): Automatic Prerequisites.
162 * -n <1>: Options Summary.
163 * -n <2>: Instead of Execution.
165 * -o <1>: Options Summary.
166 * -o: Avoiding Compilation.
167 * -o, and recursion: Options/Recursion.
168 * -p: Options Summary.
169 * -q <1>: Options Summary.
170 * -q: Instead of Execution.
171 * -R: Options Summary.
172 * -r: Options Summary.
173 * -S: Options Summary.
174 * -s <1>: Options Summary.
176 * -t <1>: Options Summary.
177 * -t: Instead of Execution.
178 * -t, and recursion: MAKE Variable.
179 * -v: Options Summary.
180 * -W: Options Summary.
181 * -w: Options Summary.
182 * -W: Instead of Execution.
183 * -w, and -C: -w Option.
184 * -w, and recursion: -w Option.
185 * -W, and recursion: Options/Recursion.
186 * -w, disabling: -w Option.
187 * .a (archives): Archive Suffix Rules.
188 * .C: Catalogue of Rules.
189 * .c: Catalogue of Rules.
190 * .cc: Catalogue of Rules.
191 * .ch: Catalogue of Rules.
192 * .d: Automatic Prerequisites.
193 * .def: Catalogue of Rules.
194 * .dvi: Catalogue of Rules.
195 * .F: Catalogue of Rules.
196 * .f: Catalogue of Rules.
197 * .info: Catalogue of Rules.
198 * .l: Catalogue of Rules.
199 * .LIBPATTERNS, and link libraries: Libraries/Search.
200 * .ln: Catalogue of Rules.
201 * .mod: Catalogue of Rules.
202 * .o: Catalogue of Rules.
203 * .p: Catalogue of Rules.
204 * .PRECIOUS intermediate files: Chained Rules.
205 * .r: Catalogue of Rules.
206 * .S: Catalogue of Rules.
207 * .s: Catalogue of Rules.
208 * .sh: Catalogue of Rules.
209 * .sym: Catalogue of Rules.
210 * .tex: Catalogue of Rules.
211 * .texi: Catalogue of Rules.
212 * .texinfo: Catalogue of Rules.
213 * .txinfo: Catalogue of Rules.
214 * .w: Catalogue of Rules.
215 * .web: Catalogue of Rules.
216 * .y: Catalogue of Rules.
217 * :: rules (double-colon): Double-Colon.
222 * =, expansion: Reading Makefiles.
223 * ? (wildcard character): Wildcards.
226 * ?=, expansion: Reading Makefiles.
227 * @ (in commands): Echoing.
228 * @, and define: Sequences.
229 * [...] (wildcard characters): Wildcards.
230 * \ (backslash), for continuation lines: Simple Makefile.
231 * \ (backslash), in commands: Execution.
232 * \ (backslash), to quote % <1>: Text Functions.
233 * \ (backslash), to quote % <2>: Static Usage.
234 * \ (backslash), to quote %: Selective Search.
235 * __.SYMDEF: Archive Symbols.
236 * algorithm for directory search: Search Algorithm.
237 * all (standard target): Goals.
238 * appending to variables: Appending.
239 * ar: Implicit Variables.
241 * archive member targets: Archive Members.
242 * archive symbol directory updating: Archive Symbols.
243 * archive, and -j: Archive Pitfalls.
244 * archive, and parallel execution: Archive Pitfalls.
245 * archive, suffix rule for: Archive Suffix Rules.
246 * Arg list too long: Options/Recursion.
247 * arguments of functions: Syntax of Functions.
248 * as <1>: Implicit Variables.
249 * as: Catalogue of Rules.
250 * assembly, rule to compile: Catalogue of Rules.
251 * automatic generation of prerequisites <1>: Automatic Prerequisites.
252 * automatic generation of prerequisites: Include.
253 * automatic variables: Automatic.
254 * backquotes: Shell Function.
255 * backslash (\), for continuation lines: Simple Makefile.
256 * backslash (\), in commands: Execution.
257 * backslash (\), to quote % <1>: Text Functions.
258 * backslash (\), to quote % <2>: Static Usage.
259 * backslash (\), to quote %: Selective Search.
260 * backslashes in pathnames and wildcard expansion: Wildcard Pitfall.
261 * basename: File Name Functions.
262 * binary packages: Install Command Categories.
263 * broken pipe: Parallel.
264 * bugs, reporting: Bugs.
265 * built-in special targets: Special Targets.
266 * C++, rule to compile: Catalogue of Rules.
267 * C, rule to compile: Catalogue of Rules.
268 * cc <1>: Implicit Variables.
269 * cc: Catalogue of Rules.
270 * cd (shell command) <1>: MAKE Variable.
271 * cd (shell command): Execution.
272 * chains of rules: Chained Rules.
273 * check (standard target): Goals.
274 * clean (standard target): Goals.
275 * clean target <1>: Cleanup.
276 * clean target: Simple Makefile.
277 * cleaning up: Cleanup.
278 * clobber (standard target): Goals.
279 * co <1>: Implicit Variables.
280 * co: Catalogue of Rules.
281 * combining rules by prerequisite: Combine By Prerequisite.
282 * command line variable definitions, and recursion: Options/Recursion.
283 * command line variables: Overriding.
284 * commands: Rule Syntax.
285 * commands, backslash (\) in: Execution.
286 * commands, comments in: Commands.
287 * commands, echoing: Echoing.
288 * commands, empty: Empty Commands.
289 * commands, errors in: Errors.
290 * commands, execution: Execution.
291 * commands, execution in parallel: Parallel.
292 * commands, expansion: Shell Function.
293 * commands, how to write: Commands.
294 * commands, instead of executing: Instead of Execution.
295 * commands, introduction to: Rule Introduction.
296 * commands, quoting newlines in: Execution.
297 * commands, sequences of: Sequences.
298 * comments, in commands: Commands.
299 * comments, in makefile: Makefile Contents.
300 * compatibility: Features.
301 * compatibility in exporting: Variables/Recursion.
302 * compilation, testing: Testing.
303 * computed variable name: Computed Names.
304 * conditional expansion: If Function.
305 * conditional variable assignment: Flavors.
306 * conditionals: Conditionals.
307 * continuation lines: Simple Makefile.
308 * controlling make: Make Control Functions.
309 * conventions for makefiles: Makefile Conventions.
310 * ctangle <1>: Implicit Variables.
311 * ctangle: Catalogue of Rules.
312 * cweave <1>: Implicit Variables.
313 * cweave: Catalogue of Rules.
314 * data base of make rules: Options Summary.
315 * deducing commands (implicit rules): make Deduces.
316 * default directories for included makefiles: Include.
317 * default goal <1>: Rules.
318 * default goal: How Make Works.
319 * default makefile name: Makefile Names.
320 * default rules, last-resort: Last Resort.
321 * define, expansion: Reading Makefiles.
322 * defining variables verbatim: Defining.
323 * deletion of target files <1>: Interrupts.
324 * deletion of target files: Errors.
325 * directive: Makefile Contents.
326 * directories, printing them: -w Option.
327 * directories, updating archive symbol: Archive Symbols.
328 * directory part: File Name Functions.
329 * directory search (VPATH): Directory Search.
330 * directory search (VPATH), and implicit rules: Implicit/Search.
331 * directory search (VPATH), and link libraries: Libraries/Search.
332 * directory search (VPATH), and shell commands: Commands/Search.
333 * directory search algorithm: Search Algorithm.
334 * directory search, traditional (GPATH): Search Algorithm.
335 * dist (standard target): Goals.
336 * distclean (standard target): Goals.
337 * dollar sign ($), in function call: Syntax of Functions.
338 * dollar sign ($), in rules: Rule Syntax.
339 * dollar sign ($), in variable name: Computed Names.
340 * dollar sign ($), in variable reference: Reference.
341 * double-colon rules: Double-Colon.
342 * duplicate words, removing: Text Functions.
343 * E2BIG: Options/Recursion.
344 * echoing of commands: Echoing.
345 * editor: Introduction.
346 * Emacs (M-x compile): Errors.
347 * empty commands: Empty Commands.
348 * empty targets: Empty Targets.
349 * environment: Environment.
350 * environment, and recursion: Variables/Recursion.
351 * environment, SHELL in: Execution.
352 * error, stopping on: Make Control Functions.
353 * errors (in commands): Errors.
354 * errors with wildcards: Wildcard Pitfall.
355 * evaluating makefile syntax: Eval Function.
356 * execution, in parallel: Parallel.
357 * execution, instead of: Instead of Execution.
358 * execution, of commands: Execution.
359 * exit status (errors): Errors.
360 * explicit rule, definition of: Makefile Contents.
361 * explicit rule, expansion: Reading Makefiles.
362 * exporting variables: Variables/Recursion.
363 * f77 <1>: Implicit Variables.
364 * f77: Catalogue of Rules.
365 * FDL, GNU Free Documentation License: GNU Free Documentation License.
366 * features of GNU make: Features.
367 * features, missing: Missing.
368 * file name functions: File Name Functions.
369 * file name of makefile: Makefile Names.
370 * file name of makefile, how to specify: Makefile Names.
371 * file name prefix, adding: File Name Functions.
372 * file name suffix: File Name Functions.
373 * file name suffix, adding: File Name Functions.
374 * file name with wildcards: Wildcards.
375 * file name, basename of: File Name Functions.
376 * file name, directory part: File Name Functions.
377 * file name, nondirectory part: File Name Functions.
378 * files, assuming new: Instead of Execution.
379 * files, assuming old: Avoiding Compilation.
380 * files, avoiding recompilation of: Avoiding Compilation.
381 * files, intermediate: Chained Rules.
382 * filtering out words: Text Functions.
383 * filtering words: Text Functions.
384 * finding strings: Text Functions.
385 * flags: Options Summary.
386 * flags for compilers: Implicit Variables.
387 * flavors of variables: Flavors.
388 * FORCE: Force Targets.
389 * force targets: Force Targets.
390 * Fortran, rule to compile: Catalogue of Rules.
391 * functions: Functions.
392 * functions, for controlling make: Make Control Functions.
393 * functions, for file names: File Name Functions.
394 * functions, for text: Text Functions.
395 * functions, syntax of: Syntax of Functions.
396 * functions, user defined: Call Function.
397 * g++ <1>: Implicit Variables.
398 * g++: Catalogue of Rules.
399 * gcc: Catalogue of Rules.
400 * generating prerequisites automatically <1>: Automatic Prerequisites.
401 * generating prerequisites automatically: Include.
402 * get <1>: Implicit Variables.
403 * get: Catalogue of Rules.
404 * globbing (wildcards): Wildcards.
405 * goal: How Make Works.
406 * goal, default <1>: Rules.
407 * goal, default: How Make Works.
408 * goal, how to specify: Goals.
409 * home directory: Wildcards.
410 * IEEE Standard 1003.2: Overview.
411 * ifdef, expansion: Reading Makefiles.
412 * ifeq, expansion: Reading Makefiles.
413 * ifndef, expansion: Reading Makefiles.
414 * ifneq, expansion: Reading Makefiles.
415 * implicit rule: Implicit Rules.
416 * implicit rule, and directory search: Implicit/Search.
417 * implicit rule, and VPATH: Implicit/Search.
418 * implicit rule, definition of: Makefile Contents.
419 * implicit rule, expansion: Reading Makefiles.
420 * implicit rule, how to use: Using Implicit.
421 * implicit rule, introduction to: make Deduces.
422 * implicit rule, predefined: Catalogue of Rules.
423 * implicit rule, search algorithm: Implicit Rule Search.
424 * included makefiles, default directories: Include.
425 * including (MAKEFILE_LIST variable): MAKEFILE_LIST Variable.
426 * including (MAKEFILES variable): MAKEFILES Variable.
427 * including other makefiles: Include.
428 * incompatibilities: Missing.
429 * Info, rule to format: Catalogue of Rules.
430 * install (standard target): Goals.
431 * intermediate files: Chained Rules.
432 * intermediate files, preserving: Chained Rules.
433 * intermediate targets, explicit: Special Targets.
434 * interrupt: Interrupts.
435 * job slots: Parallel.
436 * job slots, and recursion: Options/Recursion.
437 * jobs, limiting based on load: Parallel.
438 * joining lists of words: File Name Functions.
439 * killing (interruption): Interrupts.
440 * last-resort default rules: Last Resort.
441 * ld: Catalogue of Rules.
442 * lex <1>: Implicit Variables.
443 * lex: Catalogue of Rules.
444 * Lex, rule to run: Catalogue of Rules.
445 * libraries for linking, directory search: Libraries/Search.
446 * library archive, suffix rule for: Archive Suffix Rules.
447 * limiting jobs based on load: Parallel.
448 * link libraries, and directory search: Libraries/Search.
449 * link libraries, patterns matching: Libraries/Search.
450 * linking, predefined rule for: Catalogue of Rules.
451 * lint: Catalogue of Rules.
452 * lint, rule to run: Catalogue of Rules.
453 * list of all prerequisites: Automatic.
454 * list of changed prerequisites: Automatic.
455 * load average: Parallel.
456 * loops in variable expansion: Flavors.
457 * lpr (shell command) <1>: Empty Targets.
458 * lpr (shell command): Wildcard Examples.
459 * m2c: Catalogue of Rules.
460 * macro: Using Variables.
461 * make depend: Automatic Prerequisites.
462 * MAKECMDGOALS: Goals.
463 * makefile: Introduction.
464 * makefile name: Makefile Names.
465 * makefile name, how to specify: Makefile Names.
466 * makefile rule parts: Rule Introduction.
467 * makefile syntax, evaluating: Eval Function.
468 * makefile, and MAKEFILES variable: MAKEFILES Variable.
469 * makefile, conventions for: Makefile Conventions.
470 * makefile, how make processes: How Make Works.
471 * makefile, how to write: Makefiles.
472 * makefile, including: Include.
473 * makefile, overriding: Overriding Makefiles.
474 * makefile, parsing: Reading Makefiles.
475 * makefile, remaking of: Remaking Makefiles.
476 * makefile, simple: Simple Makefile.
477 * makefiles, and MAKEFILE_LIST variable: MAKEFILE_LIST Variable.
478 * makefiles, and special variables: Special Variables.
479 * makeinfo <1>: Implicit Variables.
480 * makeinfo: Catalogue of Rules.
481 * match-anything rule: Match-Anything Rules.
482 * match-anything rule, used to override: Overriding Makefiles.
483 * missing features: Missing.
484 * mistakes with wildcards: Wildcard Pitfall.
485 * modified variable reference: Substitution Refs.
486 * Modula-2, rule to compile: Catalogue of Rules.
487 * mostlyclean (standard target): Goals.
488 * multiple rules for one target: Multiple Rules.
489 * multiple rules for one target (::): Double-Colon.
490 * multiple targets: Multiple Targets.
491 * multiple targets, in pattern rule: Pattern Intro.
492 * name of makefile: Makefile Names.
493 * name of makefile, how to specify: Makefile Names.
494 * nested variable reference: Computed Names.
495 * newline, quoting, in commands: Execution.
496 * newline, quoting, in makefile: Simple Makefile.
497 * nondirectory part: File Name Functions.
498 * normal prerequisites: Prerequisite Types.
499 * OBJ: Variables Simplify.
500 * obj: Variables Simplify.
501 * OBJECTS: Variables Simplify.
502 * objects: Variables Simplify.
503 * OBJS: Variables Simplify.
504 * objs: Variables Simplify.
505 * old-fashioned suffix rules: Suffix Rules.
506 * options: Options Summary.
507 * options, and recursion: Options/Recursion.
508 * options, setting from environment: Options/Recursion.
509 * options, setting in makefiles: Options/Recursion.
510 * order of pattern rules: Pattern Intro.
511 * order-only prerequisites: Prerequisite Types.
512 * origin of variable: Origin Function.
513 * overriding makefiles: Overriding Makefiles.
514 * overriding variables with arguments: Overriding.
515 * overriding with override: Override Directive.
516 * parallel execution: Parallel.
517 * parallel execution, and archive update: Archive Pitfalls.
518 * parallel execution, overriding: Special Targets.
519 * parts of makefile rule: Rule Introduction.
520 * Pascal, rule to compile: Catalogue of Rules.
521 * pattern rule: Pattern Intro.
522 * pattern rule, expansion: Reading Makefiles.
523 * pattern rules, order of: Pattern Intro.
524 * pattern rules, static (not implicit): Static Pattern.
525 * pattern rules, static, syntax of: Static Usage.
526 * pattern-specific variables: Pattern-specific.
527 * pc <1>: Implicit Variables.
528 * pc: Catalogue of Rules.
529 * phony targets: Phony Targets.
530 * pitfalls of wildcards: Wildcard Pitfall.
531 * portability: Features.
533 * POSIX.2: Options/Recursion.
534 * post-installation commands: Install Command Categories.
535 * pre-installation commands: Install Command Categories.
536 * precious targets: Special Targets.
537 * predefined rules and variables, printing: Options Summary.
538 * prefix, adding: File Name Functions.
539 * prerequisite: Rules.
540 * prerequisite pattern, implicit: Pattern Intro.
541 * prerequisite pattern, static (not implicit): Static Usage.
542 * prerequisite types: Prerequisite Types.
543 * prerequisite, expansion: Reading Makefiles.
544 * prerequisites: Rule Syntax.
545 * prerequisites, automatic generation <1>: Automatic Prerequisites.
546 * prerequisites, automatic generation: Include.
547 * prerequisites, introduction to: Rule Introduction.
548 * prerequisites, list of all: Automatic.
549 * prerequisites, list of changed: Automatic.
550 * prerequisites, normal: Prerequisite Types.
551 * prerequisites, order-only: Prerequisite Types.
552 * prerequisites, varying (static pattern): Static Pattern.
553 * preserving intermediate files: Chained Rules.
554 * preserving with .PRECIOUS <1>: Chained Rules.
555 * preserving with .PRECIOUS: Special Targets.
556 * preserving with .SECONDARY: Special Targets.
557 * print (standard target): Goals.
558 * print target <1>: Empty Targets.
559 * print target: Wildcard Examples.
560 * printing directories: -w Option.
561 * printing of commands: Echoing.
562 * printing user warnings: Make Control Functions.
563 * problems and bugs, reporting: Bugs.
564 * problems with wildcards: Wildcard Pitfall.
565 * processing a makefile: How Make Works.
566 * question mode: Instead of Execution.
567 * quoting %, in patsubst: Text Functions.
568 * quoting %, in static pattern: Static Usage.
569 * quoting %, in vpath: Selective Search.
570 * quoting newline, in commands: Execution.
571 * quoting newline, in makefile: Simple Makefile.
572 * Ratfor, rule to compile: Catalogue of Rules.
573 * RCS, rule to extract from: Catalogue of Rules.
574 * reading makefiles: Reading Makefiles.
575 * README: Makefile Names.
576 * realclean (standard target): Goals.
577 * recompilation: Introduction.
578 * recompilation, avoiding: Avoiding Compilation.
579 * recording events with empty targets: Empty Targets.
580 * recursion: Recursion.
581 * recursion, and -C: Options/Recursion.
582 * recursion, and -f: Options/Recursion.
583 * recursion, and -j: Options/Recursion.
584 * recursion, and -o: Options/Recursion.
585 * recursion, and -t: MAKE Variable.
586 * recursion, and -w: -w Option.
587 * recursion, and -W: Options/Recursion.
588 * recursion, and command line variable definitions: Options/Recursion.
589 * recursion, and environment: Variables/Recursion.
590 * recursion, and MAKE variable: MAKE Variable.
591 * recursion, and MAKEFILES variable: MAKEFILES Variable.
592 * recursion, and options: Options/Recursion.
593 * recursion, and printing directories: -w Option.
594 * recursion, and variables: Variables/Recursion.
595 * recursion, level of: Variables/Recursion.
596 * recursive variable expansion <1>: Flavors.
597 * recursive variable expansion: Using Variables.
598 * recursively expanded variables: Flavors.
599 * reference to variables <1>: Advanced.
600 * reference to variables: Reference.
601 * relinking: How Make Works.
602 * remaking makefiles: Remaking Makefiles.
603 * removal of target files <1>: Interrupts.
604 * removal of target files: Errors.
605 * removing duplicate words: Text Functions.
606 * removing targets on failure: Special Targets.
607 * removing, to clean up: Cleanup.
608 * reporting bugs: Bugs.
609 * rm: Implicit Variables.
610 * rm (shell command) <1>: Errors.
611 * rm (shell command) <2>: Phony Targets.
612 * rm (shell command) <3>: Wildcard Examples.
613 * rm (shell command): Simple Makefile.
614 * rule commands: Commands.
615 * rule prerequisites: Rule Syntax.
616 * rule syntax: Rule Syntax.
617 * rule targets: Rule Syntax.
618 * rule, and $: Rule Syntax.
619 * rule, double-colon (::): Double-Colon.
620 * rule, explicit, definition of: Makefile Contents.
621 * rule, how to write: Rules.
622 * rule, implicit: Implicit Rules.
623 * rule, implicit, and directory search: Implicit/Search.
624 * rule, implicit, and VPATH: Implicit/Search.
625 * rule, implicit, chains of: Chained Rules.
626 * rule, implicit, definition of: Makefile Contents.
627 * rule, implicit, how to use: Using Implicit.
628 * rule, implicit, introduction to: make Deduces.
629 * rule, implicit, predefined: Catalogue of Rules.
630 * rule, introduction to: Rule Introduction.
631 * rule, multiple for one target: Multiple Rules.
632 * rule, no commands or prerequisites: Force Targets.
633 * rule, pattern: Pattern Intro.
634 * rule, static pattern: Static Pattern.
635 * rule, static pattern versus implicit: Static versus Implicit.
636 * rule, with multiple targets: Multiple Targets.
637 * s. (SCCS file prefix): Catalogue of Rules.
638 * SCCS, rule to extract from: Catalogue of Rules.
639 * search algorithm, implicit rule: Implicit Rule Search.
640 * search path for prerequisites (VPATH): Directory Search.
641 * search path for prerequisites (VPATH), and implicit rules: Implicit/Search.
642 * search path for prerequisites (VPATH), and link libraries: Libraries/Search.
643 * searching for strings: Text Functions.
644 * secondary files: Chained Rules.
645 * secondary targets: Special Targets.
646 * sed (shell command): Automatic Prerequisites.
647 * selecting a word: Text Functions.
648 * selecting word lists: Text Functions.
649 * sequences of commands: Sequences.
650 * setting options from environment: Options/Recursion.
651 * setting options in makefiles: Options/Recursion.
652 * setting variables: Setting.
653 * several rules for one target: Multiple Rules.
654 * several targets in a rule: Multiple Targets.
655 * shar (standard target): Goals.
656 * shell command: Simple Makefile.
657 * shell command, and directory search: Commands/Search.
658 * shell command, execution: Execution.
659 * shell command, function for: Shell Function.
660 * shell file name pattern (in include): Include.
661 * shell wildcards (in include): Include.
662 * SHELL, MS-DOS specifics: Execution.
663 * signal: Interrupts.
664 * silent operation: Echoing.
665 * simple makefile: Simple Makefile.
666 * simple variable expansion: Using Variables.
667 * simplifying with variables: Variables Simplify.
668 * simply expanded variables: Flavors.
669 * sorting words: Text Functions.
670 * spaces, in variable values: Flavors.
671 * spaces, stripping: Text Functions.
672 * special targets: Special Targets.
673 * special variables: Special Variables.
674 * specifying makefile name: Makefile Names.
675 * standard input: Parallel.
676 * standards conformance: Overview.
677 * standards for makefiles: Makefile Conventions.
678 * static pattern rule: Static Pattern.
679 * static pattern rule, syntax of: Static Usage.
680 * static pattern rule, versus implicit: Static versus Implicit.
681 * stem <1>: Pattern Match.
682 * stem: Static Usage.
683 * stem, variable for: Automatic.
684 * stopping make: Make Control Functions.
685 * strings, searching for: Text Functions.
686 * stripping whitespace: Text Functions.
687 * sub-make: Variables/Recursion.
688 * subdirectories, recursion for: Recursion.
689 * substitution variable reference: Substitution Refs.
690 * suffix rule: Suffix Rules.
691 * suffix rule, for archive: Archive Suffix Rules.
692 * suffix, adding: File Name Functions.
693 * suffix, function to find: File Name Functions.
694 * suffix, substituting in variables: Substitution Refs.
695 * switches: Options Summary.
696 * symbol directories, updating archive: Archive Symbols.
697 * syntax of rules: Rule Syntax.
698 * tab character (in commands): Rule Syntax.
699 * tabs in rules: Rule Introduction.
700 * TAGS (standard target): Goals.
701 * tangle <1>: Implicit Variables.
702 * tangle: Catalogue of Rules.
703 * tar (standard target): Goals.
705 * target pattern, implicit: Pattern Intro.
706 * target pattern, static (not implicit): Static Usage.
707 * target, deleting on error: Errors.
708 * target, deleting on interrupt: Interrupts.
709 * target, expansion: Reading Makefiles.
710 * target, multiple in pattern rule: Pattern Intro.
711 * target, multiple rules for one: Multiple Rules.
712 * target, touching: Instead of Execution.
713 * target-specific variables: Target-specific.
714 * targets: Rule Syntax.
715 * targets without a file: Phony Targets.
716 * targets, built-in special: Special Targets.
717 * targets, empty: Empty Targets.
718 * targets, force: Force Targets.
719 * targets, introduction to: Rule Introduction.
720 * targets, multiple: Multiple Targets.
721 * targets, phony: Phony Targets.
722 * terminal rule: Match-Anything Rules.
723 * test (standard target): Goals.
724 * testing compilation: Testing.
725 * tex <1>: Implicit Variables.
726 * tex: Catalogue of Rules.
727 * TeX, rule to run: Catalogue of Rules.
728 * texi2dvi <1>: Implicit Variables.
729 * texi2dvi: Catalogue of Rules.
730 * Texinfo, rule to format: Catalogue of Rules.
731 * tilde (~): Wildcards.
732 * touch (shell command) <1>: Empty Targets.
733 * touch (shell command): Wildcard Examples.
734 * touching files: Instead of Execution.
735 * traditional directory search (GPATH): Search Algorithm.
736 * types of prerequisites: Prerequisite Types.
737 * undefined variables, warning message: Options Summary.
738 * updating archive symbol directories: Archive Symbols.
739 * updating makefiles: Remaking Makefiles.
740 * user defined functions: Call Function.
741 * value: Using Variables.
742 * value, how a variable gets it: Values.
743 * variable: Using Variables.
744 * variable definition: Makefile Contents.
745 * variables: Variables Simplify.
746 * variables, $ in name: Computed Names.
747 * variables, and implicit rule: Automatic.
748 * variables, appending to: Appending.
749 * variables, automatic: Automatic.
750 * variables, command line: Overriding.
751 * variables, command line, and recursion: Options/Recursion.
752 * variables, computed names: Computed Names.
753 * variables, conditional assignment: Flavors.
754 * variables, defining verbatim: Defining.
755 * variables, environment <1>: Environment.
756 * variables, environment: Variables/Recursion.
757 * variables, exporting: Variables/Recursion.
758 * variables, flavors: Flavors.
759 * variables, how they get their values: Values.
760 * variables, how to reference: Reference.
761 * variables, loops in expansion: Flavors.
762 * variables, modified reference: Substitution Refs.
763 * variables, nested references: Computed Names.
764 * variables, origin of: Origin Function.
765 * variables, overriding: Override Directive.
766 * variables, overriding with arguments: Overriding.
767 * variables, pattern-specific: Pattern-specific.
768 * variables, recursively expanded: Flavors.
769 * variables, setting: Setting.
770 * variables, simply expanded: Flavors.
771 * variables, spaces in values: Flavors.
772 * variables, substituting suffix in: Substitution Refs.
773 * variables, substitution reference: Substitution Refs.
774 * variables, target-specific: Target-specific.
775 * variables, unexpanded value: Value Function.
776 * variables, warning for undefined: Options Summary.
777 * varying prerequisites: Static Pattern.
778 * verbatim variable definition: Defining.
779 * vpath: Directory Search.
780 * VPATH, and implicit rules: Implicit/Search.
781 * VPATH, and link libraries: Libraries/Search.
782 * warnings, printing: Make Control Functions.
783 * weave <1>: Implicit Variables.
784 * weave: Catalogue of Rules.
785 * Web, rule to run: Catalogue of Rules.
786 * what if: Instead of Execution.
787 * whitespace, in variable values: Flavors.
788 * whitespace, stripping: Text Functions.
789 * wildcard: Wildcards.
790 * wildcard pitfalls: Wildcard Pitfall.
791 * wildcard, function: File Name Functions.
792 * wildcard, in archive member: Archive Members.
793 * wildcard, in include: Include.
794 * wildcards and MS-DOS/MS-Windows backslashes: Wildcard Pitfall.
795 * word, selecting a: Text Functions.
796 * words, extracting first: Text Functions.
797 * words, filtering: Text Functions.
798 * words, filtering out: Text Functions.
799 * words, finding number: Text Functions.
800 * words, iterating over: Foreach Function.
801 * words, joining lists: File Name Functions.
802 * words, removing duplicates: Text Functions.
803 * words, selecting lists of: Text Functions.
804 * writing rule commands: Commands.
805 * writing rules: Rules.
806 * yacc <1>: Implicit Variables.
807 * yacc <2>: Catalogue of Rules.
809 * Yacc, rule to run: Catalogue of Rules.
810 * ~ (tilde): Wildcards.