From b171aea8369c38231c5e9c70f78c9403173e7cb6 Mon Sep 17 00:00:00 2001 From: Scott Rifenbark Date: Mon, 3 Jul 2017 09:20:54 -0700 Subject: dev-manual: Moved "Finding Temporary Source Code" Fixes [YOCTO #11630] This section can stand as a separate task. I have moved it to the Common Tasks chapter. (From yocto-docs rev: e4fb1ce8b160528aae0f192add614a595b2560a3) Signed-off-by: Scott Rifenbark Signed-off-by: Richard Purdie --- .../dev-manual/dev-manual-common-tasks.xml | 105 ++++++++++++++++++++- documentation/dev-manual/dev-manual-model.xml | 94 ------------------ 2 files changed, 103 insertions(+), 96 deletions(-) (limited to 'documentation') diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml b/documentation/dev-manual/dev-manual-common-tasks.xml index 0879d0d3e0..2510d6e2d4 100644 --- a/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/documentation/dev-manual/dev-manual-common-tasks.xml @@ -3967,6 +3967,107 @@ +
+ Finding Temporary Source Code + + + You might find it helpful during development to modify the + temporary source code used by recipes to build packages. + For example, suppose you are developing a patch and you need to + experiment a bit to figure out your solution. + After you have initially built the package, you can iteratively + tweak the source code, which is located in the + Build Directory, + and then you can force a re-compile and quickly test your altered + code. + Once you settle on a solution, you can then preserve your changes + in the form of patches. + + + + During a build, the unpacked temporary source code used by recipes + to build packages is available in the Build Directory as + defined by the + S + variable. + Below is the default value for the S variable + as defined in the + meta/conf/bitbake.conf configuration file + in the + Source Directory: + + S = "${WORKDIR}/${BP}" + + You should be aware that many recipes override the + S variable. + For example, recipes that fetch their source from Git usually set + S to ${WORKDIR}/git. + + The + BP + represents the base recipe name, which consists of the name + and version: + + BP = "${BPN}-${PV}" + + + + + + The path to the work directory for the recipe + (WORKDIR) + is defined as follows: + + ${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR} + + The actual directory depends on several things: + + + TMPDIR: + The top-level build output directory. + + + MULTIMACH_TARGET_SYS: + The target system identifier. + + + PN: + The recipe name. + + + EXTENDPE: + The epoch - (if + PE + is not specified, which is usually the case for most + recipes, then EXTENDPE is blank). + + + PV: + The recipe version. + + + PR: + The recipe revision. + + + + + + As an example, assume a Source Directory top-level folder + named poky, a default Build Directory at + poky/build, and a + qemux86-poky-linux machine target + system. + Furthermore, suppose your recipe is named + foo_1.3.0.bb. + In this case, the work directory the build system uses to + build the package would be as follows: + + poky/build/tmp/work/qemux86-poky-linux/foo/1.3.0-r0 + + +
+
Building Targets with Multiple Configurations @@ -6532,8 +6633,8 @@ Finding the Kernel Source Code - Each time you build a kernel image, the kernel source code is fetched - and unpacked into the following directory: + Each time you build a kernel image, the kernel source code + is fetched and unpacked into the following directory: ${S}/linux diff --git a/documentation/dev-manual/dev-manual-model.xml b/documentation/dev-manual/dev-manual-model.xml index b1b5efa82c..8f0e5b1d9b 100644 --- a/documentation/dev-manual/dev-manual-model.xml +++ b/documentation/dev-manual/dev-manual-model.xml @@ -826,100 +826,6 @@
- -
- Finding Temporary Source Code - - - You might find it helpful during development to modify the - temporary source code used by recipes to build packages. - For example, suppose you are developing a patch and you need to - experiment a bit to figure out your solution. - After you have initially built the package, you can iteratively - tweak the source code, which is located in the - Build Directory, - and then you can force a re-compile and quickly test your altered code. - Once you settle on a solution, you can then preserve your changes - in the form of patches. - If you are using Quilt for development, see the - "Using Quilt in Your Workflow" - section for more information. - - - - During a build, the unpacked temporary source code used by recipes - to build packages is available in the Build Directory as - defined by the - S variable. - Below is the default value for the S variable as defined in the - meta/conf/bitbake.conf configuration file in the - Source Directory: - - S = "${WORKDIR}/${BP}" - - You should be aware that many recipes override the S variable. - For example, recipes that fetch their source from Git usually set - S to ${WORKDIR}/git. - - The - BP - represents the base recipe name, which consists of the name and version: - - BP = "${BPN}-${PV}" - - - - - - The path to the work directory for the recipe - (WORKDIR) - is defined as follows: - - ${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR} - - The actual directory depends on several things: - - TMPDIR: - The top-level build output directory - MULTIMACH_TARGET_SYS: - The target system identifier - PN: - The recipe name - EXTENDPE: - The epoch - (if - PE - is not specified, which is usually the case for most - recipes, then EXTENDPE is blank) - PV: - The recipe version - PR: - The recipe revision - - - - - As an example, assume a Source Directory top-level folder - named poky, a default Build Directory at - poky/build, and a - qemux86-poky-linux machine target - system. - Furthermore, suppose your recipe is named - foo_1.3.0.bb. - In this case, the work directory the build system uses to - build the package would be as follows: - - poky/build/tmp/work/qemux86-poky-linux/foo/1.3.0-r0 - - - - - Now that you know where to locate the directory that has the - temporary source code, you can use Quilt as described in section - "Using Quilt in Your Workflow" - to make your edits, test the changes, and preserve the changes in - the form of patches. - -
-- cgit v1.2.3-54-g00ecf