Compiling cairo with +qt4 causes the /usr/lib/pkg-config/cairo.pc file to include QtGui in Requires.private. This means that CFLAGS for QtGui are added to all packages building against cairo. This is completely unnecessary, the dependency that cairo +qt4 has on QtGui is for static linking only and thus that line should be removed and -L/usr/lib/qt4 -lQtGui -lQtCore should be added to Libs.private instead.
Sounds like a genuine upstream bug. Care to open a bug report in FreeDesktop's bugzilla? Thanks
scarab@arcarius: ~ $ equery files cairo |grep \.pc /usr/lib64/pkgconfig/cairo-egl.pc /usr/lib64/pkgconfig/cairo-fc.pc /usr/lib64/pkgconfig/cairo-ft.pc /usr/lib64/pkgconfig/cairo-gl.pc /usr/lib64/pkgconfig/cairo-glx.pc /usr/lib64/pkgconfig/cairo-gobject.pc /usr/lib64/pkgconfig/cairo-pdf.pc /usr/lib64/pkgconfig/cairo-png.pc /usr/lib64/pkgconfig/cairo-ps.pc /usr/lib64/pkgconfig/cairo-qt.pc /usr/lib64/pkgconfig/cairo-svg.pc /usr/lib64/pkgconfig/cairo-xcb-shm.pc /usr/lib64/pkgconfig/cairo-xcb.pc /usr/lib64/pkgconfig/cairo-xlib-xrender.pc /usr/lib64/pkgconfig/cairo-xlib.pc /usr/lib64/pkgconfig/cairo.pc scarab@arcarius: ~ $ cat /usr/lib64/pkgconfig/cairo.pc prefix=/usr exec_prefix=${prefix} libdir=/usr/lib64 includedir=${prefix}/include Name: cairo Description: Multi-platform 2D graphics library Version: 1.10.0 Requires.private: gobject-2.0 glib-2.0 pixman-1 >= 0.18.4 fontconfig >= 2.2.95 freetype2 >= 9.7.3 egl gl libpng QtGui >= 4.4.0 xcb-shm xcb >= 1.1.92 xcb-render >= 0.9.92 xrender >= 0.6 x11 Libs: -L${libdir} -lcairo Libs.private: -lz -lz -lGL Cflags: -I${includedir}/cairo Cant reproduce with full blown cairo...
erm can :P not cant :)
What do you mean can't reproduce? The entry: QtGui >= 4.4.0 appears in the Requires.private line that you posted.
spatz is maintaining this now.
If this is still an issue with 1.12.2, then please open a bug report upstream, as suggest in comment #1.