[cairo] Re: Sorry I broke the text tests! (and status update)

Dave Yeo daveryeo at telus.net
Sun Mar 4 14:34:30 PST 2007


On Sun, 04 Mar 2007 15:44:34 +0100, Mathias Hasselmann wrote:

>Ok, so here there is a first patch. Followed the path of
>CAIRO_MUTEX_INITIALIZE() in every potential entry point. Only
>difference: CAIRO_MUTEX_INITIALIZE() also invokes code on pthread
>platforms as I wanted to keep handling of CAIRO_MUTEX_DECLARE simple. 
>If that minimal performance penalty is not acceptable, I can change
>that.
>
>Compile-tested the changes with following feature sets:
>
>
>Not tested: XCB, OS/2, BeOS
>

Quickly tested on OS/2 with
#define CAIRO_HAS_SVG_SURFACE 1
#define CAIRO_HAS_PDF_SURFACE 1
#define CAIRO_HAS_PS_SURFACE 1
#define CAIRO_HAS_FT_FONT 1
#define CAIRO_HAS_PNG_FUNCTIONS 1
#define CAIRO_HAS_OS2_SURFACE 1

and got these errors
 gcc.exe -Zdll .libs/cairoDi.dll.def   .libs/cairo.o .libs/cairo-arc.o .libs/cairo-array.o .libs/cairo-base85-stream.o .libs/cairo-bentley-ottmann.o .libs/cairo-cache.o .libs/cairo-clip.o .libs/cairo-color.o .libs/cairo-debug.o .libs/cairo-deflate-stream.o .libs/cairo-fixed.o .libs/cairo-font.o .libs/cairo-font-options.o .libs/cairo-freelist.o .libs/cairo-gstate.o .libs/cairo-hash.o .libs/cairo-hull.o .libs/cairo-image-surface.o .libs/cairo-lzw.o .libs/cairo-matrix.o .libs/cairo-mutex.o .libs/cairo-operator.o .libs/cairo-path.o .libs/cairo-path-bounds.o .libs/cairo-path-fill.o .libs/cairo-path-fixed.o .libs/cairo-path-stroke.o .libs/cairo-pen.o .libs/cairo-polygon.o .libs/cairo-rectangle.o .libs/cairo-region.o .libs/cairo-scaled-font.o .libs/cairo-skiplist.o .libs/cairo-slope.o .libs/cairo-spline.o .libs/cairo-stroke-style.o .libs/cairo-surface.o .libs/cairo-surface-fallback.o .libs/cairo-traps.o .libs/cairo-pattern.o .libs/cairo-unicode.o .libs/cairo-output-stream.o .libs/cairo-wideint.o .libs/cairo-meta-su
rface.o .libs/cairo-paginated-surface.o .libs/cairo-analysis-surface.o .libs/cairo-ft-font.o .libs/cairo-ps-surface.o .libs/cairo-pdf-surface.o .libs/cairo-png.o .libs/cairo-svg-surface.o .libs/cairo-cff-subset.o .libs/cairo-truetype-subset.o .libs/cairo-type1-fallback.o .libs/cairo-scaled-font-subsets.o .libs/cairo-type1-subset.o .libs/cairo-os2-surface.o .libs/libcairo.lax/libpixman_s.a/fbcompose.o  .libs/libcairo.lax/libpixman_s.a/fbedge.o  .libs/libcairo.lax/libpixman_s.a/fbpict.o  .libs/libcairo.lax/libpixman_s.a/fbtrap.o  .libs/libcairo.lax/libpixman_s.a/icblt.o  .
libs/libcairo.lax/libpixman_s.a/icbltone.o  .libs/libcairo.lax/libpixman_s.a/iccolor.o  .libs/libcairo.lax/libpixman_s.a/icformat.o  .libs/libcairo.lax/libpixman_s.a/icimage.o  .libs/libcairo.lax/libpixman_s.a/icpixels.o  .libs/libcairo.lax/libpixman_s.a/icrect.o  .libs/libcairo.lax/libpixman_s.a/icstipple.o  .libs/libcairo.lax/libpixman_s.a/ictransform.o  .libs/libcairo.lax/libpixman_s.a/ictrap.o  .libs/libcairo.lax/libpixman_s.a/ictri.o  .libs/libcairo.lax/libpixman_s.a/icutil.o  .libs/libcairo.lax/libpixman_s.a/pixregion.o  .libs/libcairo.lax/libpixman_s.a/renderedge.o    -L/usr/local/lib /usr/local/lib/libfreetype_dll.a /usr/local/lib/libfontconfig_dll.a /usr/local/lib/libpng12_dll.a -lz    -o .libs/cairoDi.dll
I:/usr/i386-pc-os2-emx/bin/ld.exe: symbol `_cairo_scaled_font_map_mutex' defined more than once in .libs/cairo-os2-surface.o
make[2]: *** [libcairo.la] Error 1

 gcc.exe -Zdll .libs/cairoDi.dll.def   .libs/cairo.o .libs/cairo-arc.o .libs/cairo-array.o .libs/cairo-base85-stream.o .libs/cairo-bentley-ottmann.o .libs/cairo-cache.o .libs/cairo-clip.o .libs/cairo-color.o .libs/cairo-debug.o .libs/cairo-deflate-stream.o .libs/cairo-fixed.o .libs/cairo-font.o .libs/cairo-font-options.o .libs/cairo-freelist.o .libs/cairo-gstate.o .libs/cairo-hash.o .libs/cairo-hull.o .libs/cairo-image-surface.o .libs/cairo-lzw.o .libs/cairo-matrix.o .libs/cairo-mutex.o .libs/cairo-operator.o .libs/cairo-path.o .libs/cairo-path-bounds.o .libs/cairo-path-fill.o .libs/cairo-path-fixed.o .libs/cairo-path-stroke.o .libs/cairo-pen.o .libs/cairo-polygon.o .libs/cairo-rectangle.o .libs/cairo-region.o .libs/cairo-scaled-font.o .libs/cairo-skiplist.o .libs/cairo-slope.o .libs/cairo-spline.o .libs/cairo-stroke-style.o .libs/cairo-surface.o .libs/cairo-surface-fallback.o .libs/cairo-traps.o .libs/cairo-pattern.o .libs/cairo-unicode.o .libs/cairo-output-stream.o .libs/cairo-wideint.o .libs/cairo-meta-su
rface.o .libs/cairo-paginated-surface.o .libs/cairo-analysis-surface.o .libs/cairo-ft-font.o .libs/cairo-ps-surface.o .libs/cairo-pdf-surface.o .libs/cairo-png.o .libs/cairo-svg-surface.o .libs/cairo-cff-subset.o .libs/cairo-truetype-subset.o .libs/cairo-type1-fallback.o .libs/cairo-scaled-font-subsets.o .libs/cairo-type1-subset.o .libs/cairo-os2-surface.o .libs/libcairo.lax/libpixman_s.a/fbcompose.o  .libs/libcairo.lax/libpixman_s.a/fbedge.o  .libs/libcairo.lax/libpixman_s.a/fbpict.o  .libs/libcairo.lax/libpixman_s.a/fbtrap.o  .libs/libcairo.lax/libpixman_s.a/icblt.o  .
libs/libcairo.lax/libpixman_s.a/icbltone.o  .libs/libcairo.lax/libpixman_s.a/iccolor.o  .libs/libcairo.lax/libpixman_s.a/icformat.o  .libs/libcairo.lax/libpixman_s.a/icimage.o  .libs/libcairo.lax/libpixman_s.a/icpixels.o  .libs/libcairo.lax/libpixman_s.a/icrect.o  .libs/libcairo.lax/libpixman_s.a/icstipple.o  .libs/libcairo.lax/libpixman_s.a/ictransform.o  .libs/libcairo.lax/libpixman_s.a/ictrap.o  .libs/libcairo.lax/libpixman_s.a/ictri.o  .libs/libcairo.lax/libpixman_s.a/icutil.o  .libs/libcairo.lax/libpixman_s.a/pixregion.o  .libs/libcairo.lax/libpixman_s.a/renderedge.o    -L/usr/local/lib /usr/local/lib/libfreetype_dll.a /usr/local/lib/libfontconfig_dll.a /usr/local/lib/libpng12_dll.a -lz    -o .libs/cairoDi.dll
I:/usr/i386-pc-os2-emx/bin/ld.exe: symbol `_cairo_ft_unscaled_font_map_mutex' defined more than once in .libs/cairo-os2-surface.o
make[2]: *** [libcairo.la] Error 1

I got the compile to finish by removing these from cairo-os2-surface.c (see attached diff).
Not sure if this is good way to do this or not
Dave

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/octet-stream
Size: 704 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/cairo/attachments/20070304/671f9ee7/attachment.obj


More information about the cairo mailing list