Created attachment 395368 [details] emerge --info To reproduce try to build very old toolchain: crossdev -t i686-unknown-linux-gnu --k 3.1 --l 2.2 --g 4.2 --b 2.12 Crossdev will show the following configuration: > * binutils: binutils-2.12 > * gcc: gcc-4.2 > * headers: linux-headers-3.1 > * libc: glibc-2.2 ... and then fail after trying to emerge masked glibc-9999: > The following mask changes are necessary to proceed: > (see "package.unmask" in the portage(5) man page for more details) > # required by cross-i686-unknown-linux-gnu/glibc (argument) > # /etc/portage/package.mask/cross-i686-unknown-linux-gnu: > =cross-i686-unknown-linux-gnu/glibc-9999 > > NOTE: The --autounmask-keep-masks option will prevent emerge > from creating package.unmask or ** keyword changes. > > Use --autounmask-write to write changes to config files (honoring > CONFIG_PROTECT). Carefully examine the list of proposed changes, > paying special attention to mask or keyword changes that may expose > experimental or unstable packages. Also the behavior depends on versions tried before: First, I tried kernel 2.4.18, build failed for linux-headers-3.19 Next, I tried kernel 3.1, build failed later on glibc and then if I specify --k 2.4.18 again crossdev uses 3.1 instead. I think it should at least warn about ignoring specified version.
what you're seeing is portage behavior. you've masked every single possible version, so portage has fallen back to just arbitrarily picking the latest and telling you why it couldn't install it.