1 |
Joakim Tjernlund <joakim.tjernlund@×××××××××.se> wrote on 2013/10/15 |
2 |
16:27:43: |
3 |
> |
4 |
> "Dustin C. Hatch" <admiralnemo@×××××.com> wrote on 2013/10/15 03:01:33: |
5 |
> > |
6 |
> > On 10/14/2013 07:26, Joakim Tjernlund wrote: |
7 |
> > > crossdev sets up an embedded profile by default: |
8 |
> > > ls -l make.profile |
9 |
> > > lrwxrwxrwx 1 root root 30 Oct 14 14:22 make.profile -> |
10 |
> > > /usr/portage/profiles/embedded/ |
11 |
> > > |
12 |
> > > This profile seems a bit outdated and also appears to create this |
13 |
> error |
14 |
> > > msg: |
15 |
> > > emerge-x86_64-tm-linux-gnu -a openrc |
16 |
> > > |
17 |
> > > * IMPORTANT: 3 news items need reading for repository 'gentoo'. |
18 |
> > > * Use eselect news to read news items. |
19 |
> > > |
20 |
> > > |
21 |
> > > These are the packages that would be merged, in order: |
22 |
> > > |
23 |
> > > Calculating dependencies... done! |
24 |
> > > [ebuild N ] sys-libs/ncurses-5.9-r3 to |
25 |
/usr/x86_64-tm-linux-gnu/ |
26 |
> > > USE="cxx minimal -ada -debug -doc -gpm -profile -static-libs -tinfo |
27 |
> -trace |
28 |
> > > -unicode" |
29 |
> > > [ebuild N ] sys-process/psmisc-22.20 to |
30 |
/usr/x86_64-tm-linux-gnu/ |
31 |
> > > USE="-X -ipv6 -nls (-selinux)" |
32 |
> > > [ebuild N ] sys-apps/openrc-0.12.2 to /usr/x86_64-tm-linux-gnu/ |
33 |
> > > USE="netifrc -debug -ncurses -newnet -pam (-prefix) (-selinux) |
34 |
> > > -static-libs -tools -unicode" |
35 |
> > > [ebuild N ] net-misc/netifrc-0.1 to /usr/x86_64-tm-linux-gnu/ |
36 |
> > > |
37 |
> > > Would you like to merge these packages? [Yes/No] |
38 |
> > > * ARCH is not set... Are you missing the '/usr/x86_64-tm-linux- |
39 |
> > > * gnu/etc/portage/make.profile' symlink? Is the symlink correct? |
40 |
Is |
41 |
> your |
42 |
> > > * portage tree complete? |
43 |
> > > |
44 |
> > > I wonder, is the embedded profile maintained or is it just an |
45 |
leftover |
46 |
> > > that should be removed? |
47 |
> > > If not, could someone update it so it at least does not error out? |
48 |
> > > |
49 |
> > > Jocke |
50 |
> > > |
51 |
> > The problem here is that with EAPI 5, profile-only variables were |
52 |
> > introduced, one of which is ARCH. The embedded profile does not |
53 |
contain |
54 |
> > an ARCH definition (because it isn't specific to any architecture), |
55 |
and |
56 |
> > crossdev gets around this by putting it in the make.conf it generates |
57 |
in |
58 |
> |
59 |
> > /usr/{chost}/etc/make.conf. The bug, therefore, is in crossdev; it |
60 |
> > should put the ARCH definition in |
61 |
> > /usr/{chost}/etc/portage/profile/make.defaults instead. I think there |
62 |
> > are some other variables that will need to be set in there as well |
63 |
> > (USERLAND, LIBC, KERNEL, etc.). |
64 |
> |
65 |
> Did some browsing of profiles and it seems to me that this most a |
66 |
profile |
67 |
> problem. The |
68 |
> embedded profile is incomplete and crossdev tries to work around this. |
69 |
> The base, arch etc. subprofiles appears to contain to much to be |
70 |
directly |
71 |
> usable by the |
72 |
> embedded profile. |
73 |
> I don't know how profile area is supposed to work but a |
74 |
> default/linux/amd64/13.0/embedded |
75 |
> profile seem to be the best fit ATM |
76 |
|
77 |
Although I think the current embedded profile needs some love, I |
78 |
noticed that /usr/portage/profiles/embedded/make.defaults has: |
79 |
|
80 |
# Variables that are set exclusively by the profile |
81 |
# and not by user configuration files. |
82 |
PROFILE_ONLY_VARIABLES="ARCH ELIBC IUSE_IMPLICIT KERNEL USERLAND |
83 |
USE_EXPAND_IMPLICIT USE_EXPAND_UNPREFIXED USE_EXPAND_VALUES_ARCH |
84 |
USE_EXPAND_VALUES_ELIBC USE_EXPAND_VALUES_KERNEL |
85 |
USE_EXPAND_VALUES_USERLAND" |
86 |
|
87 |
Removing ARCH from this list fixes the "ARCH is not set.." problem. This |
88 |
is |
89 |
a quick fix we could do for now. I don't know if this has any negative |
90 |
implications though. |
91 |
|
92 |
Jocke |