media-libs/mesa ebuilds are missing upper bound for dependency on sys-devel/llvm. There is even an instruction in comments, but actual dependencies ignore it. Example (mesa-19.0.0): # Please keep the LLVM dependency block separate. Since LLVM is slotted, # we need to *really* make sure we're not pulling one than more slot # simultaneously. # # How to use it: # 1. List all the working slots (with min versions) in ||, newest first. # 2. Update the := to specify *max* version, e.g. < 7. # 3. Specify LLVM_MAX_SLOT, e.g. 6. LLVM_MAX_SLOT="8" LLVM_DEPSTR=" || ( sys-devel/llvm:8[${MULTILIB_USEDEP}] sys-devel/llvm:7[${MULTILIB_USEDEP}] ) sys-devel/llvm:=[${MULTILIB_USEDEP}] " This means that the sys-devel/llvm atom with := operator needs to have "<" dependency with version number higher than supported. If sys-devel/llvm:7 is highest supported version, then <sys-devel/llvm-8:= is needed. If sys-devel/llvm:8 is highest supported version, then <sys-devel/llvm-9:= is needed. In /var/db/pkg/media-libs/mesa-*/RDEPEND, "<sys-devel/llvm-9:=" will be expanded into e.g. "<sys-devel/llvm-9:8/8=". While "sys-devel/llvm:=" could match a newer version (e.g. sys-devel/llvm-9999:9) and be expanded into e.g. "sys-devel/llvm:9/9=".
Created attachment 569146 [details, diff] Patch
Thank you. Michał is the author of those bits, so let's see what he thinks.
Makes sense. The specific code ages to the time when slot :8 was implemented by -9999.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc3fed5c7d82a99811fa4dd63db8e66aba5be5b0 commit bc3fed5c7d82a99811fa4dd63db8e66aba5be5b0 Author: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> AuthorDate: 2019-03-15 07:40:44 +0000 Commit: Matt Turner <mattst88@gentoo.org> CommitDate: 2019-03-16 20:01:07 +0000 media-libs/mesa: Specify upper bound for dependency on sys-devel/llvm. Update examples in comments. Fixes: https://bugs.gentoo.org/680424 Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> Signed-off-by: Matt Turner <mattst88@gentoo.org> media-libs/mesa/mesa-18.2.8.ebuild | 6 +++--- media-libs/mesa/mesa-18.3.4.ebuild | 6 +++--- media-libs/mesa/mesa-19.0.0.ebuild | 6 +++--- media-libs/mesa/mesa-9999.ebuild | 4 ++-- 4 files changed, 11 insertions(+), 11 deletions(-)