summaryrefslogtreecommitdiffstats
path: root/documentation/ref-manual/eclipse/html/poky-ref-manual/ref-classes-externalsrc.html
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/ref-manual/eclipse/html/poky-ref-manual/ref-classes-externalsrc.html')
-rw-r--r--documentation/ref-manual/eclipse/html/poky-ref-manual/ref-classes-externalsrc.html72
1 files changed, 0 insertions, 72 deletions
diff --git a/documentation/ref-manual/eclipse/html/poky-ref-manual/ref-classes-externalsrc.html b/documentation/ref-manual/eclipse/html/poky-ref-manual/ref-classes-externalsrc.html
deleted file mode 100644
index ead3708607..0000000000
--- a/documentation/ref-manual/eclipse/html/poky-ref-manual/ref-classes-externalsrc.html
+++ /dev/null
@@ -1,72 +0,0 @@
1<html>
2<head>
3<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
4<title>7.20. Using External Source - externalsrc.bbclass</title>
5<link rel="stylesheet" type="text/css" href="../book.css">
6<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7<link rel="home" href="index.html" title="The Yocto Project Reference Manual">
8<link rel="up" href="ref-classes.html" title="Chapter 7. Classes">
9<link rel="prev" href="ref-classes-useradd.html" title="7.19. Adding Users - useradd.bbclass">
10<link rel="next" href="ref-classes-others.html" title="7.21. Other Classes">
11</head>
12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="section" title="7.20. Using External Source - externalsrc.bbclass">
13<div class="titlepage"><div><div><h2 class="title" style="clear: both">
14<a name="ref-classes-externalsrc"></a>7.20. Using External Source - <code class="filename">externalsrc.bbclass</code>
15</h2></div></div></div>
16<p>
17 You can use this class to build software from source code that is external to the
18 OpenEmbedded build system.
19 In other words, your source code resides in an external tree outside of the Yocto Project.
20 Building software from an external source tree means that the normal fetch, unpack, and
21 patch process is not used.
22 </p>
23<p>
24 To use the class, you need to define the
25 <a class="link" href="ref-variables-glos.html#var-S" title="S"><code class="filename">S</code></a> variable to point to the directory that contains the source files.
26 You also need to have your recipe inherit the <code class="filename">externalsrc.bbclass</code> class.
27 </p>
28<p>
29 This class expects the source code to support recipe builds that use the
30 <a class="link" href="ref-variables-glos.html#var-B" title="B"><code class="filename">B</code></a> variable to point to the directory in
31 which the OpenEmbedded build system places the generated objects built from the recipes.
32 By default, the <code class="filename">B</code> directory is set to the following, which is separate from the
33 Source Directory (<code class="filename">S</code>):
34 </p>
35<pre class="literallayout">
36 ${WORKDIR}/${BPN}-{PV}/
37 </pre>
38<p>
39 See the glossary entries for the
40 <a class="link" href="ref-variables-glos.html#var-WORKDIR" title="WORKDIR"><code class="filename">WORKDIR</code></a>,
41 <a class="link" href="ref-variables-glos.html#var-BPN" title="BPN"><code class="filename">BPN</code></a>,
42 <a class="link" href="ref-variables-glos.html#var-PV" title="PV"><code class="filename">PV</code></a>,
43 <a class="link" href="ref-variables-glos.html#var-S" title="S"><code class="filename">S</code></a>, and
44 <a class="link" href="ref-variables-glos.html#var-B" title="B"><code class="filename">B</code></a> for more information.
45 </p>
46<p>
47 You can build object files in the external tree by setting the
48 <code class="filename">B</code> variable equal to <code class="filename">"${S}"</code>.
49 However, this practice does not work well if you use the source for more than one variant
50 (i.e., "natives" such as <code class="filename">quilt-native</code>,
51 or "crosses" such as <code class="filename">gcc-cross</code>).
52 So, be sure there are no "native", "cross", or "multilib" variants of the recipe.
53 </p>
54<p>
55 If you do want to build different variants of a recipe, you can use the
56 <a class="link" href="ref-variables-glos.html#var-BBCLASSEXTEND" title="BBCLASSEXTEND"><code class="filename">BBCLASSEXTEND</code></a> variable.
57 When you do, the <a class="link" href="ref-variables-glos.html#var-B" title="B"><code class="filename">B</code></a> variable must support the
58 recipe's ability to build variants in different working directories.
59 Most autotools-based recipes support separating these directories.
60 The OpenEmbedded build system defaults to using separate directories for <code class="filename">gcc</code>
61 and some kernel recipes.
62 Alternatively, you can make sure that separate recipes exist that each
63 use the <code class="filename">BBCLASSEXTEND</code> variable to build each variant.
64 The separate recipes can inherit a single target recipe.
65 </p>
66<p>
67 For information on how to use this class, see the
68 "<a class="link" href="../dev-manual/building-software-from-an-external-source.html" target="_self">Building
69 Software from an External Source</a>" section in the Yocto Project Development Manual.
70 </p>
71</div></body>
72</html>