1 |
commit: d25e172b16fa3c59f6868dc164bc6dcc801c4fc2 |
2 |
Author: Michał Górny <mgorny <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Dec 29 07:59:28 2019 +0000 |
4 |
Commit: Ulrich Müller <ulm <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Jan 29 07:58:26 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=d25e172b |
7 |
|
8 |
general-concepts/dependencies: Document BDEPEND |
9 |
|
10 |
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> |
11 |
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org> |
12 |
|
13 |
general-concepts/dependencies/text.xml | 48 ++++++++++++++++++++++++++++++++-- |
14 |
1 file changed, 46 insertions(+), 2 deletions(-) |
15 |
|
16 |
diff --git a/general-concepts/dependencies/text.xml b/general-concepts/dependencies/text.xml |
17 |
index 32feff1..8deca1f 100644 |
18 |
--- a/general-concepts/dependencies/text.xml |
19 |
+++ b/general-concepts/dependencies/text.xml |
20 |
@@ -11,17 +11,61 @@ provided by <c>emerge</c>. |
21 |
</p> |
22 |
</body> |
23 |
|
24 |
+<section> |
25 |
+<title>CHOST vs CBUILD</title> |
26 |
+<body> |
27 |
+ |
28 |
+<p> |
29 |
+In order to avoid ambiguity, we use the following terms to indicate different |
30 |
+systems when cross-compiling: |
31 |
+</p> |
32 |
+ |
33 |
+<dl> |
34 |
+ <dt>CBUILD</dt> |
35 |
+ <dd> |
36 |
+ The system on which the build is performed. Dependencies that apply |
37 |
+ to the CBUILD system can be executed during build time. When |
38 |
+ cross-compiling, they are not installed into the system being built. |
39 |
+ </dd> |
40 |
+ |
41 |
+ <dt>CHOST</dt> |
42 |
+ <dd> |
43 |
+ The system on which the package is going to be executed. When |
44 |
+ cross-compiling, dependencies applying to CHOST can not be executed. |
45 |
+ </dd> |
46 |
+</dl> |
47 |
+ |
48 |
+<p> |
49 |
+When not cross-compiling, CBUILD and CHOST have the same value and both classes |
50 |
+of dependencies are merged. |
51 |
+</p> |
52 |
+ |
53 |
+</body> |
54 |
+</section> |
55 |
+ |
56 |
<section> |
57 |
<title>Build Dependencies</title> |
58 |
<body> |
59 |
|
60 |
<p> |
61 |
-The <c>DEPEND</c> ebuild variable should specify any dependencies which are |
62 |
-required to unpack, patch, compile or install the package (but see |
63 |
+Build dependencies are used to specify any dependencies that are required |
64 |
+to unpack, patch, compile, test or install the package (but see |
65 |
<uri link="::general-concepts/dependencies#Implicit System Dependency"/> for |
66 |
exemptions). |
67 |
</p> |
68 |
|
69 |
+<p> |
70 |
+Starting with EAPI 7, build dependencies are split into two variables: |
71 |
+<c>BDEPEND</c> and <c>DEPEND</c>. <c>BDEPEND</c> specifies dependencies |
72 |
+applicable to CBUILD, i.e. programs that need to be executed during the build, |
73 |
+e.g. <c>virtual/pkgconfig</c>. <c>DEPEND</c> specifies dependencies for CHOST, |
74 |
+i.e. packages that need to be found on built system, e.g. libraries and headers. |
75 |
+</p> |
76 |
+ |
77 |
+<p> |
78 |
+In earlier EAPIs, all build dependencies are placed in <c>DEPEND</c>. |
79 |
+</p> |
80 |
+ |
81 |
</body> |
82 |
</section> |