1 |
For those who may not know, chromium-os currently uses a |
2 |
hard-host-depends ebuild as a workaround for our lack of HDEPEND support |
3 |
[1]. We could easily add HDEPEND in EAPI 5 if we want, since we already |
4 |
have a Portage patch attached to bug #317337 [2]. Here is a summary of |
5 |
what that Portage patch will do: |
6 |
|
7 |
In EAPI 5 or later, DEPEND has been divided into two parts: |
8 |
DEPEND for build-time target dependencies, and HDEPEND for |
9 |
build-time host dependencies. This division is designed |
10 |
specifically to minimize difficulty in the process of |
11 |
adapting ebuilds that were written for earlier EAPIs, |
12 |
and therefore it also minimizes the adjustments that |
13 |
ebuild developers will have to make to the thought |
14 |
processes involved when writing ebuilds from scratch. In |
15 |
an environment that does not involve cross-compilation, |
16 |
HDEPEND behaves the same as DEPEND. When an ebuild is |
17 |
converted from EAPI 4 or earlier to EAPI 5 or later, |
18 |
in order to support cross-compilation environments, some |
19 |
dependencies may need to be migrated to HDEPEND. |
20 |
|
21 |
For ebuilds that have EAPI 5 or later, the emerge |
22 |
--root-deps option has no effect since it is made obsolete |
23 |
by division between DEPEND and HDEPEND. If EAPI 4 or |
24 |
earlier ebuilds are used in combination with EAPI 5 or |
25 |
later ebuilds, the --root-deps behavior will still be |
26 |
applied to the EAPI 4 or earlier ebuilds (there is no |
27 |
behavior change for ebuilds having older EAPIs). |
28 |
|
29 |
[1] |
30 |
http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/portage-build-faq |
31 |
[2] https://bugs.gentoo.org/show_bug.cgi?id=317337 |
32 |
-- |
33 |
Thanks, |
34 |
Zac |