CC = cl LINK = link CFLAGS = /MD /Zi /nologo /O2 /c /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /I../pixman/src /I. /DPACKAGE_VERSION="" /DPACKAGE_BUGREPORT="" /DCAIRO_BUILD DEFFILE = cairo.def srcdir = `pwd` SOURCES = \ cairo-arc.c \ cairo-array.c \ cairo-cache.c \ cairo-clip.c \ cairo-color.c \ cairo-debug.c \ cairo-fixed.c \ cairo-font-options.c \ cairo-font.c \ cairo-gstate.c \ cairo-hash.c \ cairo-hull.c \ cairo-image-surface.c \ cairo-lzw.c \ cairo-matrix.c \ cairo-meta-surface.c \ cairo-output-stream.c \ cairo-operator.c \ cairo-path-bounds.c \ cairo-path-data.c \ cairo-path-fill.c \ cairo-path-stroke.c \ cairo-path.c \ cairo-pattern.c \ cairo-pen.c \ cairo-polygon.c \ cairo-png.c \ cairo-rectangle.c \ cairo-region.c \ cairo-scaled-font.c \ cairo-slope.c \ cairo-spline.c \ cairo-stroke-style.c \ cairo-surface-fallback.c \ cairo-surface.c \ cairo-traps.c \ cairo-cff-subset.c \ cairo-truetype-subset.c \ cairo-type1-fallback.c \ cairo-unicode.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 \ cairo-base85-stream.c \ $(NULL) STATIC_SOURCES = cairo-win32-surface.c cairo_headers = \ cairo.h \ cairo-pdf.h \ cairo-ps.h \ cairo-svg.h \ cairo-win32.h \ cairo-pdf-test.h \ cairo-ps-test.h \ cairo-scaled-font-test.h \ cairo-svg-test.h \ $(NULL) OBJECTS = $(subst .c,.obj,$(SOURCES)) SHARED_OBJECTS = $(subst .c,.obj,$(STATIC_SOURCES)) STATIC_OBJECTS = $(subst .c,-static.obj,$(STATIC_SOURCES)) all: cairo.dll cairo-static.lib %.obj: %.c @$(CC) $(CFLAGS) /Fo"$@" $< %-static.obj: %.c @$(CC) $(CFLAGS) /DCAIRO_WIN32_STATIC_BUILD=1 /Fo"$@" $< $(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) cairo.dll: $(OBJECTS) $(SHARED_OBJECTS) $(DEFFILE) $(CC) /MD /Zi /LD /Fe$@ ../pixman/src/pixman.lib $(OBJECTS) $(SHARED_OBJECTS) /link /DEF:$(DEFFILE) user32.lib gdi32.lib libpng.lib zlib.lib cairo-static.lib: $(OBJECTS) $(STATIC_OBJECTS) lib /NOLOGO /OUT:$@ ../pixman/src/pixman.lib $(OBJECTS) $(STATIC_OBJECTS) clean: @rm -f *.obj || rm -f *.dll || rm -f *.lib || rm -f *.exe || rm -f *.exe.manifest || rm -f *.pdb || rm -f *.ilk || exit 0