diff options
author | Scott Rifenbark <srifenbark@gmail.com> | 2018-01-29 15:18:03 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-02-14 15:25:29 +0000 |
commit | ae06e04cd225d2c2147ca355e2dd39b4f6cf6775 (patch) | |
tree | c920e85262a91e7626279e7dcbbd56a299919f49 /documentation/getting-started/eclipse/html/getting-started/invalidating-shared-state.html | |
parent | ebc7de094881dd8f2450aa4fdf548f2e9c835df1 (diff) | |
download | poky-ae06e04cd225d2c2147ca355e2dd39b4f6cf6775.tar.gz |
documentation: Created new "Getting Started" manual.
Creation involved removing the overview-manual and replacing it
with the getting-started manual. All links to the string
"&YOCTO_DOCS_OVERVIEW_URL" had to be replaced with
"&YOCTO_DOCS_GS_URL" across the entire YP manual set. I renamed
files used to create the manual with prefixes suited for the
new manual name, which is "Getting Started With Yocto Project".
The style sheet for the new manual needed updating to display the
new .PNG image for the title page. The mega-manual file had to
be updated to include the files. The mega-manual.sed file had
to be updated to include the new manual and not use the overview
manual.
(From yocto-docs rev: 6c7abf9192390121000f577d6c98f259d290d15d)
Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/getting-started/eclipse/html/getting-started/invalidating-shared-state.html')
-rw-r--r-- | documentation/getting-started/eclipse/html/getting-started/invalidating-shared-state.html | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/documentation/getting-started/eclipse/html/getting-started/invalidating-shared-state.html b/documentation/getting-started/eclipse/html/getting-started/invalidating-shared-state.html new file mode 100644 index 0000000000..ef4a2aac5e --- /dev/null +++ b/documentation/getting-started/eclipse/html/getting-started/invalidating-shared-state.html | |||
@@ -0,0 +1,77 @@ | |||
1 | <html> | ||
2 | <head> | ||
3 | <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | ||
4 | <title>3.3.4.2. Invalidating Shared State</title> | ||
5 | <link rel="stylesheet" type="text/css" href="../book.css"> | ||
6 | <meta name="generator" content="DocBook XSL Stylesheets V1.76.1"> | ||
7 | <link rel="home" href="index.html" title="Getting Started With Yocto Project"> | ||
8 | <link rel="up" href="tips-and-tricks.html" title="3.3.4. Tips and Tricks"> | ||
9 | <link rel="prev" href="overview-debugging.html" title="3.3.4.1. Debugging"> | ||
10 | <link rel="next" href="automatically-added-runtime-dependencies.html" title="3.4. Automatically Added Runtime Dependencies"> | ||
11 | </head> | ||
12 | <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="section" title="3.3.4.2. Invalidating Shared State"> | ||
13 | <div class="titlepage"><div><div><h4 class="title"> | ||
14 | <a name="invalidating-shared-state"></a>3.3.4.2. Invalidating Shared State</h4></div></div></div> | ||
15 | <p> | ||
16 | The OpenEmbedded build system uses checksums and shared | ||
17 | state cache to avoid unnecessarily rebuilding tasks. | ||
18 | Collectively, this scheme is known as "shared state code." | ||
19 | </p> | ||
20 | <p> | ||
21 | As with all schemes, this one has some drawbacks. | ||
22 | It is possible that you could make implicit changes to your | ||
23 | code that the checksum calculations do not take into | ||
24 | account. | ||
25 | These implicit changes affect a task's output but do not | ||
26 | trigger the shared state code into rebuilding a recipe. | ||
27 | Consider an example during which a tool changes its output. | ||
28 | Assume that the output of <code class="filename">rpmdeps</code> | ||
29 | changes. | ||
30 | The result of the change should be that all the | ||
31 | <code class="filename">package</code> and | ||
32 | <code class="filename">package_write_rpm</code> shared state cache | ||
33 | items become invalid. | ||
34 | However, because the change to the output is | ||
35 | external to the code and therefore implicit, | ||
36 | the associated shared state cache items do not become | ||
37 | invalidated. | ||
38 | In this case, the build process uses the cached items | ||
39 | rather than running the task again. | ||
40 | Obviously, these types of implicit changes can cause | ||
41 | problems. | ||
42 | </p> | ||
43 | <p> | ||
44 | To avoid these problems during the build, you need to | ||
45 | understand the effects of any changes you make. | ||
46 | Realize that changes you make directly to a function | ||
47 | are automatically factored into the checksum calculation. | ||
48 | Thus, these explicit changes invalidate the associated | ||
49 | area of shared state cache. | ||
50 | However, you need to be aware of any implicit changes that | ||
51 | are not obvious changes to the code and could affect | ||
52 | the output of a given task. | ||
53 | </p> | ||
54 | <p> | ||
55 | When you identify an implicit change, you can easily | ||
56 | take steps to invalidate the cache and force the tasks | ||
57 | to run. | ||
58 | The steps you can take are as simple as changing a | ||
59 | function's comments in the source code. | ||
60 | For example, to invalidate package shared state files, | ||
61 | change the comment statements of | ||
62 | <a class="link" href="../ref-manual/ref-tasks-package.html" target="_self"><code class="filename">do_package</code></a> | ||
63 | or the comments of one of the functions it calls. | ||
64 | Even though the change is purely cosmetic, it causes the | ||
65 | checksum to be recalculated and forces the OpenEmbedded | ||
66 | build system to run the task again. | ||
67 | </p> | ||
68 | <div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;"> | ||
69 | <h3 class="title">Note</h3> | ||
70 | For an example of a commit that makes a cosmetic | ||
71 | change to invalidate shared state, see this | ||
72 | <a class="ulink" href="http://git.yoctoproject.org/cgit.cgi/poky/commit/meta/classes/package.bbclass?id=737f8bbb4f27b4837047cb9b4fbfe01dfde36d54" target="_self">commit</a>. | ||
73 | </div> | ||
74 | <p> | ||
75 | </p> | ||
76 | </div></body> | ||
77 | </html> | ||