According to http://www.gentoo.org/proj/en/base/amd64/emul/emul-linux-x86-20110129.xml currently mesa 7.9 is shipped in emul-linux-x86-opengl. Users with opensource radeon drivers like r600g need a more recent version (like 7.10.2) to be able to execute several 32bit games with wine. This is because texture compression support for r600g is needed, which has been enabled in mesa in the first quarter of 2011 and is not available in the old version. This will also introduce 32bit support for newer cards like those with Evergreen chipset. Also libdrm had some updates for intel, noveau and radeon since 2.4.22, so an update to libdrm-2.4.26 would be appreciated. Reproducible: Always
http://cgit.freedesktop.org/~kwg/drm/log/ This branch has from a cursory glance folded in changes from the other available branches and progressed to libdrm-2.4.26 recently http://cgit.freedesktop.org/mesa/drm/log/ currently random david # emerge -vp libdrm These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] x11-libs/libdrm-2.4.25 USE="libkms -static-libs" VIDEO_CARDS="radeon -intel -nouveau -vmware" 0 kB Total: 1 package (1 reinstall), Size of downloads: 0 kB random david # emerge -vp mesa These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] media-libs/mesa-7.10.2-r1 USE="classic gallium gles llvm nptl pic -debug -hardened -motif (-selinux)" VIDEO_CARDS="radeon -intel -mach64 -mga -nouveau -r128 -savage -sis -tdfx -via -vmware" 0 kB on ACCEPT_KEYWORDS="~amd64"
I tested emul-linux-x86-opengl-20110129-r99 and noticed that using wine, Warcraft3 is playable now (it had graphic glitches before and was very slow), Left4Dead 2 starts now (so S3TC is available, it won't start without it), but has a performance of 1 frame per minute or so and the Dawn of War series has no graphic glitches anymore (S3TC again), though it has the same performance issues as L4D. Which mesa version is used in this ebuild now? How are these packages built anyway/is there some documentation available? I want to test mesa-git master by myself (there have been many performance-patches for radeon cards in master but they don't seem to be included in 7.10.3 which has been tagged today) and compile it in the most compatible way; are those built in a 32bit chroot or on a 64bit system with a crosscompiler?
I'd like to chime in: I'm using a Thinkpad T420 with integrated sandybridge graphics, and both the stable emul mesa 7.9 as well as the masked 7.10 are not sufficient for proper 3D in many 32 bit applications, most noticably googleearth. I have worked around this issue by installing mesa 7.10.3 in a 32 bit chroot and the pointing glitchy applications to it via LD_LIBRARY_PATH which makes all affected applications work like a charm. As the combination sandybridge + amd64 is naturally spreading, I'd like to suggest a bump to 7.10.3 at least in a ~amd64 emul-linux-x86-opengl package. For those curious about above workaround: you also have to modify the mesa ebuild and the chroot (use an overlay) and set "--with-dri-searchpath=..." to point mesa to the correct drivers if used outside the chroot; for me, the change looks like econf \ --disable-option-checking \ --with-driver=dri \ --disable-glut \ --without-demos \ --enable-xcb \ $(use_enable debug) \ $(use_enable motif glw) \ $(use_enable motif) \ $(use_enable nptl glx-tls) \ $(use_enable !pic asm) \ --with-dri-drivers=${DRI_DRIVERS} \ --with-dri-searchpath="/32bit_chroot/usr/lib/dri:/usr/lib/dri" \ ${myconf} In addition, you googleearth not only needs the LD_LIBRARY_PATH to be set but also LD_PRELOAD set to the proper libGL.so, dunno why ;) Other than using LD_LIBRARY_PATH, you can also add files to /etc/env.d to inject the chroot /lib and /usr/lib into the linker path before /lib32 and /usr/lib32 , but I felt less at ease with this solution, so I reverted it.
+1 from x11.
Fixed in latest version