[cairo-commit] cairo/src Makefile.am, 1.70, 1.71 cairo-beos-surface.cpp, NONE, 1.1 cairo-beos.h, NONE, 1.1 cairo-features.h.in, 1.23, 1.24 cairoint.h, 1.234, 1.235

Christian Biesinger commit at pdx.freedesktop.org
Sun Dec 18 17:20:08 PST 2005


Committed by: biesi

Update of /cvs/cairo/cairo/src
In directory gabe:/tmp/cvs-serv28271/src

Modified Files:
	Makefile.am cairo-features.h.in cairoint.h 
Added Files:
	cairo-beos-surface.cpp cairo-beos.h 
Log Message:
2005-12-19  Christian Biesinger  <cbiesinger at web.de>

  * INSTALL: Mention new --enable-svg option
  * README: Add notes for the new BeOS backend
  * configure.in: Add disabled by default BeOS backend
  * src/Makefile.am: Add BeOS files
  * src/cairo-beos-surface.cpp: New
  * src/cairo-beos.h: New
  * src/cairo-features.h.in: BEOS_SURFACE_FEATURE
  * src/cairoint.h: BeOS mutex functions
  * test/.cvsignore: Ignore files generates by the BeOS tests
  * test/Makefile.am: Add cairo-test-beos.*
  * test/cairo-test-beos.cpp: New. (Must be a C++ file, hence not part of
  cairo-test.c)
  * test/cairo-test-beos.h: New.
  * test/cairo-test.c: (cairo_test_expecting): Test BeOS backend.


Index: Makefile.am
===================================================================
RCS file: /cvs/cairo/cairo/src/Makefile.am,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -d -r1.70 -r1.71
--- Makefile.am	16 Dec 2005 19:31:11 -0000	1.70
+++ Makefile.am	19 Dec 2005 01:20:06 -0000	1.71
@@ -50,6 +50,12 @@
 libcairo_win32_sources += cairo-win32-font.c
 endif
 
+libcairo_beos_sources =
+if CAIRO_HAS_BEOS_SURFACE
+libcairo_beos_headers = cairo-beos.h
+libcairo_beos_sources += cairo-beos-surface.cpp
+endif
+
 if CAIRO_HAS_GLITZ_SURFACE
 libcairo_glitz_headers = cairo-glitz.h
 libcairo_glitz_sources = cairo-glitz-surface.c
@@ -102,6 +108,7 @@
 	$(libcairo_ps_headers)		\
 	$(libcairo_quartz_headers)	\
 	$(libcairo_win32_headers)	\
+	$(libcairo_beos_headers)	\
 	$(libcairo_xcb_headers)		\
 	$(libcairo_xlib_headers)
 
@@ -167,9 +174,13 @@
 	$(libcairo_xcb_sources)			\
 	$(libcairo_glitz_sources)		\
 	$(libcairo_win32_sources)		\
+	$(libcairo_beos_sources)		\
 	cairoint.h
 
 libcairo_la_LDFLAGS = -version-info @VERSION_INFO@ -no-undefined $(export_symbols)
+# this -Wno-multichar line is really just for the beos surface, because the
+# system headers trigger this warning.
+libcairo_la_CXXFLAGS = -Wno-multichar
 
 INCLUDES = -I$(srcdir) -I$(top_srcdir)/pixman/src $(CAIRO_CFLAGS)
 

--- NEW FILE: cairo-beos-surface.cpp ---
(This appears to be a binary file; contents omitted.)

--- NEW FILE: cairo-beos.h ---
(This appears to be a binary file; contents omitted.)

Index: cairo-features.h.in
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-features.h.in,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- cairo-features.h.in	8 Dec 2005 21:09:27 -0000	1.23
+++ cairo-features.h.in	19 Dec 2005 01:20:06 -0000	1.24
@@ -69,6 +69,8 @@
 
 @WIN32_SURFACE_FEATURE@
 
+ at BEOS_SURFACE_FEATURE@
+
 @GLITZ_SURFACE_FEATURE@
 
 @FT_FONT_FEATURE@

Index: cairoint.h
===================================================================
RCS file: /cvs/cairo/cairo/src/cairoint.h,v
retrieving revision 1.234
retrieving revision 1.235
diff -u -d -r1.234 -r1.235
--- cairoint.h	19 Dec 2005 00:37:14 -0000	1.234
+++ cairoint.h	19 Dec 2005 01:20:06 -0000	1.235
@@ -150,6 +150,17 @@
 # define CAIRO_MUTEX_UNLOCK(name) LeaveCriticalSection (&name)
 #endif
 
+#if !defined(CAIRO_MUTEX_DECLARE) && defined CAIRO_HAS_BEOS_SURFACE
+cairo_private void _cairo_beos_lock(void*);
+cairo_private void _cairo_beos_unlock(void*);
+  /* the real initialization takes place in a global constructor */
+# define CAIRO_MUTEX_DECLARE(name) extern void* name; 
+# define CAIRO_MUTEX_DECLARE_GLOBAL(name) extern void* name;
+# define CAIRO_MUTEX_LOCK(name) _cairo_beos_lock (&name)
+# define CAIRO_MUTEX_UNLOCK(name) _cairo_beos_unlock (&name)
+#endif
+
+
 #ifndef CAIRO_MUTEX_DECLARE
 # error "No mutex declarations. Cairo will not work with multiple threads." \
 	"(Remove this #error directive to acknowledge & accept this limitation)."



More information about the cairo-commit mailing list