[Cairo] Cairo on Windows

Keith Packard keithp at keithp.com
Wed Oct 15 16:26:04 PDT 2003

Around 0 o'clock on Oct 16, Pierre-Alain Joye wrote:

> My primary goals is to get a system independant with only in-memory
> surfaces (php as cgi or foobar webserver module). That means to do not
> depend on X, in any way. I'm still wondering if it is possible to get
> that using a standart cairo check out. Is there any plan about that?

It's not quite possible today, but should be soon in the near future as it 
is an explicit goal for many of us.  You can already use cairo in this 
fashion on many systems, there will just be gratuitous dependencies on X 
libraries that won't ever be used by your pixmap-only application.

> That means we'll use our own repository and synchronise it with yours as
> often as required.

You can either do that, use specific cairo releases, or place tags for 
your own uses within the cairo repository.  Whatever works best for you.

> The 1st question I got from them:), is Cairo thread safe?

And, that's a pretty easy one to answer -- cairo is thread safe, given
application-level locking of the cairo objects.  

We could easily add locking inside the cairo library as we've carefully
avoided any APIs that include callbacks.  The trouble with placing locking
calls inside cairo is that there are several different thread
implementations on Linux (and other Linux-like systems) that use very
different locking functions.

Doing the Xlib hack of allowing applications to specify their own locking
functions for use by the library has been a real pain in practice, so I'd
like to avoid that here.


More information about the cairo mailing list