summaryrefslogtreecommitdiffstats
path: root/documentation/dev-manual/dev-manual-model.xml
diff options
context:
space:
mode:
authorScott Rifenbark <srifenbark@gmail.com>2017-07-03 09:20:54 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-07-12 00:28:15 +0100
commitb171aea8369c38231c5e9c70f78c9403173e7cb6 (patch)
tree5d12259931c9dd72d72d7508d259cb1bbbec8c48 /documentation/dev-manual/dev-manual-model.xml
parent925f2b2fc231b3b4976a476aa93adabbcf6974f6 (diff)
downloadpoky-b171aea8369c38231c5e9c70f78c9403173e7cb6.tar.gz
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 <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/dev-manual/dev-manual-model.xml')
-rw-r--r--documentation/dev-manual/dev-manual-model.xml94
1 files changed, 0 insertions, 94 deletions
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 @@
826 </orderedlist> 826 </orderedlist>
827 </para> 827 </para>
828 </section> 828 </section>
829
830 <section id='finding-the-temporary-source-code'>
831 <title>Finding Temporary Source Code</title>
832
833 <para>
834 You might find it helpful during development to modify the
835 temporary source code used by recipes to build packages.
836 For example, suppose you are developing a patch and you need to
837 experiment a bit to figure out your solution.
838 After you have initially built the package, you can iteratively
839 tweak the source code, which is located in the
840 <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>,
841 and then you can force a re-compile and quickly test your altered code.
842 Once you settle on a solution, you can then preserve your changes
843 in the form of patches.
844 If you are using Quilt for development, see the
845 "<link linkend='using-a-quilt-workflow'>Using Quilt in Your Workflow</link>"
846 section for more information.
847 </para>
848
849 <para>
850 During a build, the unpacked temporary source code used by recipes
851 to build packages is available in the Build Directory as
852 defined by the
853 <filename><ulink url='&YOCTO_DOCS_REF_URL;#var-S'>S</ulink></filename> variable.
854 Below is the default value for the <filename>S</filename> variable as defined in the
855 <filename>meta/conf/bitbake.conf</filename> configuration file in the
856 <ulink url='&YOCTO_DOCS_REF_URL;#source-directory'>Source Directory</ulink>:
857 <literallayout class='monospaced'>
858 S = "${WORKDIR}/${BP}"
859 </literallayout>
860 You should be aware that many recipes override the <filename>S</filename> variable.
861 For example, recipes that fetch their source from Git usually set
862 <filename>S</filename> to <filename>${WORKDIR}/git</filename>.
863 <note>
864 The
865 <ulink url='&YOCTO_DOCS_REF_URL;#var-BP'><filename>BP</filename></ulink>
866 represents the base recipe name, which consists of the name and version:
867 <literallayout class='monospaced'>
868 BP = "${BPN}-${PV}"
869 </literallayout>
870 </note>
871 </para>
872
873 <para>
874 The path to the work directory for the recipe
875 (<ulink url='&YOCTO_DOCS_REF_URL;#var-WORKDIR'><filename>WORKDIR</filename></ulink>)
876 is defined as follows:
877 <literallayout class='monospaced'>
878 ${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}
879 </literallayout>
880 The actual directory depends on several things:
881 <itemizedlist>
882 <listitem><ulink url='&YOCTO_DOCS_REF_URL;#var-TMPDIR'><filename>TMPDIR</filename></ulink>:
883 The top-level build output directory</listitem>
884 <listitem><ulink url='&YOCTO_DOCS_REF_URL;#var-MULTIMACH_TARGET_SYS'><filename>MULTIMACH_TARGET_SYS</filename></ulink>:
885 The target system identifier</listitem>
886 <listitem><ulink url='&YOCTO_DOCS_REF_URL;#var-PN'><filename>PN</filename></ulink>:
887 The recipe name</listitem>
888 <listitem><ulink url='&YOCTO_DOCS_REF_URL;#var-EXTENDPE'><filename>EXTENDPE</filename></ulink>:
889 The epoch - (if
890 <ulink url='&YOCTO_DOCS_REF_URL;#var-PE'><filename>PE</filename></ulink>
891 is not specified, which is usually the case for most
892 recipes, then <filename>EXTENDPE</filename> is blank)</listitem>
893 <listitem><ulink url='&YOCTO_DOCS_REF_URL;#var-PV'><filename>PV</filename></ulink>:
894 The recipe version</listitem>
895 <listitem><ulink url='&YOCTO_DOCS_REF_URL;#var-PR'><filename>PR</filename></ulink>:
896 The recipe revision</listitem>
897 </itemizedlist>
898 </para>
899
900 <para>
901 As an example, assume a Source Directory top-level folder
902 named <filename>poky</filename>, a default Build Directory at
903 <filename>poky/build</filename>, and a
904 <filename>qemux86-poky-linux</filename> machine target
905 system.
906 Furthermore, suppose your recipe is named
907 <filename>foo_1.3.0.bb</filename>.
908 In this case, the work directory the build system uses to
909 build the package would be as follows:
910 <literallayout class='monospaced'>
911 poky/build/tmp/work/qemux86-poky-linux/foo/1.3.0-r0
912 </literallayout>
913 </para>
914
915 <para>
916 Now that you know where to locate the directory that has the
917 temporary source code, you can use Quilt as described in section
918 "<link linkend='using-a-quilt-workflow'>Using Quilt in Your Workflow</link>"
919 to make your edits, test the changes, and preserve the changes in
920 the form of patches.
921 </para>
922 </section>
923</section> 829</section>
924 830
925<section id="platdev-appdev-devshell"> 831<section id="platdev-appdev-devshell">