On 21 January 2012 03:26, Alan McKinnon <[email protected]> wrote:
> On Fri, 20 Jan 2012 11:00:52 -0600
> »Q« <[email protected]> wrote:
>
>> On Fri, 20 Jan 2012 12:06:22 +0000
>> Neil Bothwick <[email protected]> wrote:
>>
>> > I suspect this is
>> > specific to the KDE ebuilds (or eclass). changed-use should only
>> > skip an ebuild with changed flags if re-emerging would produce
>> > exactly the same code as before, this may not be the case. For
>> > example, in some ebuilds, it is the absence of a USE flag that
>> > triggers an extra configure option, so removing that use flag would
>> > give the same code as if the package had been emerged with it
>> > enabled.
>> >
>> > Something like this happened recently with the nls flag on glibc.
>>
>> Ah, that makes sense -- thanks.  (And now I wish I'd read the entire
>> thread in dev before I posted a few minutes ago.)
>>
>> IMO, the man page's section on --changed-use should say what you've
>> just said rather than what it says now.
>
> I saw the logs from the kde team meeting where they discussed removing
> kdeenablefinal and decided when to do it. My own update on that ran
> overnight so I wasn't too fazed.
>
> But is this not a case where the kde eclass *explictly* set the USE
> flag off? (Disclaimer: haven't read the eclass). In that case portage
> would not know what to do when the flag goes away so the behaviour we
> saw would not really be a bug, it would be "playing safe"

I do not quite follow your logic here. Whether a USE flag is forcibly
disabled, not enabled, or disabled by default, does not make any
practical difference: it is not used. So when it is then removed later
on, no rebuild is necessary. It was not used before, now it does not
even exist any more.

> --changed-use is intended for cases like a flag you are not using at
> all goes away. Caveat: Even then it could still break in subtle ways
> with dodgy ebuilds. Caveat emptor.

Which is *exactly* what happened here (IIUC). The use of
kdeenablefinal has been discouraged from the start [or at least for a
very long time] so I (and presumably most people) never enabled it.
Now it has been removed. Ergo: nothing needs to be rebuilt.

I do not think it makes sense to worry about dodgy ebuilds. If you go
down that road, you would have to rebuild *everything* every time
there is a change ... just in case. Dodgy ebuilds should be fixed, not
catered to.

Reply via email to