]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
adt-manual, ref-manual: Detail on using an external toolchain.
authorScott Rifenbark <scott.m.rifenbark@intel.com>
Thu, 12 Feb 2015 21:32:59 +0000 (13:32 -0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 17 Feb 2015 15:17:03 +0000 (15:17 +0000)
Fixes [YOCTO #4907]

I created a new section in the toolchain chapter of the adt-manual
called "optionally Using an External Toolchain".  This provides
some fundamental information for the user that wants to use
an external toolchain.  Additionally, it references Mentor
Graphics Sourcery toolchain as an example.

In the ref-manual, I updated the TCMODE variable description to
better integrate the MGC Sourcery toolchain as the overriding
example.

(From yocto-docs rev: 51e9c3b88f7e5a16da2aa101589b0f2612fff11d)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
documentation/adt-manual/adt-prepare.xml
documentation/ref-manual/ref-variables.xml

index 260e1f18a02014045da76b6e041e474f4f724d5a..3d0cfd42fb0d15cfeaf380bdd0eaf45cec11e087 100644 (file)
     </para>
 </section>
 
+<section id='optionally-using-an-external-toolchain'>
+    <title>Optionally Using an External Toolchain</title>
+
+    <para>
+        You might want to use an external toolchain as part of your
+        development.
+        If this is the case, the fundamental steps you need to accomplish
+        are as follows:
+        <itemizedlist>
+            <listitem><para>
+                Understand where the installed toolchain resides.
+                For cases where you need to build the external toolchain, you
+                would need to take separate steps to build and install the
+                toolchain.
+                </para></listitem>
+            <listitem><para>
+                Make sure you add the layer that contains the toolchain to
+                your <filename>bblayers.conf</filename> file through the
+                <ulink url='&YOCTO_DOCS_REF_URL;#var-BBLAYERS'><filename>BBLAYERS</filename></ulink>
+                variable.
+                </para></listitem>
+            <listitem><para>
+                Set the
+                <ulink url='&YOCTO_DOCS_REF_URL;#var-EXTERNAL_TOOLCHAIN'><filename>EXTERNAL_TOOLCHAIN</filename></ulink>
+                variable in your <filename>local.conf</filename> file
+                to the location in which you installed the toolchain.
+                </para></listitem>
+        </itemizedlist>
+        A good example of an external toolchain used with the Yocto Project
+        is <trademark class='registered'>Mentor Graphics</trademark>
+        Sourcery G++ Toolchain.
+        You can see information on how to use that particular layer in the
+        <filename>README</filename> file at
+        <ulink url='http://github.com/MentorEmbedded/meta-sourcery/'></ulink>.
+        You can find further information by reading about the
+        <ulink url='&YOCTO_DOCS_REF_URL;#var-TCMODE'><filename>TCMODE</filename></ulink>
+        variable in the Yocto Project Reference Manual's variable glossary.
+    </para>
+</section>
 </chapter>
 <!--
 vim: expandtab tw=80 ts=4
index 8f0d8917b5e67a061f244801df92d0afebc7dad9..971a89806dbbd016793ace66dceb3eab05559e58 100644 (file)
@@ -11140,35 +11140,41 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
                     </note>
                 </para>
 
+                <para>
+                    The <filename>TCMODE</filename> variable is similar to
+                    <link linkend='var-TCLIBC'><filename>TCLIBC</filename></link>,
+                    which controls the variant of the GNU standard C library
+                    (<filename>libc</filename>) used during the build process:
+                    <filename>glibc</filename> or <filename>uclibc</filename>.
+                </para>
+
                 <para>
                     With additional layers, it is possible to use a pre-compiled
                     external toolchain.
                     One example is the Sourcery G++ Toolchain.
                     The support for this toolchain resides in the separate
+                    <trademark class='registered'>Mentor Graphics</trademark>
                     <filename>meta-sourcery</filename> layer at
                     <ulink url='http://github.com/MentorEmbedded/meta-sourcery/'></ulink>.
-                    You can use <filename>meta-sourcery</filename> as a
-                    template for adding support for other external toolchains.
                 </para>
 
                 <para>
-                    The <filename>TCMODE</filename> variable points the build
-                    system to a file in
-                    <filename>conf/distro/include/tcmode-${TCMODE}.inc</filename>.
-                    Thus, for <filename>meta-sourcery</filename>,
-                    which has <filename>conf/distro/include/tcmode-external-sourcery.inc</filename>,
-                    you would set the variable as follows:
-                    <literallayout class='monospaced'>
-     TCMODE ?= "external-sourcery"
-                    </literallayout>
+                    The layer's <filename>README</filename> file contains
+                    information on how to use the Sourcery G++ Toolchain as
+                    an external toolchain.
+                    In summary, you must be sure to add the layer to your
+                    <filename>bblayers.conf</filename> file in front of the
+                    <filename>meta</filename> layer and then set the
+                    <link linkend='var-EXTERNAL_TOOLCHAIN'><filename>EXTERNAL_TOOLCHAIN</filename></link>
+                    variable in your <filename>local.conf</filename> file
+                    to the location in which you installed the toolchain.
                 </para>
 
                 <para>
-                    The variable is similar to
-                    <link linkend='var-TCLIBC'><filename>TCLIBC</filename></link>,
-                    which controls the variant of the GNU standard C library
-                    (<filename>libc</filename>) used during the build process:
-                    <filename>glibc</filename> or <filename>uclibc</filename>.
+                    The fundamentals used for this example apply to any
+                    external toolchain.
+                    You can use <filename>meta-sourcery</filename> as a
+                    template for adding support for other external toolchains.
                 </para>
             </glossdef>
         </glossentry>