On 23/01/16 09:21, Michael Palimaka wrote:
On 01/23/2016 06:04 AM, Nikos Chantziaras wrote:
I have a weird problem. I have an ebuild where either qt4 or qt5 can be
enabled. They are both disabled by default and I have to choose which
one I want. The ebuild does that with:

   IUSE="qt4 qt5"
   REQUIRED_USE="^^ ( qt4 qt5 )"

I'm on the plasma profile which enabled qt5 automatically. However,
portage complains:

   The following REQUIRED_USE flag constraints are unsatisfied:
   exactly-one-of ( qt4 qt5 )

The qt4 USE flag is enabled. I can't see where. I didn't enable it
anywhere in any of my /etc/portage/* files. If I emerge with:

   USE="-qt4" emerge package

then it works. So I have to explicitly disable the qt4 USE flag even
though I didn't enable it in the first place.

Can someone enlighten me?


Which package is it? We can add an entry to the Plasma profile's
package.use to avoid the REQUIRED_USE.

It's my own ebuilds (in an overlay.) I wasn't setting either USE flag in the ebuilds at all and this spooked me. Turns out it's the parent profile of the plasma profile doing this.

What would be really nice to have in portage is if the profiles were able to say "if qt4 and qt5 are both supported but mutually exclusive, prefer qt5 unless the user or the ebuild itself has specified otherwise". But I guess it would be hairy to implement that. (It would help with other such USE flags as well, not just qt4 vs qt5.)


Reply via email to