summaryrefslogtreecommitdiffstats
path: root/documentation/ref-manual/technical-details.xml
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2013-03-26 11:53:44 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-04-04 14:12:52 +0100
commit8ddc1e3aac873729cc39c45f3bad13fc4430d501 (patch)
treef0c4f00bd14cae65230615bba42e72967926bb27 /documentation/ref-manual/technical-details.xml
parent881627ce68afca2c29136fbc1992c7d85976a074 (diff)
downloadpoky-8ddc1e3aac873729cc39c45f3bad13fc4430d501.tar.gz
ref-manual: Minor edits to "Checksums (Signatures) section.
(From yocto-docs rev: 3c92b8ba1eb14db87189f9e35b46ed19a44c74f5) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/ref-manual/technical-details.xml')
-rw-r--r--documentation/ref-manual/technical-details.xml17
1 files changed, 10 insertions, 7 deletions
diff --git a/documentation/ref-manual/technical-details.xml b/documentation/ref-manual/technical-details.xml
index 8d1cefb16f..07560cfb49 100644
--- a/documentation/ref-manual/technical-details.xml
+++ b/documentation/ref-manual/technical-details.xml
@@ -254,7 +254,7 @@
254 the <link linkend='var-WORKDIR'><filename>WORKDIR</filename></link>. 254 the <link linkend='var-WORKDIR'><filename>WORKDIR</filename></link>.
255 It does not matter if the working directory changes because it should not 255 It does not matter if the working directory changes because it should not
256 affect the output for target packages. 256 affect the output for target packages.
257 Also, the build process has the objective of making native/cross packages relocatable. 257 Also, the build process has the objective of making native or cross packages relocatable.
258 The checksum therefore needs to exclude <filename>WORKDIR</filename>. 258 The checksum therefore needs to exclude <filename>WORKDIR</filename>.
259 The simplistic approach for excluding the working directory is to set 259 The simplistic approach for excluding the working directory is to set
260 <filename>WORKDIR</filename> to some fixed value and create the checksum 260 <filename>WORKDIR</filename> to some fixed value and create the checksum
@@ -273,9 +273,9 @@
273 273
274 <para> 274 <para>
275 So far we have solutions for shell scripts. 275 So far we have solutions for shell scripts.
276 What about python tasks? 276 What about Python tasks?
277 The same approach applies even though these tasks are more difficult. 277 The same approach applies even though these tasks are more difficult.
278 The process needs to figure out what variables a python function accesses 278 The process needs to figure out what variables a Python function accesses
279 and what functions it calls. 279 and what functions it calls.
280 Again, the incremental build solution contains code that first figures out 280 Again, the incremental build solution contains code that first figures out
281 the variable and function dependencies, and then creates a checksum for the data 281 the variable and function dependencies, and then creates a checksum for the data
@@ -305,7 +305,7 @@
305 </para> 305 </para>
306 306
307 <para> 307 <para>
308 Consider a case with inline python, for example, where BitBake is not 308 Consider a case with in-line Python, for example, where BitBake is not
309 able to figure out dependencies. 309 able to figure out dependencies.
310 When running in debug mode (i.e. using <filename>-DDD</filename>), BitBake 310 When running in debug mode (i.e. using <filename>-DDD</filename>), BitBake
311 produces output when it discovers something for which it cannot figure out 311 produces output when it discovers something for which it cannot figure out
@@ -319,7 +319,8 @@
319 Information based on direct inputs is referred to as the "basehash" in the 319 Information based on direct inputs is referred to as the "basehash" in the
320 code. 320 code.
321 However, there is still the question of a task's indirect inputs - the 321 However, there is still the question of a task's indirect inputs - the
322 things that were already built and present in the Build Directory. 322 things that were already built and present in the
323 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>.
323 The checksum (or signature) for a particular task needs to add the hashes 324 The checksum (or signature) for a particular task needs to add the hashes
324 of all the tasks on which the particular task depends. 325 of all the tasks on which the particular task depends.
325 Choosing which dependencies to add is a policy decision. 326 Choosing which dependencies to add is a policy decision.
@@ -350,7 +351,7 @@
350 <para> 351 <para>
351 The rules for deciding which hashes of dependent tasks to include through 352 The rules for deciding which hashes of dependent tasks to include through
352 dependency chains are more complex and are generally accomplished with a 353 dependency chains are more complex and are generally accomplished with a
353 python function. 354 Python function.
354 The code in <filename>meta/lib/oe/sstatesig.py</filename> shows two examples 355 The code in <filename>meta/lib/oe/sstatesig.py</filename> shows two examples
355 of this and also illustrates how you can insert your own policy into the system 356 of this and also illustrates how you can insert your own policy into the system
356 if so desired. 357 if so desired.
@@ -365,7 +366,9 @@
365 </literallayout> 366 </literallayout>
366 The "OEBasicHash" <filename>BB_SIGNATURE_HANDLER</filename> is the same as the 367 The "OEBasicHash" <filename>BB_SIGNATURE_HANDLER</filename> is the same as the
367 "OEBasic" version but adds the task hash to the stamp files. 368 "OEBasic" version but adds the task hash to the stamp files.
368 This results in any metadata change that changes the task hash, automatically 369 This results in any
370 <ulink url='&YOCTO_DOCS_DEV_URL;#metadata'>Metadata</ulink>
371 change that changes the task hash, automatically
369 causing the task to be run again. 372 causing the task to be run again.
370 This removes the need to bump <link linkend='var-PR'><filename>PR</filename></link> 373 This removes the need to bump <link linkend='var-PR'><filename>PR</filename></link>
371 values and changes to metadata automatically ripple across the build. 374 values and changes to metadata automatically ripple across the build.