Imported Upstream version 4.4
[platform/upstream/make.git] / doc / make.info-3
1 This is make.info, produced by makeinfo version 6.7 from make.texi.
2
3 This file documents the GNU 'make' utility, which determines
4 automatically which pieces of a large program need to be recompiled, and
5 issues the commands to recompile them.
6
7    This is Edition 0.76, last updated 31 October 2022, of 'The GNU Make
8 Manual', for GNU 'make' version 4.4.
9
10    Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
11 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
12 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021,
13 2022 Free Software Foundation, Inc.
14
15      Permission is granted to copy, distribute and/or modify this
16      document under the terms of the GNU Free Documentation License,
17      Version 1.3 or any later version published by the Free Software
18      Foundation; with no Invariant Sections, with the Front-Cover Texts
19      being "A GNU Manual," and with the Back-Cover Texts as in (a)
20      below.  A copy of the license is included in the section entitled
21      "GNU Free Documentation License."
22
23      (a) The FSF's Back-Cover Text is: "You have the freedom to copy and
24      modify this GNU manual.  Buying copies from the FSF supports it in
25      developing GNU and promoting software freedom."
26 INFO-DIR-SECTION Software development
27 START-INFO-DIR-ENTRY
28 * Make: (make).            Remake files automatically.
29 END-INFO-DIR-ENTRY
30
31 \1f
32 File: make.info,  Node: Name Index,  Prev: Concept Index,  Up: Top
33
34 Index of Functions, Variables, & Directives
35 *******************************************
36
37 \0\b[index\0\b]
38 * Menu:
39
40 * $%:                                    Automatic Variables. (line  37)
41 * $(%D):                                 Automatic Variables. (line 130)
42 * $(%F):                                 Automatic Variables. (line 131)
43 * $(*D):                                 Automatic Variables. (line 125)
44 * $(*F):                                 Automatic Variables. (line 126)
45 * $(+D):                                 Automatic Variables. (line 148)
46 * $(+F):                                 Automatic Variables. (line 149)
47 * $(<D):                                 Automatic Variables. (line 138)
48 * $(<F):                                 Automatic Variables. (line 139)
49 * $(?D):                                 Automatic Variables. (line 154)
50 * $(?F):                                 Automatic Variables. (line 155)
51 * $(@D):                                 Automatic Variables. (line 114)
52 * $(@F):                                 Automatic Variables. (line 120)
53 * $(^D):                                 Automatic Variables. (line 143)
54 * $(^F):                                 Automatic Variables. (line 144)
55 * $*:                                    Automatic Variables. (line  83)
56 * $*, and static pattern:                Static Usage.        (line  82)
57 * $+:                                    Automatic Variables. (line  73)
58 * $<:                                    Automatic Variables. (line  43)
59 * $?:                                    Automatic Variables. (line  48)
60 * $@:                                    Automatic Variables. (line  30)
61 * $^:                                    Automatic Variables. (line  63)
62 * $|:                                    Automatic Variables. (line  79)
63 * % (automatic variable):                Automatic Variables. (line  37)
64 * %D (automatic variable):               Automatic Variables. (line 130)
65 * %F (automatic variable):               Automatic Variables. (line 131)
66 * * (automatic variable):                Automatic Variables. (line  83)
67 * * (automatic variable), unsupported bizarre usage: Missing. (line  44)
68 * *D (automatic variable):               Automatic Variables. (line 125)
69 * *F (automatic variable):               Automatic Variables. (line 126)
70 * + (automatic variable):                Automatic Variables. (line  73)
71 * +D (automatic variable):               Automatic Variables. (line 148)
72 * +F (automatic variable):               Automatic Variables. (line 149)
73 * -load:                                 load Directive.      (line  65)
74 * .DEFAULT:                              Special Targets.     (line  22)
75 * .DEFAULT <1>:                          Last Resort.         (line  23)
76 * .DEFAULT, and empty recipes:           Empty Recipes.       (line  16)
77 * .DEFAULT_GOAL (define default goal):   Special Variables.   (line  34)
78 * .DELETE_ON_ERROR:                      Special Targets.     (line 100)
79 * .DELETE_ON_ERROR <1>:                  Errors.              (line  63)
80 * .EXPORT_ALL_VARIABLES:                 Special Targets.     (line 164)
81 * .EXPORT_ALL_VARIABLES <1>:             Variables/Recursion. (line  94)
82 * .EXTRA_PREREQS (prerequisites not added to automatic variables): Special Variables.
83                                                               (line 202)
84 * .FEATURES (list of supported features): Special Variables.  (line 121)
85 * .IGNORE:                               Special Targets.     (line 107)
86 * .IGNORE <1>:                           Errors.              (line  30)
87 * .INCLUDE_DIRS (list of include directories): Special Variables.
88                                                               (line 196)
89 * .INTERMEDIATE:                         Special Targets.     (line  47)
90 * .LIBPATTERNS:                          Libraries/Search.    (line   6)
91 * .LOADED:                               load Directive.      (line  62)
92 * .LOW_RESOLUTION_TIME:                  Special Targets.     (line 120)
93 * .NOTINTERMEDIATE:                      Special Targets.     (line  53)
94 * .NOTPARALLEL:                          Special Targets.     (line 171)
95 * .NOTPARALLEL <1>:                      Parallel Disable.    (line  16)
96 * .ONESHELL:                             Special Targets.     (line 184)
97 * .ONESHELL <1>:                         One Shell.           (line   6)
98 * .PHONY:                                Phony Targets.       (line  22)
99 * .PHONY <1>:                            Special Targets.     (line   8)
100 * .POSIX:                                Special Targets.     (line 191)
101 * .POSIX <1>:                            Options/Recursion.   (line  69)
102 * .PRECIOUS:                             Special Targets.     (line  31)
103 * .PRECIOUS <1>:                         Interrupts.          (line  22)
104 * .RECIPEPREFIX (change the recipe prefix character): Special Variables.
105                                                               (line  99)
106 * .SECONDARY:                            Special Targets.     (line  63)
107 * .SECONDEXPANSION:                      Secondary Expansion. (line   6)
108 * .SECONDEXPANSION <1>:                  Special Targets.     (line  93)
109 * .SHELLFLAGS:                           Choosing the Shell.  (line   6)
110 * .SHELLFLAGS <1>:                       Choosing the Shell.  (line  87)
111 * .SHELLSTATUS:                          Shell Function.      (line  30)
112 * .SILENT:                               Special Targets.     (line 151)
113 * .SILENT <1>:                           Echoing.             (line  24)
114 * .SUFFIXES:                             Special Targets.     (line  16)
115 * .SUFFIXES <1>:                         Suffix Rules.        (line  61)
116 * .VARIABLES (list of variables):        Special Variables.   (line 112)
117 * .WAIT:                                 Parallel Disable.    (line  51)
118 * /usr/gnu/include:                      Include.             (line  53)
119 * /usr/include:                          Include.             (line  53)
120 * /usr/local/include:                    Include.             (line  53)
121 * < (automatic variable):                Automatic Variables. (line  43)
122 * <D (automatic variable):               Automatic Variables. (line 138)
123 * <F (automatic variable):               Automatic Variables. (line 139)
124 * ? (automatic variable):                Automatic Variables. (line  48)
125 * ?D (automatic variable):               Automatic Variables. (line 154)
126 * ?F (automatic variable):               Automatic Variables. (line 155)
127 * @ (automatic variable):                Automatic Variables. (line  30)
128 * @D (automatic variable):               Automatic Variables. (line 114)
129 * @F (automatic variable):               Automatic Variables. (line 120)
130 * ^ (automatic variable):                Automatic Variables. (line  63)
131 * ^D (automatic variable):               Automatic Variables. (line 143)
132 * ^F (automatic variable):               Automatic Variables. (line 144)
133 * | (automatic variable):                Automatic Variables. (line  79)
134 * abspath:                               File Name Functions. (line 120)
135 * addprefix:                             File Name Functions. (line  78)
136 * addsuffix:                             File Name Functions. (line  67)
137 * and:                                   Conditional Functions.
138                                                               (line  45)
139 * AR:                                    Implicit Variables.  (line  40)
140 * ARFLAGS:                               Implicit Variables.  (line 113)
141 * AS:                                    Implicit Variables.  (line  43)
142 * ASFLAGS:                               Implicit Variables.  (line 116)
143 * basename:                              File Name Functions. (line  56)
144 * bindir:                                Directory Variables. (line  57)
145 * call:                                  Call Function.       (line   6)
146 * CC:                                    Implicit Variables.  (line  46)
147 * CFLAGS:                                Implicit Variables.  (line 120)
148 * CO:                                    Implicit Variables.  (line  66)
149 * COFLAGS:                               Implicit Variables.  (line 126)
150 * COMSPEC:                               Choosing the Shell.  (line  41)
151 * CPP:                                   Implicit Variables.  (line  52)
152 * CPPFLAGS:                              Implicit Variables.  (line 129)
153 * CTANGLE:                               Implicit Variables.  (line 103)
154 * CURDIR:                                Recursion.           (line  28)
155 * CWEAVE:                                Implicit Variables.  (line  97)
156 * CXX:                                   Implicit Variables.  (line  49)
157 * CXXFLAGS:                              Implicit Variables.  (line 123)
158 * define:                                Multi-Line.          (line   6)
159 * DESTDIR:                               DESTDIR.             (line   6)
160 * dir:                                   File Name Functions. (line  16)
161 * else:                                  Conditional Syntax.  (line   6)
162 * endef:                                 Multi-Line.          (line   6)
163 * endif:                                 Conditional Syntax.  (line   6)
164 * error:                                 Make Control Functions.
165                                                               (line  11)
166 * eval:                                  Eval Function.       (line   6)
167 * exec_prefix:                           Directory Variables. (line  39)
168 * export:                                Variables/Recursion. (line  38)
169 * FC:                                    Implicit Variables.  (line  56)
170 * FFLAGS:                                Implicit Variables.  (line 133)
171 * file:                                  File Function.       (line   6)
172 * filter:                                Text Functions.      (line 116)
173 * filter-out:                            Text Functions.      (line 134)
174 * findstring:                            Text Functions.      (line 105)
175 * firstword:                             Text Functions.      (line 186)
176 * flavor:                                Flavor Function.     (line   6)
177 * foreach:                               Foreach Function.    (line   6)
178 * GET:                                   Implicit Variables.  (line  69)
179 * GFLAGS:                                Implicit Variables.  (line 136)
180 * gmk-eval:                              Guile Interface.     (line  18)
181 * gmk-expand:                            Guile Interface.     (line  12)
182 * gmk_add_function:                      Loaded Object API.   (line  53)
183 * gmk_alloc:                             Loaded Object API.   (line 149)
184 * gmk_eval:                              Loaded Object API.   (line 123)
185 * gmk_expand:                            Loaded Object API.   (line 117)
186 * gmk_free:                              Loaded Object API.   (line 155)
187 * gmk_func_ptr:                          Loaded Object API.   (line  95)
188 * GNUmakefile:                           Makefile Names.      (line   7)
189 * GPATH:                                 Search Algorithm.    (line  48)
190 * guile:                                 Guile Function.      (line   6)
191 * if:                                    Conditional Functions.
192                                                               (line   6)
193 * if <1>:                                Conditional Functions.
194                                                               (line  12)
195 * ifdef:                                 Conditional Syntax.  (line   6)
196 * ifeq:                                  Conditional Syntax.  (line   6)
197 * ifndef:                                Conditional Syntax.  (line   6)
198 * ifneq:                                 Conditional Syntax.  (line   6)
199 * include:                               Include.             (line   6)
200 * info:                                  Make Control Functions.
201                                                               (line  43)
202 * intcmp:                                Conditional Functions.
203                                                               (line  53)
204 * join:                                  File Name Functions. (line  89)
205 * lastword:                              Text Functions.      (line 199)
206 * LDFLAGS:                               Implicit Variables.  (line 139)
207 * LDLIBS:                                Implicit Variables.  (line 144)
208 * let:                                   Let Function.        (line   6)
209 * LEX:                                   Implicit Variables.  (line  72)
210 * LFLAGS:                                Implicit Variables.  (line 150)
211 * libexecdir:                            Directory Variables. (line  70)
212 * LINT:                                  Implicit Variables.  (line  80)
213 * LINTFLAGS:                             Implicit Variables.  (line 162)
214 * load:                                  load Directive.      (line   9)
215 * LOADLIBES:                             Implicit Variables.  (line 144)
216 * M2C:                                   Implicit Variables.  (line  60)
217 * MAKE:                                  MAKE Variable.       (line   6)
218 * MAKE <1>:                              Simple Assignment.   (line  38)
219 * MAKECMDGOALS:                          Goals.               (line  30)
220 * Makefile:                              Makefile Names.      (line   7)
221 * makefile:                              Makefile Names.      (line   7)
222 * MAKEFILES:                             MAKEFILES Variable.  (line   6)
223 * MAKEFILES <1>:                         Variables/Recursion. (line 134)
224 * MAKEFILE_LIST (list of parsed makefiles): Special Variables.
225                                                               (line   8)
226 * MAKEFLAGS:                             Options/Recursion.   (line   6)
227 * MAKEINFO:                              Implicit Variables.  (line  83)
228 * MAKELEVEL:                             Variables/Recursion. (line 122)
229 * MAKELEVEL <1>:                         Simple Assignment.   (line  38)
230 * MAKEOVERRIDES:                         Options/Recursion.   (line  58)
231 * MAKESHELL (MS-DOS alternative to SHELL): Choosing the Shell.
232                                                               (line  27)
233 * MAKE_HOST:                             Quick Reference.     (line 360)
234 * MAKE_RESTARTS (number of times make has restarted): Special Variables.
235                                                               (line  73)
236 * MAKE_TERMERR (whether stderr is a terminal): Special Variables.
237                                                               (line  80)
238 * MAKE_TERMOUT (whether stdout is a terminal): Special Variables.
239                                                               (line  80)
240 * MAKE_VERSION:                          Quick Reference.     (line 355)
241 * MFLAGS:                                Options/Recursion.   (line  74)
242 * notdir:                                File Name Functions. (line  26)
243 * or:                                    Conditional Functions.
244                                                               (line  37)
245 * origin:                                Origin Function.     (line   6)
246 * OUTPUT_OPTION:                         Catalogue of Rules.  (line 204)
247 * override:                              Override Directive.  (line   6)
248 * patsubst:                              Substitution Refs.   (line  28)
249 * patsubst <1>:                          Text Functions.      (line  18)
250 * PC:                                    Implicit Variables.  (line  63)
251 * PFLAGS:                                Implicit Variables.  (line 156)
252 * prefix:                                Directory Variables. (line  29)
253 * private:                               Suppressing Inheritance.
254                                                               (line   6)
255 * realpath:                              File Name Functions. (line 113)
256 * RFLAGS:                                Implicit Variables.  (line 159)
257 * RM:                                    Implicit Variables.  (line 106)
258 * sbindir:                               Directory Variables. (line  63)
259 * SHELL:                                 Choosing the Shell.  (line   6)
260 * SHELL <1>:                             Choosing the Shell.  (line  88)
261 * shell:                                 Shell Function.      (line   6)
262 * SHELL (recipe execution):              Execution.           (line   6)
263 * sort:                                  Text Functions.      (line 148)
264 * strip:                                 Text Functions.      (line  81)
265 * subst:                                 Multiple Targets.    (line  39)
266 * subst <1>:                             Text Functions.      (line   9)
267 * suffix:                                File Name Functions. (line  42)
268 * SUFFIXES:                              Suffix Rules.        (line  81)
269 * TANGLE:                                Implicit Variables.  (line 100)
270 * TEX:                                   Implicit Variables.  (line  87)
271 * TEXI2DVI:                              Implicit Variables.  (line  90)
272 * undefine:                              Undefine Directive.  (line   6)
273 * unexport:                              Variables/Recursion. (line  43)
274 * value:                                 Value Function.      (line   6)
275 * VPATH:                                 Directory Search.    (line   6)
276 * VPATH <1>:                             General Search.      (line   6)
277 * vpath:                                 Directory Search.    (line   6)
278 * vpath <1>:                             Selective Search.    (line   6)
279 * warning:                               Make Control Functions.
280                                                               (line  35)
281 * WEAVE:                                 Implicit Variables.  (line  94)
282 * wildcard:                              Wildcard Function.   (line   6)
283 * wildcard <1>:                          File Name Functions. (line 106)
284 * word:                                  Text Functions.      (line 160)
285 * wordlist:                              Text Functions.      (line 169)
286 * words:                                 Text Functions.      (line 181)
287 * YACC:                                  Implicit Variables.  (line  76)
288 * YFLAGS:                                Implicit Variables.  (line 153)
289