[Mesa-dev] [PATCH 4/4] dri: Add a default drirc to be installed to provide application workarounds.

Kenneth Graunke kenneth at whitecape.org
Wed Jan 25 15:39:55 PST 2012

On 01/25/2012 02:56 PM, Marek Olšák wrote:
> Hi Eric,
> I don't like this, because I don't have drirc in my system. Obviously
> Canonical decided not to include it and that also means some of my
> users don't have it. Please can we add workarounds directly in the
> code and on a per-app basis? Something like:
> if (is_linked("libUnigine_x86.so") ||
>      is_linked("libUnigine_x64.so"))
>     apply_workarounds_for_unigine();
> Marek

I don't follow.  Fedora doesn't ship an /etc/drirc by default, either, 
but the mechanism is all in place to use it.  So if you put one there, 
it takes effect.  I'd be pretty shocked if they intentionally went to 
the effort to remove that mechanism.

I don't see why distros would be opposed to shipping a configuration 
file.  We just haven't needed one in the past.  Plus, this workaround is 
only necessary for 8.0 and later, where we expose GL3.  Since users are 
getting a whole new driver, they can easily get a drirc as part of that 
package upgrade.  It doesn't really matter that they don't have such a 
file today.

Whether we put the workarounds list in code or XML, I like the approach 
of having a few flags for workarounds and maintaining the mapping of 
applications -> workarounds in one place.

Another question: is it possible to determine whether libUnigine_xXX.so 
is linked in?  The driconf options today only seem to allow matching on 
an application binary name.  Running "strings" on the binaries does 
mention libUnigine_xXX.so; if feasible, that would be a lot nicer than 
matching on binary name.  There's already Sanctuary, Heaven, Tropics, 
OilRush, and more actual games to come.

More information about the mesa-dev mailing list