Gentoo Archives: gentoo-commits

From: "Ulrich Müller" <ulm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/devmanual:master commit in: general-concepts/dependencies/
Date: Wed, 29 Jan 2020 07:59:59
Message-Id: 1580284706.d25e172b16fa3c59f6868dc164bc6dcc801c4fc2.ulm@gentoo
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>