diff --git a/documentation/Makefile b/documentation/Makefile index e3a0db4c22..90efc0542b 100644 --- a/documentation/Makefile +++ b/documentation/Makefile @@ -198,7 +198,8 @@ TARFILES = mega-manual.html mega-style.css figures/yocto-environment.png figures figures/sched-wakeup-profile.png figures/sysprof-callers.png \ figures/sysprof-copy-from-user.png figures/sysprof-copy-to-user.png figures/cross-development-toolchains.png \ figures/yocto-environment-ref.png figures/user-configuration.png figures/source-input.png \ - figures/package-feeds.png figures/layer-input.png figures/images.png figures/sdk.png + figures/package-feeds.png figures/layer-input.png figures/images.png figures/sdk.png \ + figures/source-fetching.png endif MANUALS = $(DOC)/$(DOC).html @@ -215,7 +216,7 @@ TARFILES = ref-manual.html ref-style.css figures/poky-title.png \ figures/cross-development-toolchains.png figures/layer-input.png \ figures/package-feeds.png figures/source-input.png \ figures/user-configuration.png figures/yocto-environment-ref.png \ - figures/images.png figures/sdk.png + figures/images.png figures/sdk.png figures/source-fetching.png MANUALS = $(DOC)/$(DOC).html $(DOC)/$(DOC).pdf $(DOC)/eclipse FIGURES = figures STYLESHEET = $(DOC)/*.css diff --git a/documentation/mega-manual/figures/source-fetching.png b/documentation/mega-manual/figures/source-fetching.png new file mode 100644 index 0000000000..ff8414280b Binary files /dev/null and b/documentation/mega-manual/figures/source-fetching.png differ diff --git a/documentation/ref-manual/figures/source-fetching.png b/documentation/ref-manual/figures/source-fetching.png new file mode 100644 index 0000000000..ff8414280b Binary files /dev/null and b/documentation/ref-manual/figures/source-fetching.png differ diff --git a/documentation/ref-manual/technical-details.xml b/documentation/ref-manual/technical-details.xml index 400bbd6e4e..a3dd6f0cb0 100644 --- a/documentation/ref-manual/technical-details.xml +++ b/documentation/ref-manual/technical-details.xml @@ -961,6 +961,77 @@ + +
+ BitBake + + + The OpenEmbedded build system uses BitBake to produce images. + You can see from the + Yocto Project Development Environment + figure, the BitBake area consists of several functional areas. + This section takes a closer look at each of those areas. + + +
+ Source Fetching + + + The first stages of building a recipe are to fetch and unpack + the source code: + + + + + The do_fetch and + do_unpack tasks fetch the source files + and unpack them into a working directory. + By default, everything is accomplished in the + Build Directory, + which has a defined structure. + For additional general information on the Build Directory, + see the + "build/" + section. + + + + Unpacked source source files are pointed to by the + S variable. + Each recipe has an area in the Build Directory where the + unpacked source code resides. + The name of directory for any given recipe is defined from + several different variables. + You can see the variables that define these directories + by looking at the figure: + + TMPDIR + + PACKAGE_ARCH + + TARGET_OS + + PN + + PV + + PR + + WORKDIR + + S + + + + + + Briefly, the S directory contains the + unpacked source files for a recipe. + The WORKDIR directory is where all the + building goes on for a given recipe. + +
+