Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 288619 - [x11 overlay] mesa-9999 needs libXxf86vm-9999 to compile, but it's no dependency
Summary: [x11 overlay] mesa-9999 needs libXxf86vm-9999 to compile, but it's no dependency
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-10-11 20:48 UTC by Martin Baselier
Modified: 2009-10-26 12:57 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Baselier 2009-10-11 20:48:25 UTC
mesa-9999 won't compile if libXxf86vm-9999 is not installed, because /usr/include/X11/extensions/xf86vmode.h is missing. I had libXxf86vm-1.0.2 installed and mesa would not compile. This also impacts allegro and maybe some other libs.


Reproducible: Always

Steps to Reproduce:
1.layman -a x11
2. make sure =x11-libs/libXxf86vm-9999 is not in /etc/portage.package.unmask
3. emerge libXxf86vm (downgrade it)
4. emerge mesa

Actual Results:  
mesa halted with a compile error (it was missing a prototype from xf86vmode.h

Expected Results:  
mesa should compile
Comment 1 Chí-Thanh Christopher Nguyễn gentoo-dev 2009-10-20 07:27:54 UTC
No, the problem is that you are using an unholy constellation of stable and unstable parts of X.org. Which may or may not work.

In your case it is probably
x11-proto/xf86vidmodeproto-2.3 (or 9999)
x11-libs/libXxf86vm-1.0.2

This cannot work, as xf86vmode.h was removed from xf86vidmodeproto-2.3 and added to libXxf86vm-1.1.0
Comment 2 Martin Baselier 2009-10-20 12:08:24 UTC
I know that was the problem, because I solved it. The idea behind a package manager is that it should resolve dependencies correctly. This includes the correct versions.When I unmasked the unstable versions of x11-drm, mesa and xorg-server, I had to unmask a bunch of unstable libraries to install it. This included xf86vidmodeproto, but not libXxf86vm.


I started with: 
=x11-base/x11-drm-99999999
=x11-base/xorg-server-9999
=media-libs/mesa-9999

Than I had to add:
=x11-proto/xextproto-9999
=x11-base/xorg-drivers-9999
=x11-libs/libXi-9999
=x11-libs/libXext-9999
=x11-libs/libXinerama-9999
=x11-libs/libX11-9999
=x11-libs/libxcb-9999
=x11-proto/xproto-9999
=x11-proto/xcb-proto-9999
=x11-drivers/xf86-video-ati-9999
=x11-libs/libdrm-9999
=x11-drivers/xf86-input-synaptics-9999
=x11-drivers/xf86-input-evdev-9999
=x11-libs/libXtst-9999

And only after I added the line below, it worked.
=x11-libs/libXxf86vm-9999

The only package depending on it, is xorg-x11, which I don't use since it installs a whole bunch of other stuff I don't need.
Comment 3 Chí-Thanh Christopher Nguyễn gentoo-dev 2009-10-20 12:17:06 UTC
Mixing stable and unstable parts of X.org is possible but not supported. Do not expect Gentoo to keep you from shooting yourself in your foot.

The alternative would be to introduce blocks like qt-4.5 did, but whether it is worth the hassle is questionable.
Comment 4 Rémi Cardona (RETIRED) gentoo-dev 2009-10-20 12:39:13 UTC
We have actually started adding blockers here and there in current masked packages (and in overlay ebuilds). But we do need to go over the whole lot. I'm sure we've missed a few.

Those blockers should also be added to -9999 ebuilds.

Thanks
Comment 5 Rémi Cardona (RETIRED) gentoo-dev 2009-10-26 12:57:39 UTC
I've checked all currently masked proto packages and I've added blockers where necessary.

Hopefully, the blockers should now prevent this bug.

Thanks