Joakim Tjernlund <[email protected]> wrote on 2013/10/15 
16:27:43:
> 
> "Dustin C. Hatch" <[email protected]> wrote on 2013/10/15 03:01:33:
> > 
> > On 10/14/2013 07:26, Joakim Tjernlund wrote:
> > > crossdev sets up an embedded profile by default:
> > >   ls -l make.profile
> > > lrwxrwxrwx 1 root root 30 Oct 14 14:22 make.profile ->
> > > /usr/portage/profiles/embedded/
> > >
> > > This profile seems a bit outdated and also appears to create this 
> error
> > > msg:
> > > emerge-x86_64-tm-linux-gnu -a openrc
> > >
> > >   * IMPORTANT: 3 news items need reading for repository 'gentoo'.
> > >   * Use eselect news to read news items.
> > >
> > >
> > > These are the packages that would be merged, in order:
> > >
> > > Calculating dependencies... done!
> > > [ebuild  N     ] sys-libs/ncurses-5.9-r3 to 
/usr/x86_64-tm-linux-gnu/
> > > USE="cxx minimal -ada -debug -doc -gpm -profile -static-libs -tinfo 
> -trace
> > > -unicode"
> > > [ebuild  N     ] sys-process/psmisc-22.20 to 
/usr/x86_64-tm-linux-gnu/
> > > USE="-X -ipv6 -nls (-selinux)"
> > > [ebuild  N     ] sys-apps/openrc-0.12.2 to /usr/x86_64-tm-linux-gnu/
> > > USE="netifrc -debug -ncurses -newnet -pam (-prefix) (-selinux)
> > > -static-libs -tools -unicode"
> > > [ebuild  N     ] net-misc/netifrc-0.1 to /usr/x86_64-tm-linux-gnu/
> > >
> > > Would you like to merge these packages? [Yes/No]
> > >   * ARCH is not set... Are you missing the '/usr/x86_64-tm-linux-
> > >   * gnu/etc/portage/make.profile' symlink? Is the symlink correct? 
Is 
> your
> > >   * portage tree complete?
> > >
> > > I wonder, is the embedded profile maintained or is it just an 
leftover
> > > that should be removed?
> > > If not, could someone update it so it at least does not error out?
> > >
> > >   Jocke
> > >
> > The problem here is that with EAPI 5, profile-only variables were 
> > introduced, one of which is ARCH. The embedded profile does not 
contain 
> > an ARCH definition (because it isn't specific to any architecture), 
and 
> > crossdev gets around this by putting it in the make.conf it generates 
in 
> 
> > /usr/{chost}/etc/make.conf. The bug, therefore, is in crossdev; it 
> > should put the ARCH definition in 
> > /usr/{chost}/etc/portage/profile/make.defaults instead. I think there 
> > are some other variables that will need to be set in there as well 
> > (USERLAND, LIBC, KERNEL, etc.).
> 
> Did some browsing of profiles and it seems to me that this most a 
profile 
> problem. The
> embedded profile is incomplete and crossdev tries to work around this.
> The base, arch etc. subprofiles appears to contain to much to be 
directly 
> usable by the
> embedded profile.
> I don't know how profile area is supposed to work but a 
> default/linux/amd64/13.0/embedded
> profile seem to be the best fit ATM

Although I think the current embedded profile needs some love, I
noticed that /usr/portage/profiles/embedded/make.defaults has:

# Variables that are set exclusively by the profile
# and not by user configuration files.
PROFILE_ONLY_VARIABLES="ARCH ELIBC IUSE_IMPLICIT KERNEL USERLAND 
USE_EXPAND_IMPLICIT USE_EXPAND_UNPREFIXED USE_EXPAND_VALUES_ARCH 
USE_EXPAND_VALUES_ELIBC USE_EXPAND_VALUES_KERNEL 
USE_EXPAND_VALUES_USERLAND"

Removing ARCH from this list fixes the "ARCH is not set.." problem. This 
is
a quick fix we could do for now. I don't know if this has any negative
implications though.

 Jocke

Reply via email to