Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 680424 - media-libs/mesa: Missing upper bound for dependency on sys-devel/llvm
Summary: media-libs/mesa: Missing upper bound for dependency on sys-devel/llvm
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: Normal normal
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-03-15 07:23 UTC by Arfrever Frehtes Taifersar Arahesis
Modified: 2019-03-16 20:01 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Patch (mesa.patch,5.11 KB, patch)
2019-03-15 07:51 UTC, Arfrever Frehtes Taifersar Arahesis
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Arfrever Frehtes Taifersar Arahesis 2019-03-15 07:23:05 UTC
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=".
Comment 1 Arfrever Frehtes Taifersar Arahesis 2019-03-15 07:51:10 UTC
Created attachment 569146 [details, diff]
Patch
Comment 2 Matt Turner gentoo-dev 2019-03-15 19:09:27 UTC
Thank you. Michał is the author of those bits, so let's see what he thinks.
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-03-15 19:20:43 UTC
Makes sense.  The specific code ages to the time when slot :8 was implemented by -9999.
Comment 4 Larry the Git Cow gentoo-dev 2019-03-16 20:01:22 UTC
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(-)