From 173f158121fd3a983e4b2d8609fa778de50b353a Mon Sep 17 00:00:00 2001 From: Scott Rifenbark Date: Wed, 9 May 2018 10:07:30 -0700 Subject: overview-manual: Updated the "Package Splitting" section. Rewrite included the "do_populate_sysroot" task and a bunch of STAGING_DIR_* variables. (From yocto-docs rev: 53484d4982a41f83ac9355aada46526b5d05f64a) Signed-off-by: Scott Rifenbark Signed-off-by: Richard Purdie --- .../overview-manual/overview-manual-concepts.xml | 66 +++++++++++++++++----- 1 file changed, 52 insertions(+), 14 deletions(-) (limited to 'documentation') diff --git a/documentation/overview-manual/overview-manual-concepts.xml b/documentation/overview-manual/overview-manual-concepts.xml index a9cff85066..4797878312 100644 --- a/documentation/overview-manual/overview-manual-concepts.xml +++ b/documentation/overview-manual/overview-manual-concepts.xml @@ -1312,7 +1312,8 @@ ${WORKDIR} (i.e. recipe-sysroot and recipe-sysroot-native) so that - the sysroots contain the contents of the + during the packaging phase the sysroots can contain + the contents of the do_populate_sysroot tasks of the recipes on which the recipe containing the tasks depends. @@ -1398,37 +1399,74 @@ do_packagedata tasks combine to analyze the files found in the D - directory (i.e. the staging area) and split them into - subsets based on available packages and files. + directory and split them into subsets based on available + packages and files. Analysis involves the following as well as other items: splitting out debugging symbols, looking at shared library dependencies between packages, and looking at package relationships. + + + The do_packagedata task creates package metadata based on the analysis such that the build system can generate the final packages. + The + do_populate_sysroot + task stages (copies) a subset of the files installed by + the + do_install + task into the appropriate sysroot. Working, staged, and intermediate results of the analysis - and package splitting process use these areas: + and package splitting process use several areas: PKGD: - The destination directory for packages before they - are split. + The destination directory + (i.e. package) for packages + before they are split into individual packages. + + + PKGDESTWORK: + A temporary work area (i.e. + pkgdata) used by the + do_package task to save + package metadata. + + + PKGDEST: + The parent directory (i.e. + packages-split) for packages + after they have been split. PKGDATA_DIR: - A shared, global-state directory that holds data - generated during the packaging process. + A shared, global-state directory that holds + packaging metadata generated during the packaging + process. + The packaging process copies metadata from + PKGDESTWORK to the + PKGDATA_DIR area where it + becomes globally available. - PKGDESTWORK: - A temporary work area used by the - do_package task. + STAGING_DIR_HOST: + The path for the sysroot for the system on which + a component is built to run (i.e. + recipe-sysroot). - PKGDEST: - The parent directory for packages after they have - been split. + STAGING_DIR_NATIVE: + The path for the sysroot used when building + components for the build host (i.e. + recipe-sysroot-native). + + + STAGING_DIR_TARGET: + The path for the sysroot used when a component that + is built to execute on a system and it generates + code for yet another machine (e.g. cross-canadian + recipes). The -- cgit v1.2.3-54-g00ecf