Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 504356 - =media-libs/mesa-10.1.0: missing unconditional dependency of virtual/udev for DRI3
Summary: =media-libs/mesa-10.1.0: missing unconditional dependency of virtual/udev for...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Matt Turner
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-03-12 22:20 UTC by Joshua Landry
Modified: 2014-07-05 22:38 UTC (History)
3 users (show)

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


Attachments
build log (file_504356.txt,12.27 KB, text/plain)
2014-03-12 22:20 UTC, Joshua Landry
Details
abi_x86_32 config.log (config.log,273.80 KB, text/plain)
2014-03-12 22:33 UTC, Alex Xu (Hello71)
Details
config.log (config.log,111.54 KB, text/x-log)
2014-03-12 22:53 UTC, Joshua Landry
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Joshua Landry 2014-03-12 22:20:00 UTC
Created attachment 372526 [details]
build log

media-libs/mesa-10.1.0 fails with configure: error: DRI3 requires libudev >= 151. The eubild should be modified to reflect this dependancy.

My use flags for mesa

USE="classic egl gallium llvm nptl openvg pic vdpau xa xvmc -bindist -debug -gbm -gles1 -gles2 -llvm-shared-libs -opencl -osmesa -pax_kernel -r600-llvm-compiler (-selinux) -wayland (-xorg%*)" ABI_X86="(64) -32 (-x32)" VIDEO_CARDS="radeon (-freedreno) -i915 -i965 -ilo -intel -nouveau -r100 -r200 -r300 -r600 -radeonsi -vmware"
Comment 1 Mike Gilbert gentoo-dev 2014-03-12 22:30:14 UTC
Do you have sys-fs/udev or sys-apps/systemd (or neither) installed?

If so, please attach config.log.
Comment 2 Alex Xu (Hello71) 2014-03-12 22:33:13 UTC
Created attachment 372528 [details]
abi_x86_32 config.log
Comment 3 Joshua Landry 2014-03-12 22:53:59 UTC
Created attachment 372530 [details]
config.log

I have neither systemd nor udev installed. In fact, I don't have eudev either. This system uses mdev and doesn't have anything to satisfy virtual/udev. Here is my config.log
Comment 4 Alex Xu (Hello71) 2014-03-12 23:38:42 UTC
Once upon a time, mesa only required udev if gbm was on. Now, DRI3 requires mesa.

Since that's not optional, looks like the only option is an unconditional dependency on virtual/udev.
Comment 5 Joshua Kinard gentoo-dev 2014-03-13 08:18:20 UTC
I don't know about unconditional.  A really *quick* look at Mesa's configure script has these two switches:

  --enable-dri            enable DRI modules [default=enabled]
  --enable-dri3           enable DRI3 [default=enabled]

And we have a 'dri' USE flag, so I'd add a udev conditional dependency only if USE includes 'dri':

DEPEND/RDEPEND:
  dri? ( virtual/udev )

src_configure():
  $(use_enable dri)
  $(use_enable dri dri3)

:)
Comment 6 Joshua Kinard gentoo-dev 2014-03-13 08:32:44 UTC
I did not actually try to compile, only configure, and mesa's ebuild is too complex to figure out the other little places that'd need the dri USE flag as a conditional (like the dri2proto/dri3proto deps), but the basic idea looks like it works:

configure: WARNING: Neither DRI nor Xlib-GLX enabled, disabling GLX
configure: Shared GLAPI is only useful for DRI, disabling
checking for LIBDRM... yes
checking for LIBUDEV... no
checking for mincore... yes
checking for XCB_DRI2... yes
checking for x86_64-pc-linux-gnu-llvm-config... /usr/bin/x86_64-pc-linux-gnu-llvm-config
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile

Someone who is more of a mesa expert might want to chime in more and/or do the actual modifications to the ebuild to disable dri/dri3 if USE="-dri -udev" (I forgot to reference 'udev' USE in my last comment).
Comment 7 Chí-Thanh Christopher Nguyễn gentoo-dev 2014-03-13 12:59:44 UTC
We could add a separate flag for dri3. Disabling dri altogether when there is no udev would probably be also bad for gentoo-fbsd users.
Comment 8 Matt Turner gentoo-dev 2014-03-13 16:16:26 UTC
(In reply to Chí-Thanh Christopher Nguyễn from comment #7)
> We could add a separate flag for dri3. Disabling dri altogether when there
> is no udev would probably be also bad for gentoo-fbsd users.

I like this plan. I'll do this unless you do it first. :)
Comment 9 Matt Turner gentoo-dev 2014-03-13 23:22:33 UTC
Done.
Comment 10 Joshua Kinard gentoo-dev 2014-05-28 03:03:35 UTC
It looks like mesa 10.2 is requiring udev for plain DRI.  Want a separate bug for that, or just re-open this bug?
Comment 11 Chí-Thanh Christopher Nguyễn gentoo-dev 2014-05-28 11:19:18 UTC
The situation this time seems to be a bit different and would require some patching to address. It is best to open a new bug.

http://cgit.freedesktop.org/mesa/mesa/commit/?id=81799c82e47b34db6eeca34113016d2d8389669d
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b959fd9674938e127a34d42d34b903e3a9ae7ad9