summaryrefslogtreecommitdiffstats
path: root/bitbake/doc/user-manual/user-manual-metadata.xml
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2014-02-11 07:02:14 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-03-09 18:59:02 -0700
commit0510569b8cda3ba5484f73150ca54fd389716f9c (patch)
treec47f1ed92a533b24ab43362d8f850a822b793983 /bitbake/doc/user-manual/user-manual-metadata.xml
parent1d9c02e878937b1bb35cf44c5f0291400ef485ba (diff)
downloadpoky-0510569b8cda3ba5484f73150ca54fd389716f9c.tar.gz
bitbake: user-manual-metadata.xml: WIP - Some edits in the checksum area.
(Bitbake rev: f74045d9ac88aece1d6f8d6a95389d01971ffdac) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/doc/user-manual/user-manual-metadata.xml')
-rw-r--r--bitbake/doc/user-manual/user-manual-metadata.xml87
1 files changed, 64 insertions, 23 deletions
diff --git a/bitbake/doc/user-manual/user-manual-metadata.xml b/bitbake/doc/user-manual/user-manual-metadata.xml
index a7d9209560..796d27b151 100644
--- a/bitbake/doc/user-manual/user-manual-metadata.xml
+++ b/bitbake/doc/user-manual/user-manual-metadata.xml
@@ -1735,36 +1735,77 @@
1735 <title>Task Checksums and Setscene</title> 1735 <title>Task Checksums and Setscene</title>
1736 1736
1737 <para> 1737 <para>
1738 This list is a place holder of content that needs explanation here. 1738 BitBake uses checksums (or signatures) along with the setscene
1739 Items should be moved to appropriate sections below as completed. 1739 to determine if a task needs to be run.
1740 This section describes the process.
1741 To help understand how BitBake does this, the section assumes an
1742 OpenEmbedded metadata-based example.
1743 </para>
1744
1745 <para>
1746 This list is a place holder of content existed from previous work
1747 on the manual.
1748 Some or all of it probably needs integrated into the subsections
1749 that make up this section.
1750 For now, I have just provided a short glossary-like description
1751 for each variable.
1752 Ultimately, this list goes away.
1740 <itemizedlist> 1753 <itemizedlist>
1741 <listitem><para><filename>STAMP</filename></para></listitem> 1754 <listitem><para><filename>STAMP</filename>:
1742 <listitem><para><filename>STAMPCLEAN</filename></para></listitem> 1755 The base path to create stamp files.</para></listitem>
1743 <listitem><para><filename>BB_STAMP_WHITELIST</filename></para></listitem> 1756 <listitem><para><filename>STAMPCLEAN</filename>
1744 <listitem><para><filename>BB_STAMP_POLICY</filename></para></listitem> 1757 Again, the base path to create stamp files but can use wildcards
1745 <listitem><para><filename>BB_HASHCHECK_FUNCTION</filename></para></listitem> 1758 for matching a range of files for clean operations.
1746 <listitem><para><filename>BB_SETSCENE_VERIFY_FUNCTION</filename></para></listitem> 1759 </para></listitem>
1747 <listitem><para><filename>BB_SETSCENE_DEPVALID</filename></para></listitem> 1760 <listitem><para><filename>BB_STAMP_WHITELIST</filename>
1748 <listitem><para><filename>BB_TASKHASH</filename></para></listitem> 1761 Lists stamp files that are looked at when the stamp policy
1762 is "whitelist".
1763 </para></listitem>
1764 <listitem><para><filename>BB_STAMP_POLICY</filename>
1765 Defines the mode for comparing timestamps of stamp files.
1766 </para></listitem>
1767 <listitem><para><filename>BB_HASHCHECK_FUNCTION</filename>
1768 Specifies the name of the function to call during
1769 the "setscene" part of the task's execution in order
1770 to validate the list of task hashes.
1771 </para></listitem>
1772 <listitem><para><filename>BB_SETSCENE_VERIFY_FUNCTION</filename>
1773 Specifies a function to call that verifies the list of
1774 planned task execution before the main task execution
1775 happens.
1776 </para></listitem>
1777 <listitem><para><filename>BB_SETSCENE_DEPVALID</filename>
1778 Specifies a function BitBake calls that determines
1779 whether BitBake requires a setscene dependency to
1780 be met.
1781 </para></listitem>
1782 <listitem><para><filename>BB_TASKHASH</filename>
1783 Within an executing task, this variable holds the hash
1784 of the task as returned by the currently enabled
1785 signature generator.
1786 </para></listitem>
1749 </itemizedlist> 1787 </itemizedlist>
1750 </para> 1788 </para>
1751 1789
1752 <section id='checksums'> 1790 <section id='setscene'>
1753 <title>Checksums (Signatures)</title> 1791 <title>Setscene</title>
1754 1792
1755 <para> 1793 <para>
1756 BitBake uses checksums (or signatures) along with the setscene 1794 This section needs to get the concept of the setscene across.
1757 to determine if a task needs to be run. 1795 The reader needs to know what it is and what it is used for during
1758 This section describes the process. 1796 the build process.
1759 To help understand how BitBake does this, the section assumes an
1760 OpenEmbedded metadata-based example.
1761 </para> 1797 </para>
1798 </section>
1799
1800 <section id='checksums'>
1801 <title>Checksums (Signatures)</title>
1762 1802
1763 <para> 1803 <para>
1764 The setscene code uses a checksum, which is a unique signature of a task's 1804 A checksum is a unique signature of a task's inputs.
1765 inputs, to determine if a task needs to be run again. 1805 The setscene code uses a checksum to determine if a task needs
1766 Because it is a change in a task's inputs that triggers a rerun, the process 1806 to be run.
1767 needs to detect all the inputs to a given task. 1807 Because it is a change in a task's inputs that triggers running
1808 the task, the process needs to detect all the inputs to a given task.
1768 For shell tasks, this turns out to be fairly easy because 1809 For shell tasks, this turns out to be fairly easy because
1769 BitBake generates a "run" shell script for each task and 1810 BitBake generates a "run" shell script for each task and
1770 it is possible to create a checksum that gives you a good idea of when 1811 it is possible to create a checksum that gives you a good idea of when
@@ -1776,9 +1817,9 @@
1776 the checksum. 1817 the checksum.
1777 First, there is the actual specific build path of a given task - 1818 First, there is the actual specific build path of a given task -
1778 the working directory. 1819 the working directory.
1779 It does not matter if the work directory changes because it should not 1820 It does not matter if the working directory changes because it should not
1780 affect the output for target packages. 1821 affect the output for target packages.
1781 The simplistic approach for excluding the work directory is to set 1822 The simplistic approach for excluding the working directory is to set
1782 it to some fixed value and create the checksum for the "run" script. 1823 it to some fixed value and create the checksum for the "run" script.
1783 </para> 1824 </para>
1784 1825