FS#20960 - [cairo] XCB backend was disabled

Attached to Project: Arch Linux
Opened by Uli Schlachter (psychon) - Sunday, 26 September 2010, 21:08 GMT
Last edited by Jan de Groot (JGC) - Monday, 27 September 2010, 07:56 GMT
Task Type Feature Request
Category Packages: Testing
Status Closed
Assigned To Jan de Groot (JGC)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 4
Private No

Details

Hi,

basically, this is a dupe of the following bugs:
 FS#20785 
 FS#20792 
 FS#20868 
 FS#20914 

However, I have a better suggestion than just disabling the XCB backend. According to [1], the backend was disabled because it is buggy and its bug affects other apps that want to use the Xlib backend. These apps are affected because cairo uses the XCB code for the Xlib backend if both are enabled in newer versions.

There is a way to enable both backends again. The commit[2] that added the logic for replacing the Xlib backend made this conditional[3]:

CAIRO_ENABLE_FUNCTIONS(xlib_xcb, Xlib/XCB, no, [
if test "x$use_xcb" == "xyes" -a "x$use_xlib" == "xyes"; then
xlib_xcb_REQUIRES="x11-xcb"
PKG_CHECK_MODULES(xlib_xcb, $xlib_xcb_REQUIRES, ,
[use_xlib_xcb="no (requires $xlib_xcb_REQUIRES)"])
else
use_xlib_xcb="no (requires both --enable-xlib and --enable-xcb)"
fi
])
AM_CONDITIONAL(BUILD_XLIB_XCB, test "x$use_xlib_xcb" = "xyes")

Also, the summary at the end of configure prints a line like this[4]:

X11-xcb functions: yes/no


So, could you please add "--enable-xcb --disable-xlib_xcb" to the configure calls for cairo again?
I tried to mention this per mail previously, but it seems like my mail was lost.

Cheers,
Uli

[1] https://bugs.archlinux.org/task/20868#comment66223
[2] http://cgit.freedesktop.org/cairo/commit/?id=1236c41072a7966eda7db48a381fd0508e5289be
[3] http://cgit.freedesktop.org/cairo/diff/configure.ac?id=1236c41072a7966eda7db48a381fd0508e5289be
[4] http://cgit.freedesktop.org/cairo/diff/build/configure.ac.features?id=1236c41072a7966eda7db48a381fd0508e5289be
This task depends upon

Closed by  Jan de Groot (JGC)
Monday, 27 September 2010, 07:56 GMT
Reason for closing:  Won't implement
Additional comments about closing:  https://bugzilla.redhat.com/show_bug.cgi ?id=465759#c23

That comment in the redhat bugtracker says it all. I will not enable this backend until it is officially not experimental anymore.

Loading...