Cairo (I'm using version 1.3.12) has an environment variable "glitz_LIBS" which can be used to tell the configuration script where to look for libraries related to the Glitz back-end. Cairo will NOT by default compile to use "/usr/lib/libglitz-glx.so". I am currently using "glitz_LIBS=-lglitz-glx emerge cairo" to resolve this problem. The net result seems to be that applications redraw faster when using the GLX enabled back-end (card: GeForce 7300Go). Reproducible: Always Steps to Reproduce: The description tells it all.
I added support for this to the -9999 (live) ebuild I've been maintaining in my public overlay¹ (originally grabbed from someone else's overlay; I forget whose.) If glitz and opengl are both set, glitz_LIBS=-lglitz-glx is exported before configure is run. 1) either of: git clone git://people.freedesktop.org/~cloos/overlay.git git clone http://people.freedesktop.org/~cloos/overlay.git
I don't use git so there's no way for me to see your changes. Can you attach the ebuild here?
Added to cairo 1.4.8 since I got around to installing git.
Date: $today From: Chris Wilson Subject: Re: Cairo with glitz backend On Tue, 2009-03-03 at 17:24 -0800, Bipin George Mathew wrote: > > I was looking into way of accelerating Cairo using a glitz-backend and > > had a bunch of related questions: > > > > - What is the current status of glitz? Is anyone working on it? People contribute patches occasionally, just recently we received quite a few to address some bit rot and improve conformance. > > - From the paper here > > http://www.usenix.org/events/usenix04/tech/freenix/full_papers/nilsson/nilsson_html/index.html, it looks like glitz was experimental. What are the areas that needs to be worked on in-order to make it mainstream? For glitz to be considered supported we essentially need two things: 1. It should pass the test suite. 2. A responsive and long-term maintainer (for both the cairo backend the glitz library). > > - What are the other options of accelerating Cairo? Glitz was an experiment to implement the XRender protocol on top of OpenGL. This may not be the best approach to take. Instead the emphasis has shifted onto using the "new" (introduced into cairo after glitz was conceived) high level backend api to offload as much of the drawing operation as possible to the h/w. (Or at least entertain that possibility and investigate different solutions.) So currently aside from glitz, there are experiments to show that simply doing basic compositing using OpenGL can be much faster than XRender: http://cgit.freedesktop.org/~anholt/cairo/log/?h=gl and http://cgit.freedesktop.org/~ickle/cairo/log/?h=opengl A slightly more ambitious (though it does have quite a few fundamental flaws of its own, chiefly among those is that he hasn't asked anyone from the cairo community to review it...) http://github.com/akyrtzi/cairo-gral/tree/master And my favourite (slightly biased since I'm the author ;-) is an example of what you can achieve with direct rendering: http://cgit.freedesktop.org/~ickle/cairo/log/?h=drm which, I claim, is just about as fast as you can make cairo on an eee/i915. (I welcome any patches to make it, and cairo, even faster :-) -ickle _______________________________________________ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg