llvm? ( !kernel_FreeBSD? ( video_cards_radeonsi? ( || ( >=dev-libs/elfutils-0.155-r1:=[${MULTILIB_USEDEP}] >=dev-libs/libelf-0.8.13-r2:=[${MULTILIB_USEDEP}] ) ) ... This is invalid because: 1. := are forbidden in || () as meaningless and ill-implemented (they trigger a lot of random misbehavior in Portage), 2. || () means the packages listed inside can be switched without rebuilding, while elfutils & libelf have incompatible ABIs. Potential solutions: a. USE flag to control switching between the two, b. a subslotted pseudo-virtual (i.e. virtual/libelf:= where subslot 0/0 installs libelf and 0/1 installs elfutils), c. just supporting one of the two.
I've just talked to blueness and he agrees on adding a virtual for libelf.so. I will fix it after adding it.
commit 7f40b6c262bfe5c8b3ca608a8e8ed71f7055bdcc Author: Michał Górny <mgorny@gentoo.org> AuthorDate: Sat Jun 18 19:46:18 2016 Commit: Michał Górny <mgorny@gentoo.org> CommitDate: Sat Jun 18 20:08:17 2016 media-libs/mesa: Use virtual/libelf