[cairo-commit] Makefile.win32 src/cairo-features-win32.h src/Makefile.win32

Vladimir Vukicevic vladimir at kemper.freedesktop.org
Tue Aug 5 12:58:00 PDT 2008


 Makefile.win32             |   13 ++++++++++---
 src/Makefile.win32         |   20 ++++----------------
 src/cairo-features-win32.h |   40 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 54 insertions(+), 19 deletions(-)

New commits:
commit 924a242f89ab1d86750512c8e4ee367c270ee07a
Author: Vladimir Vukicevic <vladimir at pobox.com>
Date:   Tue Aug 5 12:57:51 2008 -0700

    [win32] Update win32 build, remove gcc dependency

diff --git a/Makefile.win32 b/Makefile.win32
index 4349cd8..d19c2aa 100644
--- a/Makefile.win32
+++ b/Makefile.win32
@@ -26,7 +26,7 @@ DEFAULT_CFLAGS += -DCAIRO_NO_MUTEX=1  -DLIBCAIRO_EXPORTS
 CFLAGS := $(DEFAULT_CFLAGS)
 
 CAIRO_VERSION_MAJOR = 1
-CAIRO_VERSION_MINOR = 5
+CAIRO_VERSION_MINOR = 7
 CAIRO_VERSION_MICRO = 1
 
 CAIRO_VERSION = $(CAIRO_VERSION_MAJOR).$(CAIRO_VERSION_MINOR).$(CAIRO_VERSION_MICRO)
@@ -40,16 +40,23 @@ TEST_SUBDIRS = boilerplate test
 
 all: inform cairo
 
+src/cairo-features.h:
+	@echo Warning: creating default cairo-features.h
+	@(cat src/cairo-features-win32.h | \
+	      sed 's, at CAIRO_VERSION_MAJOR@,'$(CAIRO_VERSION_MAJOR)',g' | \
+	      sed 's, at CAIRO_VERSION_MINOR@,'$(CAIRO_VERSION_MINOR)',g' | \
+	      sed 's, at CAIRO_VERSION_MICRO@,'$(CAIRO_VERSION_MICRO)',g' > src/cairo-features.h)
+
 cairo: src/cairo-features.h
 	@list='$(SUBDIRS)'; for f in $$list ; do \
 		echo making all in $$f... ; \
-		(cd $$f ; $(MAKE) -f Makefile.win32 CC="$(CC)" LINK="$(LINK)" OPT="$(OPT)" CFLAGS="$(CFLAGS)" PIXMAN_LIBS="$(PIXMAN_LIBS)") || exit 1 ; \
+		($(MAKE) -C $$f -f Makefile.win32) || exit 1 ; \
 	done
 
 test: cairo
 	@list='$(TEST_SUBDIRS)'; for f in $$list ; do \
 		echo making all in $$f... ; \
-		(cd $$f ; $(MAKE) -f Makefile.win32 CC="$(CC)" LINK="$(LINK)" OPT="$(OPT)" CFLAGS="$(CFLAGS)" PIXMAN_LIBS="$(PIXMAN_LIBS)") || exit 1 ; \
+		($(MAKE) -C $$f -f Makefile.win32) || exit 1 ; \
 	done
 	@(cd test ; make -f Makefile.win32 test)
 
diff --git a/src/Makefile.win32 b/src/Makefile.win32
index 3a5b916..5c14add 100644
--- a/src/Makefile.win32
+++ b/src/Makefile.win32
@@ -3,7 +3,6 @@ SUBMAKEFILE = 1
 
 include ../Makefile.win32
 
-DEFFILE = cairo.def
 srcdir = `pwd`
 
 SOURCES = \
@@ -55,12 +54,13 @@ SOURCES = \
 	cairo-truetype-subset.c \
 	cairo-type1-fallback.c \
 	cairo-unicode.c \
+	cairo-user-font.c \
+	cairo-type3-glyph-surface.c \
 	cairo-wideint.c \
 	cairo-win32-font.c \
 	cairo.c \
 	cairo-svg-surface.c \
 	cairo-ps-surface.c \
-	cairo-pdf-surface.c \
 	cairo-scaled-font-subsets.c \
 	cairo-paginated-surface.c \
 	cairo-analysis-surface.c \
@@ -91,20 +91,8 @@ all: inform $(CFG)/cairo.dll $(CFG)/cairo-static.lib
 static: inform $(CFG)/cairo-static.lib
 dynamic: inform $(CFG)/cairo.dll
 
-$(DEFFILE):
-	(echo EXPORTS; \
-	(cd $(srcdir); cat $(cairo_headers) || echo 'cairo_ERROR ()' ) | \
-	grep -v -E '^# *include' | \
-	( gcc -include cairo-features.h -E - || echo 'cairo_ERROR ()' ) | \
-	grep -E '^_?cairo_.* \(' | \
-	sed -e 's/[ 	].*//' | \
-	sort; \
-	echo LIBRARY cairo.dll; \
-	) >$@
-	@ ! grep -q cairo_ERROR $@ || ($(RM) $@; false)
-
-$(CFG)/cairo.dll: $(OBJECTS) $(SHARED_OBJECTS) $(DEFFILE)
-	$(CC) -MD -LD -Fe$@ $(PIXMAN_LIBS) $(OBJECTS) $(SHARED_OBJECTS) -link -DEF:$(DEFFILE) user32.lib gdi32.lib libpng.lib zdll.lib msimg32.lib
+$(CFG)/cairo.dll: $(OBJECTS) $(SHARED_OBJECTS)
+	$(CC) -MD -LD -Fe$@ $(PIXMAN_LIBS) $(OBJECTS) $(SHARED_OBJECTS) -link user32.lib gdi32.lib libpng.lib zdll.lib msimg32.lib
 
 $(CFG)/cairo-static.lib: $(OBJECTS) $(STATIC_OBJECTS)
 	lib -NOLOGO -OUT:$@ $(PIXMAN_LIBS) $(OBJECTS) $(STATIC_OBJECTS)
diff --git a/src/cairo-features-win32.h b/src/cairo-features-win32.h
new file mode 100644
index 0000000..21f9970
--- /dev/null
+++ b/src/cairo-features-win32.h
@@ -0,0 +1,40 @@
+#ifndef CAIRO_FEATURES_H
+#define CAIRO_FEATURES_H
+
+#if defined(__cplusplus)
+# define CAIRO_BEGIN_DECLS  extern "C" {
+# define CAIRO_END_DECLS    }
+#else
+# define CAIRO_BEGIN_DECLS
+# define CAIRO_END_DECLS
+#endif
+
+#ifndef cairo_public
+    #ifdef LIBCAIRO_EXPORTS
+        #define cairo_public __declspec(dllexport)
+    #else
+        #define cairo_public __declspec(dllimport)
+    #endif
+#endif
+
+#define CAIRO_VERSION_MAJOR @CAIRO_VERSION_MAJOR@
+#define CAIRO_VERSION_MINOR @CAIRO_VERSION_MINOR@
+#define CAIRO_VERSION_MICRO @CAIRO_VERSION_MICRO@
+
+#define CAIRO_VERSION_STRING "@CAIRO_VERSION_MAJOR at .@CAIRO_VERSION_MINOR at .@CAIRO_VERSION_MICRO@"
+
+#define HAVE_WINDOWS_H 1
+
+#define CAIRO_HAS_SVG_SURFACE 1
+#define CAIRO_HAS_PDF_SURFACE 1
+#define CAIRO_HAS_PS_SURFACE 1
+#define CAIRO_HAS_WIN32_SURFACE 1
+#define CAIRO_HAS_WIN32_FONT 1
+#define CAIRO_HAS_PNG_FUNCTIONS 1
+
+#define PACKAGE_NAME "cairo"
+#define PACKAGE_TARNAME "cairo"
+#define PACKAGE_STRING "cairo @CAIRO_VERSION_MAJOR at .@CAIRO_VERSION_MINOR at .@CAIRO_VERSION_MICRO@"
+
+#endif
+


More information about the cairo-commit mailing list