[cairo] Recommendations for 1.4.0
Behdad Esfahbod
behdad at behdad.org
Mon Mar 5 10:37:42 PST 2007
On Sat, 2007-03-03 at 22:45 -0800, Dave Yeo wrote:
> On Sat, 03 Mar 2007 16:13:20 -0500, Behdad Esfahbod wrote:
>
> > - Fix mutex initialization in win32, os2, and beos backends. They are
> >out of synch with the actually mutexes declared, and that causes link
> >errors if not using pthread on win32. I'm wondering if we should go for
> >the backup plan:
> >
> >http://lists.freedesktop.org/archives/cairo/2007-February/009679.html
>
> Ok, I tried compiling and doing a make check on 1.3.16. First problem
> is that in test/makefile.am we need this patch
>
> --- Makefile.am.bak Fri Mar 2 21:04:02 2007
> +++ Makefile.am Sat Mar 3 22:24:54 2007
> @@ -465,7 +465,7 @@
> LDADD += -lpthread
> endif
>
> -SUPPORT_PROGS += imagediff png-flatten
> +SUPPORT_PROGS += imagediff$(EXEEXT) png-flatten$(EXEEXT)
>
> if CAIRO_CAN_TEST_PDF_SURFACE
> SUPPORT_PROGS += pdf2png
>
> please apply. Actually looking at above pdf2png should also have
> $(EXEEXT) added.
Fixed. Thanks.
> Anyways make check then ends with this
> f:/usr/bin/sh.exe ../libtool --tag=CC --mode=link gcc.exe -g -O2 -o
> imagediff.exe imagediff.o libcairotest.la -lpthread -lm
> gcc.exe -g -O2 -o imagediff.exe imagediff.o
> ./.libs/cairotest.a -L/usr/local/lib
> /usr/src/cairo-1.3.16/src/.libs/cairo.a
> /usr/local/lib/libfontconfig_dll.a /usr/local/lib/libfreetype_dll.a
> /usr/local/lib/expat.a /usr/local/lib/libpng12_dll.a -lz
> -lpthread -lm -L/usr/local/lib -L/usr/local/lib
> cairo-font.c:96
> (/usr/src/cairo-1.3.16/src/.libs/cairo.a(cairo-font.o)): Undefined
> symbol _cairo_font_face_mutex referenced from text segment
> cairo-font.c:104
> (/usr/src/cairo-1.3.16/src/.libs/cairo.a(cairo-font.o)): Undefined
> symbol _cairo_font_face_mutex referenced from text segment
> ...
> cairo-font.c:0 (/usr/src/cairo-1.3.16/src/.libs/cairo.a(cairo-font.o)):
> More undefined symbol _cairo_font_face_mutex refs follow
> make[3]: *** [imagediff.exe] Error 1
>
> which I take is the mutex problem referred above
> Dave
> ps also something needs to be done about pthread on OS/2, I usually
> edit config.h to comment out
> #define HAVE_PTHREAD_H 1
> in config.h
> A better fix would be along the lines of win32 where you can have or
> not have pthreads. Or perhaps a configure option.
> pps also here configure has to be called with --enable-os2
> --disable-xlib, not a big deal but xlib needs an older libc (EMX) and
> is not compatible with the newer libc (klibc).
I'm planning on adding a --without-pthread for those cases.
--
behdad
http://behdad.org/
"Those who would give up Essential Liberty to purchase a little
Temporary Safety, deserve neither Liberty nor Safety."
-- Benjamin Franklin, 1759
More information about the cairo
mailing list