Subversion Repositories Kolibri OS

Rev

Rev 4819 | Rev 4930 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
4349 Serge 1
LIBRARY = cairo2
2
 
4866 Serge 3
CC = kos32-gcc
4
AR = kos32-ar
5
LD = kos32-ld
6
STRIP = kos32-strip
7
 
4349 Serge 8
CFLAGS = -c -O2 -ffast-math -Wall -Winline -Wno-attributes -fomit-frame-pointer
9
 
4866 Serge 10
LDFLAGS = -shared -s -nostdlib -T ../newlib/dll.lds --entry _DllStartup --image-base=0 --version-script cairo.ver --output-def $(LIBRARY).orig.def
11
LDFLAGS+= --out-implib lib$(LIBRARY).dll.a
4349 Serge 12
 
4866 Serge 13
ARFLAGS = crs
4349 Serge 14
 
15
DEFINES = -U__WIN32__ -U_Win32 -U_WIN32 -U__MINGW32__ -U_MSC_VER -DHAVE_CONFIG_H=1 -DCAIRO_NO_MUTEX=1
16
 
17
INCLUDES = -I. -I../newlib/include -I../pixman -I../zlib -I../libpng -I../freetype/include
18
 
4866 Serge 19
LIBPATH:= -L../../lib -L/home/autobuild/tools/win32/mingw32/lib
4349 Serge 20
 
21
LIBS:=  -ldll -lgcc -lfreetype.dll -lz.dll -lpixman-1.dll -lpng16.dll -lc.dll
22
 
23
CAIRO_SOURCES =					\
24
	cairo.c 				\
25
	cairo-analysis-surface.c		\
26
	cairo-arc.c 				\
27
	cairo-array.c 				\
28
	cairo-atomic.c 				\
29
	cairo-base64-stream.c 			\
30
	cairo-base85-stream.c 			\
31
	cairo-bentley-ottmann.c 		\
32
	cairo-bentley-ottmann-rectangular.c 	\
33
	cairo-bentley-ottmann-rectilinear.c 	\
34
	cairo-botor-scan-converter.c 		\
35
	cairo-boxes.c 				\
36
	cairo-boxes-intersect.c			\
37
	cairo-cache.c 				\
38
	cairo-cff-subset.c			\
39
	cairo-clip.c 				\
40
	cairo-clip-boxes.c			\
41
	cairo-clip-polygon.c			\
42
	cairo-clip-region.c			\
43
	cairo-clip-surface.c			\
44
	cairo-clip-tor-scan-converter.c		\
45
	cairo-color.c 				\
46
	cairo-composite-rectangles.c 		\
47
	cairo-compositor.c			\
48
	cairo-contour.c				\
49
	cairo-damage.c				\
50
	cairo-debug.c				\
51
	cairo-default-context.c			\
52
	cairo-deflate-stream.c			\
53
	cairo-device.c 				\
54
	cairo-error.c				\
55
	cairo-fallback-compositor.c		\
56
	cairo-fixed.c 				\
57
	cairo-font-face.c 			\
58
	cairo-font-face-twin.c 			\
59
	cairo-font-face-twin-data.c 		\
60
	cairo-font-options.c 			\
61
	cairo-freed-pool.c 			\
62
	cairo-freelist.c 			\
63
	cairo-ft-font.c				\
64
	cairo-gstate.c 				\
65
	cairo-hash.c 				\
66
	cairo-hull.c 				\
67
	cairo-image-compositor.c		\
68
	cairo-image-info.c 			\
69
	cairo-image-source.c			\
70
	cairo-image-surface.c 			\
71
	cairo-lzw.c 				\
72
	cairo-mask-compositor.c			\
73
	cairo-matrix.c 				\
74
	cairo-mempool.c				\
75
	cairo-mesh-pattern-rasterizer.c		\
76
	cairo-misc.c 				\
77
	cairo-mono-scan-converter.c		\
78
	cairo-mutex.c 				\
79
	cairo-no-compositor.c			\
80
	cairo-observer.c 			\
81
	cairo-output-stream.c 			\
82
	cairo-paginated-surface.c 		\
83
	cairo-path.c 				\
84
	cairo-path-bounds.c 			\
85
	cairo-path-fill.c 			\
86
	cairo-path-fixed.c 			\
87
	cairo-path-in-fill.c 			\
88
	cairo-path-stroke.c 			\
89
	cairo-path-stroke-boxes.c		\
90
	cairo-path-stroke-polygon.c		\
91
	cairo-path-stroke-traps.c		\
92
	cairo-path-stroke-tristrip.c		\
93
	cairo-pattern.c				\
94
	cairo-pdf-operators.c			\
95
	cairo-pdf-shading.c			\
96
	cairo-pen.c 				\
97
	cairo-png.c				\
98
	cairo-polygon.c 			\
99
	cairo-polygon-intersect.c		\
100
	cairo-polygon-reduce.c			\
101
	cairo-raster-source-pattern.c		\
102
	cairo-recording-surface.c		\
103
	cairo-rectangle.c			\
104
	cairo-rectangular-scan-converter.c	\
105
	cairo-region.c				\
106
	cairo-rtree.c				\
107
	cairo-scaled-font.c			\
108
	cairo-scaled-font-subsets.c		\
109
	cairo-script-surface.c			\
110
	cairo-shape-mask-compositor.c		\
111
	cairo-slope.c				\
112
	cairo-spans.c				\
113
	cairo-spans-compositor.c		\
114
	cairo-spline.c				\
115
	cairo-stroke-dash.c			\
116
	cairo-stroke-style.c			\
117
	cairo-surface.c				\
118
	cairo-surface-clipper.c			\
119
	cairo-surface-fallback.c		\
120
	cairo-surface-offset.c			\
121
	cairo-surface-snapshot.c		\
122
	cairo-surface-subsurface.c		\
123
	cairo-surface-wrapper.c			\
124
	cairo-svg-surface.c			\
125
	cairo-tor22-scan-converter.c		\
126
	cairo-tor-scan-converter.c		\
127
	cairo-toy-font-face.c			\
128
	cairo-traps.c				\
129
	cairo-traps-compositor.c		\
130
	cairo-tristrip.c			\
131
	cairo-truetype-subset.c			\
132
	cairo-type1-fallback.c			\
133
	cairo-type1-glyph-names.c		\
134
	cairo-type1-subset.c			\
135
	cairo-type3-glyph-surface.c		\
136
	cairo-unicode.c				\
137
	cairo-user-font.c			\
138
	cairo-version.c				\
139
	cairo-wideint.c				\
140
	$(NULL)
141
 
142
 
143
SOURCES= $(CAIRO_SOURCES)
144
 
145
OBJECTS =  $(patsubst %.c, src/%.o, $(SOURCES))
146
 
4367 Serge 147
ifeq ($(findstring ebox,$(MAKECMDGOALS)),ebox)
148
CFLAGS+=-march=pentium-mmx
149
endif
4349 Serge 150
 
151
# targets
152
 
153
 
4819 Serge 154
all: lib$(LIBRARY).a $(LIBRARY).dll
4349 Serge 155
 
4819 Serge 156
ebox: lib$(LIBRARY).a $(LIBRARY).dll
4349 Serge 157
 
4819 Serge 158
lib$(LIBRARY).a: $(OBJECTS) Makefile
4866 Serge 159
	$(AR) $(ARFLAGS) lib$(LIBRARY).a $(OBJECTS)
4819 Serge 160
	mv -f lib$(LIBRARY).a ../../lib
4349 Serge 161
 
162
 
163
$(LIBRARY).dll: $(OBJECTS) Makefile
164
	$(LD) $(LDFLAGS) $(LIBPATH) -o $@ $(OBJECTS) $(LIBS)
4866 Serge 165
	#sed -e "s/ @[^ ]*//" $(LIBRARY).orig.def > $(LIBRARY).def
166
	#sed -f ../newlib/cmd1.sed $(LIBRARY).def > mem
167
	#sed -f ../newlib/cmd2.sed mem >$(LIBRARY).inc
4349 Serge 168
	mv -f $@ ../../bin
4819 Serge 169
	mv -f lib$(LIBRARY).dll.a ../../lib
4349 Serge 170
 
171
%.o : %.c
172
	$(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $<
173
 
174
clean:
175
	-rm -f */*.o
176
 
177
 
178