Gentoo Archives: gentoo-embedded

From: Joakim Tjernlund <joakim.tjernlund@×××××××××.se>
To: gentoo-embedded@l.g.o
Subject: Re: [gentoo-embedded] Embedded profile?
Date: Fri, 18 Oct 2013 11:27:36
Message-Id: OF26434952.7B7D69C4-ONC1257C08.003E8FAA-C1257C08.003EF0DE@transmode.se
In Reply to: Re: [gentoo-embedded] Embedded profile? by Joakim Tjernlund
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