summaryrefslogtreecommitdiffstats
path: root/bitbake/doc/user-manual
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/doc/user-manual')
-rw-r--r--bitbake/doc/user-manual/user-manual-metadata.xml320
1 files changed, 142 insertions, 178 deletions
diff --git a/bitbake/doc/user-manual/user-manual-metadata.xml b/bitbake/doc/user-manual/user-manual-metadata.xml
index c693e1e6ec..6ee8971562 100644
--- a/bitbake/doc/user-manual/user-manual-metadata.xml
+++ b/bitbake/doc/user-manual/user-manual-metadata.xml
@@ -31,9 +31,9 @@
31 <title>Basic variable setting</title> 31 <title>Basic variable setting</title>
32 32
33 <para> 33 <para>
34 <screen><varname>VARIABLE</varname> = "value"</screen> 34 <literallayout class='monospaced'>
35 </para> 35 VARIABLE = "value"
36 <para> 36 </literallayout>
37 In this example, <varname>VARIABLE</varname> is <literal>value</literal>. 37 In this example, <varname>VARIABLE</varname> is <literal>value</literal>.
38 </para> 38 </para>
39 </section> 39 </section>
@@ -48,10 +48,10 @@
48 </para> 48 </para>
49 49
50 <para> 50 <para>
51 <screen><varname>A</varname> = "aval" 51 <literallayout class='monospaced'>
52<varname>B</varname> = "pre${A}post"</screen> 52 A = "aval"
53 </para> 53 B = "pre${A}post"
54 <para> 54 </literallayout>
55 This results in <varname>A</varname> containing 55 This results in <varname>A</varname> containing
56 <literal>aval</literal> and <varname>B</varname> containing 56 <literal>aval</literal> and <varname>B</varname> containing
57 <literal>preavalpost</literal>. 57 <literal>preavalpost</literal>.
@@ -62,9 +62,9 @@
62 <title>Setting a default value (?=)</title> 62 <title>Setting a default value (?=)</title>
63 63
64 <para> 64 <para>
65 <screen><varname>A</varname> ?= "aval"</screen> 65 <literallayout class='monospaced'>
66 </para> 66 A ?= "aval"
67 <para> 67 </literallayout>
68 If <varname>A</varname> is set before the above is called, 68 If <varname>A</varname> is set before the above is called,
69 it will retain its previous value. 69 it will retain its previous value.
70 If <varname>A</varname> is unset prior to the above call, 70 If <varname>A</varname> is unset prior to the above call,
@@ -78,10 +78,10 @@
78 <title>Setting a weak default value (??=)</title> 78 <title>Setting a weak default value (??=)</title>
79 79
80 <para> 80 <para>
81 <screen><varname>A</varname> ??= "somevalue" 81 <literallayout class='monospaced'>
82<varname>A</varname> ??= "someothervalue"</screen> 82 A ??= "somevalue"
83 </para> 83 A ??= "someothervalue"
84 <para> 84 </literallayout>
85 If <varname>A</varname> is set before the above, 85 If <varname>A</varname> is set before the above,
86 it will retain that value. 86 it will retain that value.
87 If <varname>A</varname> is unset prior to the above, 87 If <varname>A</varname> is unset prior to the above,
@@ -99,17 +99,14 @@
99 99
100 <para> 100 <para>
101 := results in a variable's contents being expanded immediately, rather than when the variable is actually used. 101 := results in a variable's contents being expanded immediately, rather than when the variable is actually used.
102 </para> 102 <literallayout class='monospaced'>
103 <para> 103 T = "123"
104 <screen><varname>T</varname> = "123" 104 A := "${B} ${A} test ${T}"
105<varname>A</varname> := "${B} ${A} test ${T}" 105 T = "456"
106<varname>T</varname> = "456" 106 B = "${T} bval"
107<varname>B</varname> = "${T} bval" 107 C = "cval"
108 108 C := "${C}append"
109<varname>C</varname> = "cval" 109 </literallayout>
110<varname>C</varname> := "${C}append"</screen>
111 </para>
112 <para>
113 In that example, <varname>A</varname> would contain <literal> test 123</literal>, <varname>B</varname> would contain <literal>456 bval</literal>, and <varname>C</varname> would be <literal>cvalappend</literal>. 110 In that example, <varname>A</varname> would contain <literal> test 123</literal>, <varname>B</varname> would contain <literal>456 bval</literal>, and <varname>C</varname> would be <literal>cvalappend</literal>.
114 </para> 111 </para>
115 </section> 112 </section>
@@ -118,12 +115,12 @@
118 <title>Appending (+=) and prepending (=+)</title> 115 <title>Appending (+=) and prepending (=+)</title>
119 116
120 <para> 117 <para>
121 <screen><varname>B</varname> = "bval" 118 <literallayout class='monospaced'>
122<varname>B</varname> += "additionaldata" 119 B = "bval"
123<varname>C</varname> = "cval" 120 B += "additionaldata"
124<varname>C</varname> =+ "test"</screen> 121 C = "cval"
125 </para> 122 C =+ "test"
126 <para> 123 </literallayout>
127 In this example, <varname>B</varname> is now <literal>bval additionaldata</literal> and <varname>C</varname> is <literal>test cval</literal>. 124 In this example, <varname>B</varname> is now <literal>bval additionaldata</literal> and <varname>C</varname> is <literal>test cval</literal>.
128 </para> 125 </para>
129 </section> 126 </section>
@@ -132,12 +129,12 @@
132 <title>Appending (.=) and prepending (=.) without spaces</title> 129 <title>Appending (.=) and prepending (=.) without spaces</title>
133 130
134 <para> 131 <para>
135 <screen><varname>B</varname> = "bval" 132 <literallayout class='monospaced'>
136<varname>B</varname> .= "additionaldata" 133 B = "bval"
137<varname>C</varname> = "cval" 134 B .= "additionaldata"
138<varname>C</varname> =. "test"</screen> 135 C = "cval"
139 </para> 136 C =. "test"
140 <para> 137 </literallayout>
141 In this example, <varname>B</varname> is now 138 In this example, <varname>B</varname> is now
142 <literal>bvaladditionaldata</literal> and 139 <literal>bvaladditionaldata</literal> and
143 <varname>C</varname> is <literal>testcval</literal>. 140 <varname>C</varname> is <literal>testcval</literal>.
@@ -150,12 +147,12 @@
150 <title>Appending and Prepending (override style syntax)</title> 147 <title>Appending and Prepending (override style syntax)</title>
151 148
152 <para> 149 <para>
153 <screen><varname>B</varname> = "bval" 150 <literallayout class='monospaced'>
154<varname>B_append</varname> = " additional data" 151 B = "bval"
155<varname>C</varname> = "cval" 152 B_append = " additional data"
156<varname>C_prepend</varname> = "additional data "</screen> 153 C = "cval"
157 </para> 154 C_prepend = "additional data "
158 <para> 155 </literallayout>
159 This example results in <varname>B</varname> 156 This example results in <varname>B</varname>
160 becoming <literal>bval additional data</literal> 157 becoming <literal>bval additional data</literal>
161 and <varname>C</varname> becoming 158 and <varname>C</varname> becoming
@@ -170,11 +167,11 @@ yourself.
170 <section id='removing-override-style-syntax'> 167 <section id='removing-override-style-syntax'>
171 <title>Removing (override style syntax)</title> 168 <title>Removing (override style syntax)</title>
172 <para> 169 <para>
173 <screen><varname>FOO</varname> = "123 456 789 123456 123 456 123 456" 170 <literallayout class='monospaced'>
174<varname>FOO_remove</varname> = "123" 171 FOO = "123 456 789 123456 123 456 123 456"
175<varname>FOO_remove</varname> = "456"</screen> 172 FOO_remove = "123"
176 </para> 173 FOO_remove = "456"
177 <para> 174 </literallayout>
178 In this example, <varname>FOO</varname> is now <literal>789 123456</literal>. 175 In this example, <varname>FOO</varname> is now <literal>789 123456</literal>.
179 </para> 176 </para>
180 </section> 177 </section>
@@ -186,11 +183,9 @@ yourself.
186 Variables can have associated flags which provide a way of tagging extra information onto a variable. 183 Variables can have associated flags which provide a way of tagging extra information onto a variable.
187 Several flags are used internally by BitBake but they can be used externally too if needed. 184 Several flags are used internally by BitBake but they can be used externally too if needed.
188 The standard operations mentioned above also work on flags. 185 The standard operations mentioned above also work on flags.
189 </para> 186 <literallayout class='monospaced'>
190 <para> 187 VARIABLE[SOMEFLAG] = "value"
191 <screen><varname>VARIABLE</varname>[<varname>SOMEFLAG</varname>] = "value"</screen> 188 </literallayout>
192 </para>
193 <para>
194 In this example, <varname>VARIABLE</varname> has a flag, 189 In this example, <varname>VARIABLE</varname> has a flag,
195 <varname>SOMEFLAG</varname> which is set to <literal>value</literal>. 190 <varname>SOMEFLAG</varname> which is set to <literal>value</literal>.
196 </para> 191 </para>
@@ -200,9 +195,9 @@ yourself.
200 <title>Python variable expansion</title> 195 <title>Python variable expansion</title>
201 196
202 <para> 197 <para>
203 <screen><varname>DATE</varname> = "${@time.strftime('%Y%m%d',time.gmtime())}"</screen> 198 <literallayout class='monospaced'>
204 </para> 199 DATE = "${@time.strftime('%Y%m%d',time.gmtime())}"
205 <para> 200 </literallayout>
206 This would result in the <varname>DATE</varname> 201 This would result in the <varname>DATE</varname>
207 variable containing today's date. 202 variable containing today's date.
208 </para> 203 </para>
@@ -219,14 +214,12 @@ yourself.
219 version of the variable is used rather than the non-conditional 214 version of the variable is used rather than the non-conditional
220 version. 215 version.
221 Example: 216 Example:
222 </para> 217 <literallayout class='monospaced'>
223 <para> 218 OVERRIDES = "architecture:os:machine"
224 <screen><varname>OVERRIDES</varname> = "architecture:os:machine" 219 TEST = "defaultvalue"
225<varname>TEST</varname> = "defaultvalue" 220 TEST_os = "osspecificvalue"
226<varname>TEST_os</varname> = "osspecificvalue" 221 TEST_condnotinoverrides = "othercondvalue"
227<varname>TEST_condnotinoverrides</varname> = "othercondvalue"</screen> 222 </literallayout>
228 </para>
229 <para>
230 In this example, <varname>TEST</varname> would be 223 In this example, <varname>TEST</varname> would be
231 <literal>osspecificvalue</literal>, due to the condition 224 <literal>osspecificvalue</literal>, due to the condition
232 <quote>os</quote> being in <varname>OVERRIDES</varname>. 225 <quote>os</quote> being in <varname>OVERRIDES</varname>.
@@ -239,13 +232,11 @@ yourself.
239 <para> 232 <para>
240 BitBake also supports appending and prepending to variables based 233 BitBake also supports appending and prepending to variables based
241 on whether something is in OVERRIDES. Example: 234 on whether something is in OVERRIDES. Example:
242 </para> 235 <literallayout class='monospaced'>
243 <para> 236 DEPENDS = "glibc ncurses"
244 <screen><varname>DEPENDS</varname> = "glibc ncurses" 237 OVERRIDES = "machine:local"
245<varname>OVERRIDES</varname> = "machine:local" 238 DEPENDS_append_machine = "libmad"
246<varname>DEPENDS_append_machine</varname> = " libmad"</screen> 239 </literallayout>
247 </para>
248 <para>
249 In this example, <varname>DEPENDS</varname> is set to 240 In this example, <varname>DEPENDS</varname> is set to
250 <literal>glibc ncurses libmad</literal>. 241 <literal>glibc ncurses libmad</literal>.
251 </para> 242 </para>
@@ -268,43 +259,38 @@ yourself.
268 </para> 259 </para>
269 260
270 <para> 261 <para>
271 <screen><varname>OVERRIDES</varname> = "foo" 262 <literallayout class='monospaced'>
272<varname>A_foo_append</varname> = "X"</screen> 263 OVERRIDES = "foo"
273 </para> 264 A_foo_append = "X"
274 <para> 265 </literallayout>
275 In this case, X is unconditionally appended 266 In this case, X is unconditionally appended
276 to the variable <varname>A_foo</varname>. 267 to the variable <varname>A_foo</varname>.
277 Since foo is an override, A_foo would then replace 268 Since foo is an override, A_foo would then replace
278 <varname>A</varname>. 269 <varname>A</varname>.
279 </para> 270 <literallayout class='monospaced'>
280 <para> 271 OVERRIDES = "foo"
281 <screen><varname>OVERRIDES</varname> = "foo" 272 A = "X"
282<varname>A</varname> = "X" 273 A_append_foo = "Y"
283<varname>A_append_foo</varname> = "Y"</screen></para> 274 </literallayout>
284 <para>
285 In this case, only when foo is in 275 In this case, only when foo is in
286 OVERRIDES, Y 276 OVERRIDES, Y
287 is appended to the variable <varname>A</varname> 277 is appended to the variable <varname>A</varname>
288 so the value of <varname>A</varname> would 278 so the value of <varname>A</varname> would
289 become XY (NB: no spaces are appended). 279 become XY (NB: no spaces are appended).
290 </para> 280 <literallayout class='monospaced'>
291 <para> 281 OVERRIDES = "foo"
292 <screen><varname>OVERRIDES</varname> = "foo" 282 A_foo_append = "X"
293<varname>A_foo_append</varname> = "X" 283 A_foo_append += "Y"
294<varname>A_foo_append</varname> += "Y"</screen> 284 </literallayout>
295 </para>
296 <para>
297 This behaves as per the first case above, but the value of 285 This behaves as per the first case above, but the value of
298 <varname>A</varname> would be "X Y" instead of just "X". 286 <varname>A</varname> would be "X Y" instead of just "X".
299 </para> 287 <literallayout class='monospaced'>
300 <para> 288 A = "1"
301 <screen><varname>A</varname> = "1" 289 A_append = "2"
302<varname>A_append</varname> = "2" 290 A_append = "3"
303<varname>A_append</varname> = "3" 291 A += "4"
304<varname>A</varname> += "4" 292 A .= "5"
305<varname>A</varname> .= "5"</screen> 293 </literallayout>
306 </para>
307 <para>
308 Would ultimately result in <varname>A</varname> taking the value 294 Would ultimately result in <varname>A</varname> taking the value
309 "1 4523" since the _append operator executes at the 295 "1 4523" since the _append operator executes at the
310 same time as the expansion of other overrides. 296 same time as the expansion of other overrides.
@@ -317,13 +303,11 @@ yourself.
317 <para> 303 <para>
318 Key expansion happens at the data store finalisation 304 Key expansion happens at the data store finalisation
319 time just before overrides are expanded. 305 time just before overrides are expanded.
320 </para> 306 <literallayout class='monospaced'>
321 <para> 307 A${B} = "X"
322 <screen><varname>A${B}</varname> = "X" 308 B = "2"
323<varname>B</varname> = "2" 309 A2 = "Y"
324<varname>A2</varname> = "Y"</screen> 310 </literallayout>
325 </para>
326 <para>
327 So in this case <varname>A2</varname> would take the value of "X". 311 So in this case <varname>A2</varname> would take the value of "X".
328 </para> 312 </para>
329 </section> 313 </section>
@@ -378,18 +362,15 @@ raise an
378 <title>Defining Python functions into the global Python namespace</title> 362 <title>Defining Python functions into the global Python namespace</title>
379 363
380 <para><emphasis>NOTE:</emphasis> This is only supported in .bb and .bbclass files 364 <para><emphasis>NOTE:</emphasis> This is only supported in .bb and .bbclass files
381 </para> 365 <literallayout class='monospaced'>
382 <para> 366 def get_depends(d):
383 <screen>def get_depends(bb, d): 367 if d.getVar('SOMECONDITION', True):
384 if d.getVar('SOMECONDITION', True): 368 return "dependencywithcond"
385 return "dependencywithcond" 369 else:
386 else: 370 return "dependency"
387 return "dependency" 371 SOMECONDITION = "1"
388 372 DEPENDS = "${@get_depends(d)}"
389<varname>SOMECONDITION</varname> = "1" 373 </literallayout>
390<varname>DEPENDS</varname> = "${@get_depends(bb, d)}"</screen>
391 </para>
392 <para>
393 This would result in <varname>DEPENDS</varname> containing <literal>dependencywithcond</literal>. 374 This would result in <varname>DEPENDS</varname> containing <literal>dependencywithcond</literal>.
394 </para> 375 </para>
395 </section> 376 </section>
@@ -397,22 +378,18 @@ raise an
397 <section> 378 <section>
398 <title>Defining executable metadata</title> 379 <title>Defining executable metadata</title>
399 <para><emphasis>NOTE:</emphasis> This is only supported in .bb and .bbclass files. 380 <para><emphasis>NOTE:</emphasis> This is only supported in .bb and .bbclass files.
400 </para> 381 <literallayout class='monospaced'>
401 <para> 382do_mytask () {
402 <screen>do_mytask () {
403 echo "Hello, world!" 383 echo "Hello, world!"
404}</screen> 384}
405 </para> 385 </literallayout>
406 <para>
407 This is essentially identical to setting a variable, except that this variable happens to be executable shell code. 386 This is essentially identical to setting a variable, except that this variable happens to be executable shell code.
408 </para> 387 <literallayout class='monospaced'>
409 <para> 388python do_printdate () {
410 <screen>python do_printdate () {
411 import time 389 import time
412 print time.strftime('%Y%m%d', time.gmtime()) 390 print time.strftime('%Y%m%d', time.gmtime())
413}</screen> 391}
414 </para> 392 </literallayout>
415 <para>
416 This is the similar to the previous, but flags it as Python so that BitBake knows it is Python code. 393 This is the similar to the previous, but flags it as Python so that BitBake knows it is Python code.
417 </para> 394 </para>
418 </section> 395 </section>
@@ -421,16 +398,13 @@ raise an
421 <title>Tasks</title> 398 <title>Tasks</title>
422 <para><emphasis>NOTE:</emphasis> This is only supported in .bb and .bbclass files.</para> 399 <para><emphasis>NOTE:</emphasis> This is only supported in .bb and .bbclass files.</para>
423 <para>In BitBake, each step that needs to be run for a given .bb is known as a task. There is a command <literal>addtask</literal> to add new tasks (must be a defined Python executable metadata and must start with <quote>do_</quote>) and describe intertask dependencies. 400 <para>In BitBake, each step that needs to be run for a given .bb is known as a task. There is a command <literal>addtask</literal> to add new tasks (must be a defined Python executable metadata and must start with <quote>do_</quote>) and describe intertask dependencies.
424 </para> 401 <literallayout class='monospaced'>
425 <para> 402 python do_printdate () {
426 <screen>python do_printdate () { 403 import time print
427 import time 404 time.strftime('%Y%m%d', time.gmtime())
428 print time.strftime('%Y%m%d', time.gmtime()) 405 }
429} 406 addtask printdate after do_fetch before do_build
430 407 </literallayout>
431addtask printdate before do_build</screen>
432 </para>
433 <para>
434 This defines the necessary Python function and adds it as a task which is now a dependency of do_build, the default task. If anyone executes the do_build task, that will result in do_printdate being run first. 408 This defines the necessary Python function and adds it as a task which is now a dependency of do_build, the default task. If anyone executes the do_build task, that will result in do_printdate being run first.
435 </para> 409 </para>
436 </section> 410 </section>
@@ -529,19 +503,15 @@ addtask printdate before do_build</screen>
529 task failure, task success, et cetera. 503 task failure, task success, et cetera.
530 The intent is to make it easy to do things like email 504 The intent is to make it easy to do things like email
531 notification on build failure. 505 notification on build failure.
532 </para> 506 <literallayout class='monospaced'>
533 <para> 507 addhandler myclass_eventhandler
534 <screen>addhandler myclass_eventhandler 508 python myclass_eventhandler() {
535python myclass_eventhandler() { 509 from bb.event import getName
536 from bb.event import getName 510 from bb import data
537 from bb import data 511 print("The name of the Event is %s" % getName(e))
538 512 print("The file we run for is %s" % data.getVar('FILE', e.data, True))
539 print("The name of the Event is %s" % getName(e)) 513 }
540 print("The file we run for is %s" % data.getVar('FILE', e.data, True)) 514 </literallayout>
541}
542</screen>
543 </para>
544 <para>
545 This event handler gets called every time an event is 515 This event handler gets called every time an event is
546 triggered. 516 triggered.
547 A global variable <varname>e</varname> is defined. 517 A global variable <varname>e</varname> is defined.
@@ -569,7 +539,10 @@ python myclass_eventhandler() {
569 The first is <varname>BBCLASSEXTEND</varname>. 539 The first is <varname>BBCLASSEXTEND</varname>.
570 This variable is a space separated list of classes used to "extend" the 540 This variable is a space separated list of classes used to "extend" the
571 recipe for each variant. 541 recipe for each variant.
572 As an example, setting <screen>BBCLASSEXTEND = "native"</screen> 542 As an example, setting
543 <literallayout class='monospaced'>
544 BBCLASSEXTEND = "native"
545 </literallayout>
573 results in a second incarnation of the current 546 results in a second incarnation of the current
574 recipe being available. 547 recipe being available.
575 This second incarnation will have the "native" class inherited. 548 This second incarnation will have the "native" class inherited.
@@ -580,17 +553,14 @@ python myclass_eventhandler() {
580 project from a single recipe file, and allows you to specify 553 project from a single recipe file, and allows you to specify
581 conditional metadata (using the <varname>OVERRIDES</varname> 554 conditional metadata (using the <varname>OVERRIDES</varname>
582 mechanism) for a single version, or an optionally named range of versions: 555 mechanism) for a single version, or an optionally named range of versions:
583 </para> 556 <literallayout class='monospaced'>
584 <para> 557 BBVERSIONS = "1.0 2.0 git"
585 <screen>BBVERSIONS = "1.0 2.0 git" 558 SRC_URI_git = "git://someurl/somepath.git"
586SRC_URI_git = "git://someurl/somepath.git"</screen> 559 </literallayout>
587 </para> 560 <literallayout class='monospaced'>
588 <para> 561 BBVERSIONS = "1.0.[0-6]:1.0.0+ \ 1.0.[7-9]:1.0.7+"
589 <screen>BBVERSIONS = "1.0.[0-6]:1.0.0+ \ 562 SRC_URI_append_1.0.7+ = "file://some_patch_which_the_new_versions_need.patch;patch=1"
590 1.0.[7-9]:1.0.7+" 563 </literallayout>
591SRC_URI_append_1.0.7+ = "file://some_patch_which_the_new_versions_need.patch;patch=1"</screen>
592 </para>
593 <para>
594 Note that the name of the range will default to the original version of the 564 Note that the name of the range will default to the original version of the
595 recipe, so given OE, a recipe file of foo_1.0.0+.bb 565 recipe, so given OE, a recipe file of foo_1.0.0+.bb
596 will default the name of its versions to 1.0.0+. 566 will default the name of its versions to 1.0.0+.
@@ -629,11 +599,9 @@ SRC_URI_append_1.0.7+ = "file://some_patch_which_the_new_versions_need.patch;pat
629 The 'deptask' flag for tasks is used to signify the task of each 599 The 'deptask' flag for tasks is used to signify the task of each
630 item listed in DEPENDS which must have 600 item listed in DEPENDS which must have
631 completed before that task can be executed. 601 completed before that task can be executed.
632 </para> 602 <literallayout class='monospaced'>
633 <para> 603 do_configure[deptask] = "do_populate_staging"
634 <screen>do_configure[deptask] = "do_populate_staging"</screen> 604 </literallayout>
635 </para>
636 <para>
637 means the do_populate_staging 605 means the do_populate_staging
638 task of each item in DEPENDS must have completed before 606 task of each item in DEPENDS must have completed before
639 do_configure can execute. 607 do_configure can execute.
@@ -650,11 +618,9 @@ SRC_URI_append_1.0.7+ = "file://some_patch_which_the_new_versions_need.patch;pat
650 The 'rdeptask' flag for tasks is used to signify the task of each 618 The 'rdeptask' flag for tasks is used to signify the task of each
651 item runtime dependency which must have completed before that 619 item runtime dependency which must have completed before that
652 task can be executed. 620 task can be executed.
653 </para> 621 <literallayout class='monospaced'>
654 <para> 622 do_package_write[rdeptask] = "do_package"
655 <screen>do_package_write[rdeptask] = "do_package"</screen> 623 </literallayout>
656 </para>
657 <para>
658 means the do_package 624 means the do_package
659 task of each item in RDEPENDS must have 625 task of each item in RDEPENDS must have
660 completed before do_package_write can execute. 626 completed before do_package_write can execute.
@@ -694,11 +660,9 @@ SRC_URI_append_1.0.7+ = "file://some_patch_which_the_new_versions_need.patch;pat
694 The 'depends' flag for tasks is a more generic form of which 660 The 'depends' flag for tasks is a more generic form of which
695 allows an interdependency on specific tasks rather than specifying 661 allows an interdependency on specific tasks rather than specifying
696 the data in DEPENDS. 662 the data in DEPENDS.
697 </para> 663 <literallayout class='monospaced'>
698 <para> 664 do_patch[depends] = "quilt-native:do_populate_staging"
699 <screen>do_patch[depends] = "quilt-native:do_populate_staging"</screen> 665 </literallayout>
700 </para>
701 <para>
702 means the do_populate_staging 666 means the do_populate_staging
703 task of the target quilt-native must have completed before the 667 task of the target quilt-native must have completed before the
704 do_patch can execute. 668 do_patch can execute.