GNOME Bugzilla – Bug 614055
[cairo] Make SVG/PDF/PS surfaces optional
Last modified: 2010-03-26 21:47:16 UTC
Hi, I try to build gjs 0.6 with cairo 1.8.10 : ... /usr/lib/libgobject-2.0.so /usr/lib/libgthread-2.0.so -lrt /usr/lib/libglib-2.0.so -lmozjs -lplds4 -lplc4 -lnspr4 -lpthread -ldl -pthread -pthread -pthread -march=x86-64 -mtune=generic -Wl,-z -Wl,defs -Wl,--hash-style=both -Wl,--export-dynamic -pthread -pthread -Wl,--export-dynamic -pthread -pthread -Wl,-soname -Wl,cairoNative.so -o .libs/cairoNative.so .libs/cairoNative_la-cairo-surface.o: In function `gjs_cairo_surface_from_surface': cairo-surface.c:(.text+0x2d9): undefined reference to `gjs_cairo_svg_surface_from_surface' collect2: ld returned 1 exit status make[1]: *** [cairoNative.la] Error 1 make[1]: Leaving directory `/var/tmp/fst/src/gjs-0.6' make: *** [all] Error 2 bye
Created attachment 157223 [details] [review] [cairo] Make SVG/PDF/PS surfaces optional The conditional compilation for SVG/PDF/PS surface support were not quite working, make sure that the gjs_cairo_surface_from_XXX are always available even if cairo doesn't support it so a nice exception is raised when an application tries to use a surface which isn't supported in either cairo or gjs. Fixes
Review of attachment 157223 [details] [review]: Looks fine, though I would tend towards erroring out in configure unless --disable-cairo-surfaces=pdf is explicitly specified or something.
Hi Thanks for all the patch works fine
(In reply to comment #2) > Review of attachment 157223 [details] [review]: > > Looks fine, though I would tend towards erroring out in configure unless > --disable-cairo-surfaces=pdf is explicitly specified or something. Yeah, perhaps configure should mention which surfaces that are available in cairo. But I think that's another bug. Thanks
The following fix has been pushed: 179b0c4 [cairo] Make SVG/PDF/PS surfaces optional
Created attachment 157226 [details] [review] [cairo] Make SVG/PDF/PS surfaces optional The conditional compilation for SVG/PDF/PS surface support were not quite working, make sure that the gjs_cairo_surface_from_XXX are always available even if cairo doesn't support it so a nice exception is raised when an application tries to use a surface which isn't supported in either cairo or gjs. Fixes