179 lines
4.4 KiB
Makefile
179 lines
4.4 KiB
Makefile
|
|
||
|
LIBRARY = cairo2
|
||
|
|
||
|
CC = gcc
|
||
|
CFLAGS = -c -O2 -ffast-math -Wall -Winline -Wno-attributes -fomit-frame-pointer
|
||
|
|
||
|
LD = ld
|
||
|
LDFLAGS = -shared -s -nostdlib -T ../newlib/dll.lds --entry _DllStartup --image-base=0 --output-def $(LIBRARY).orig.def --out-implib $(LIBRARY).dll.a
|
||
|
|
||
|
STRIP = $(PREFIX)strip
|
||
|
|
||
|
DEFINES = -U__WIN32__ -U_Win32 -U_WIN32 -U__MINGW32__ -U_MSC_VER -DHAVE_CONFIG_H=1 -DCAIRO_NO_MUTEX=1
|
||
|
|
||
|
INCLUDES = -I. -I../newlib/include -I../pixman -I../zlib -I../libpng -I../freetype/include
|
||
|
|
||
|
|
||
|
LIBPATH:= -L../../lib
|
||
|
|
||
|
LIBS:= -ldll -lgcc -lfreetype.dll -lz.dll -lpixman-1.dll -lpng16.dll -lc.dll
|
||
|
|
||
|
CAIRO_SOURCES = \
|
||
|
cairo.c \
|
||
|
cairo-analysis-surface.c \
|
||
|
cairo-arc.c \
|
||
|
cairo-array.c \
|
||
|
cairo-atomic.c \
|
||
|
cairo-base64-stream.c \
|
||
|
cairo-base85-stream.c \
|
||
|
cairo-bentley-ottmann.c \
|
||
|
cairo-bentley-ottmann-rectangular.c \
|
||
|
cairo-bentley-ottmann-rectilinear.c \
|
||
|
cairo-botor-scan-converter.c \
|
||
|
cairo-boxes.c \
|
||
|
cairo-boxes-intersect.c \
|
||
|
cairo-cache.c \
|
||
|
cairo-cff-subset.c \
|
||
|
cairo-clip.c \
|
||
|
cairo-clip-boxes.c \
|
||
|
cairo-clip-polygon.c \
|
||
|
cairo-clip-region.c \
|
||
|
cairo-clip-surface.c \
|
||
|
cairo-clip-tor-scan-converter.c \
|
||
|
cairo-color.c \
|
||
|
cairo-composite-rectangles.c \
|
||
|
cairo-compositor.c \
|
||
|
cairo-contour.c \
|
||
|
cairo-damage.c \
|
||
|
cairo-debug.c \
|
||
|
cairo-default-context.c \
|
||
|
cairo-deflate-stream.c \
|
||
|
cairo-device.c \
|
||
|
cairo-error.c \
|
||
|
cairo-fallback-compositor.c \
|
||
|
cairo-fixed.c \
|
||
|
cairo-font-face.c \
|
||
|
cairo-font-face-twin.c \
|
||
|
cairo-font-face-twin-data.c \
|
||
|
cairo-font-options.c \
|
||
|
cairo-freed-pool.c \
|
||
|
cairo-freelist.c \
|
||
|
cairo-ft-font.c \
|
||
|
cairo-gstate.c \
|
||
|
cairo-hash.c \
|
||
|
cairo-hull.c \
|
||
|
cairo-image-compositor.c \
|
||
|
cairo-image-info.c \
|
||
|
cairo-image-source.c \
|
||
|
cairo-image-surface.c \
|
||
|
cairo-lzw.c \
|
||
|
cairo-mask-compositor.c \
|
||
|
cairo-matrix.c \
|
||
|
cairo-mempool.c \
|
||
|
cairo-mesh-pattern-rasterizer.c \
|
||
|
cairo-misc.c \
|
||
|
cairo-mono-scan-converter.c \
|
||
|
cairo-mutex.c \
|
||
|
cairo-no-compositor.c \
|
||
|
cairo-observer.c \
|
||
|
cairo-output-stream.c \
|
||
|
cairo-paginated-surface.c \
|
||
|
cairo-path.c \
|
||
|
cairo-path-bounds.c \
|
||
|
cairo-path-fill.c \
|
||
|
cairo-path-fixed.c \
|
||
|
cairo-path-in-fill.c \
|
||
|
cairo-path-stroke.c \
|
||
|
cairo-path-stroke-boxes.c \
|
||
|
cairo-path-stroke-polygon.c \
|
||
|
cairo-path-stroke-traps.c \
|
||
|
cairo-path-stroke-tristrip.c \
|
||
|
cairo-pattern.c \
|
||
|
cairo-pdf-operators.c \
|
||
|
cairo-pdf-shading.c \
|
||
|
cairo-pen.c \
|
||
|
cairo-png.c \
|
||
|
cairo-polygon.c \
|
||
|
cairo-polygon-intersect.c \
|
||
|
cairo-polygon-reduce.c \
|
||
|
cairo-raster-source-pattern.c \
|
||
|
cairo-recording-surface.c \
|
||
|
cairo-rectangle.c \
|
||
|
cairo-rectangular-scan-converter.c \
|
||
|
cairo-region.c \
|
||
|
cairo-rtree.c \
|
||
|
cairo-scaled-font.c \
|
||
|
cairo-scaled-font-subsets.c \
|
||
|
cairo-script-surface.c \
|
||
|
cairo-shape-mask-compositor.c \
|
||
|
cairo-slope.c \
|
||
|
cairo-spans.c \
|
||
|
cairo-spans-compositor.c \
|
||
|
cairo-spline.c \
|
||
|
cairo-stroke-dash.c \
|
||
|
cairo-stroke-style.c \
|
||
|
cairo-surface.c \
|
||
|
cairo-surface-clipper.c \
|
||
|
cairo-surface-fallback.c \
|
||
|
cairo-surface-offset.c \
|
||
|
cairo-surface-snapshot.c \
|
||
|
cairo-surface-subsurface.c \
|
||
|
cairo-surface-wrapper.c \
|
||
|
cairo-svg-surface.c \
|
||
|
cairo-tor22-scan-converter.c \
|
||
|
cairo-tor-scan-converter.c \
|
||
|
cairo-toy-font-face.c \
|
||
|
cairo-traps.c \
|
||
|
cairo-traps-compositor.c \
|
||
|
cairo-tristrip.c \
|
||
|
cairo-truetype-subset.c \
|
||
|
cairo-type1-fallback.c \
|
||
|
cairo-type1-glyph-names.c \
|
||
|
cairo-type1-subset.c \
|
||
|
cairo-type3-glyph-surface.c \
|
||
|
cairo-unicode.c \
|
||
|
cairo-user-font.c \
|
||
|
cairo-version.c \
|
||
|
cairo-wideint.c \
|
||
|
$(NULL)
|
||
|
|
||
|
|
||
|
SOURCES= $(CAIRO_SOURCES)
|
||
|
|
||
|
OBJECTS = $(patsubst %.c, src/%.o, $(SOURCES))
|
||
|
|
||
|
|
||
|
# targets
|
||
|
|
||
|
|
||
|
all: $(LIBRARY).a $(LIBRARY).dll
|
||
|
|
||
|
|
||
|
$(LIBRARY).a: $(OBJECTS) Makefile
|
||
|
ar cvrs $(LIBRARY).a $(OBJECTS)
|
||
|
mv -f $(LIBRARY).a ../../static
|
||
|
|
||
|
|
||
|
$(LIBRARY).dll: $(OBJECTS) Makefile
|
||
|
$(LD) $(LDFLAGS) $(LIBPATH) -o $@ $(OBJECTS) $(LIBS)
|
||
|
$(STRIP) $@
|
||
|
sed -e "s/ @[^ ]*//" $(LIBRARY).orig.def > $(LIBRARY).def
|
||
|
sed -f ../newlib/cmd1.sed $(LIBRARY).def > mem
|
||
|
sed -f ../newlib/cmd2.sed mem >$(LIBRARY).inc
|
||
|
mv -f $@ ../../bin
|
||
|
mv -f $(LIBRARY).dll.a ../../lib
|
||
|
|
||
|
%.o : %.c
|
||
|
$(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $<
|
||
|
|
||
|
clean:
|
||
|
-rm -f */*.o
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|