On 4/13/11 11:58 PM, Adam Williamson wrote:
In the interests of general public enlightenment, it would've
been nice
if you'd answered KK's question "what am I missing", i.e., where's
the
magic bit which makes llvmpipe the default? Knowledge is always a good
thing :)
The specfile contains this stanza, after it has built OSMesa:
# now build the rest of mesa
%configure %{common_flags} \
--disable-glw \
--disable-glut \
--disable-gl-osmesa \
--with-driver=dri \
--with-dri-driverdir=%{_libdir}/dri \
--with-state-trackers=dri,glx \
--enable-egl \
--enable-gles1 \
--enable-gles2 \
--disable-gallium-intel \
--disable-gallium-svga \
--disable-gallium-egl \
%if %{with_hardware}
--enable-gallium-llvm \
--enable-gallium-radeon \
--enable-gallium-r600 \
--enable-gallium-nouveau \
%else
--disable-gallium-llvm \
--disable-gallium-radeon \
--disable-gallium-r600 \
--disable-gallium-nouveau \
%endif
%{?dri_drivers}
The --enable-gallium-llvm bit, in particular, is key. There's some
small magic later where it renames swrastg_dri.so to be swrast_dri.so
because that's the name the X server and libGL are expecting, and that's
not perfect yet in that the debuginfo search gets a little confused, but
in the main I've tried to be pretty clear in the operation of the Mesa
spec, despite the utter malignancy of the Mesa buildsystem (any of them,
take your pick, there's like five now). If I've failed in any way to
document sufficiently our work in the specfile, please, do let me know.
But - as an aside - you're right. I was a little irked at being asked
whether I'd actually done the thing I'd said I'd done, had tested that
I'd done, had documented that I'd done, had claimed in public that I'd
done, and had been doubted of without any evidence of the inquisitor
having made even cursory investigation into the matter. It was wrong of
me to assume that someone reading the spec would look for the string
/llvm/i when looking for how to enable the LLVM support in Mesa, to
assume that someone would read the spec to learn how the package was
built, or to assume that someone would try to test a software GL path
like Xvfb or vesa to see if I was in fact telling the truth before
doubting my honesty. I was unnecessarily short in my reply, and for
that, I apologize. In the future I'll be less succinct.
(No, I won't.)
- ajax