cairo/src/Makefile.win32
Dan Amelang 01a133167c Update Win32 makefiles
Since the last time these makefiles were last updated some new source
files have been added and one renamed. In addition, a "clean" rule
needed to be added to the pixman makefile. And the "clean" rule in the
main cairo makefile wasn't working properly for me.
2007-02-13 16:53:12 -08:00

112 lines
2.5 KiB
Text

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-bentley-ottmann.c \
cairo-cache.c \
cairo-clip.c \
cairo-color.c \
cairo-debug.c \
cairo-deflate-stream.c \
cairo-fixed.c \
cairo-font-options.c \
cairo-font.c \
cairo-freelist.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-fixed.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-skiplist.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 *.dll *.lib *.pdb *.ilk || exit 0