Gentoo Archives: gentoo-dev

From: Michael Palimaka <kensington@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in games-board/gnugo: gnugo-3.9.1-r1.ebuild ChangeLog
Date: Tue, 02 Jun 2015 13:07:25
Message-Id: mkk9pq$tpb$1@ger.gmane.org
In Reply to: Re: [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in games-board/gnugo: gnugo-3.9.1-r1.ebuild ChangeLog by Mike Frysinger
1 On 02/06/15 21:38, Mike Frysinger wrote:
2 > On 02 Jun 2015 20:47, Michael Palimaka wrote:
3 >> On 02/06/15 17:04, Michał Górny wrote:
4 >>> Dnia 2015-06-02, o godz. 03:58:35
5 >>> "Michael Sterrett (mr_bones_)" <mr_bones_@g.o> napisał(a):
6 >>>> -DEPEND="readline? ( sys-libs/readline )
7 >>>> +DEPEND="readline? ( sys-libs/readline:0 )
8 >>>
9 >>> This should be actually := (or :0=) for both deps since gnugo links to
10 >>> them. This also applies to your remaining 'warning silencing' commits.
11 >>
12 >> Why? Blindly adding the subslot dep is a bad idea.
13 >
14 > in this particular case, the subslot usage is what we want since we're
15 > compiling+linking against it. using readline:0 vs readline is still an
16 > improvement though.
17 >
18 > we also want a subslot on ncurses since we compile+link against it.
19 >
20 > i think it's pretty uncommon to use readline in a package and not want a
21 > subslot. your package would have to be doing something uncommon like
22 > dlopening it since the only thing readline provides is a library ...
23 > -mike
24 >
25
26 Neither readline nor ncurses define an explicit subslot, so I don't know
27 what their future meaning might be.
28
29 While this is not likely to ever present a problem for ncurses or
30 readline, the trend of blindly adding := to all dependencies without
31 knowing what it actually means is concerning. It would be nice to have
32 some information first, for example:
33
34 * readline subslot will be bumped when libreadline breaks, most packages
35 want the operator
36 * poppler has some libraries with stable interfaces, only use the
37 operator if you link against unstable libpoppler (not libpoppler-qt4)
38 * libfoo has an additional private, unstable api used only by specific
39 packages - don't use the operator unless you know what you're doing

Replies