2 !INCLUDE $(TOP)/glib/build/win32/make.msc
8 # Possibly override Pango version from build/win32/module.defs
10 PANGO_MODULE_VERSION = 1.6.0
12 # INCLUDES = -I .. -I .
14 # DEFINES = -DPACKAGE=\"Pango\" -DVERSION=\"$(PANGO_VER)\"
15 # DEPCFLAGS = $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) $(FREETYPE2_CFLAGS)
19 DLLS = pango pangowin32 pangoft2 pangocairo # pangox
20 EXES = querymodules testfonts
21 #? test1 test2 test3 test4 test5
28 for %d in ($(DLLS)) do nmake -nologo -f makefile.msc sub-one-dll THIS=%d
29 for %d in ($(DLLS)) do nmake -nologo -f makefile.msc sub-one-lib THIS=%d
30 for %d in ($(EXES)) do nmake -nologo -f makefile.msc sub-one-exe THIS=%d
33 nmake -nologo -f makefile.msc $(THIS)-$(PANGO_VER)s.lib PACKAGE=$(THIS) OBJS_$(THIS)=1
36 nmake -nologo -f makefile.msc lib$(THIS)-$(PANGO_VER)-0.dll PACKAGE=$(THIS) OBJS_$(THIS)=1
39 nmake -nologo -f makefile.msc $(THIS).exe PACKAGE=$(THIS) OBJS_$(THIS)=1
44 PKG_VER = $(PANGO_VER)
45 PKG_DEF = $(PACKAGE).def
47 PKG_CFLAGS = -FImsvc_recommended_pragmas.h -I.. -I. -I$(PRJ_TOP) \
48 -DPACKAGE=\"Pango\" -DVERSION=\"$(PANGO_VER)\" \
49 -DPANGO_ENABLE_BACKEND -DPANGO_ENABLE_ENGINE \
50 -DMODULE_VERSION=\"$(PANGO_MODULE_VERSION)\" \
51 $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) \
52 $(X11_CFLAGS) -DSYSCONFDIR=\"/etc\" \
59 # don't link with itself
60 PKG_LINK = $(GLIB_LIBS) $(FONTCONFIG_LIBS)
63 !IFDEF OBJS_pangowin32
64 PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \
65 pango-$(PANGO_VER).lib
69 PKG_CFLAGS = $(PKG_CFLAGS) $(FREETYPE2_CFLAGS) $(FONTCONFIG_CFLAGS) \
70 -DPANGO_MODULE_PREFIX=_pango_basic_ft2
72 PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) $(FREETYPE2_LIBS) $(FONTCONFIG_LIBS) \
73 pango-$(PANGO_VER).lib opentype\pango-ot.lib
77 PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \
78 pango-$(PANGO_VER).lib $(X11_LIBS)
81 !IFDEF OBJS_pangocairo
82 PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \
83 pango-$(PANGO_VER).lib $(CAIRO_LIBS) \
84 pangowin32-$(PANGO_VER).lib $(FONTCONFIG_LIBS)
87 !IF DEFINED (OBJS_querymodules) || DEFINED (OBJS_testfonts)
88 PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \
89 pango-$(PANGO_VER).lib pangowin32-$(PANGO_VER).lib
94 pango-enum-types.obj \
96 module-defs-lang.obj \
104 pango-attributes.obj \
111 pango-glyph-item.obj \
127 fribidi_char_type.obj
130 basic-win32.obj : ..\modules\basic\basic-win32.c
131 $(CC) $(PKG_CFLAGS) -GD -DPANGO_MODULE_PREFIX=_pango_basic_win32 -c ..\modules\basic\basic-win32.c
133 basic-fc.obj : ..\modules\basic\basic-fc.c
134 $(CC) $(PKG_CFLAGS) -GD -DPANGO_MODULE_PREFIX=_pango_basic_ft2 -c ..\modules\basic\basic-fc.c
136 basic-x.obj : ..\modules\basic\basic-x.c
137 $(CC) $(PKG_CFLAGS) -GD -DPANGO_MODULE_PREFIX=_pango_basic_xs -c ..\modules\basic\basic-x.c
140 fribidi.obj : mini-fribidi\fribidi.c
141 $(CC) $(PKG_CFLAGS) -GD -c mini-fribidi\fribidi.c
142 fribidi_types.obj : mini-fribidi\fribidi_types.c
143 $(CC) $(PKG_CFLAGS) -GD -c mini-fribidi\fribidi_types.c
144 fribidi_char_type.obj : mini-fribidi\fribidi_char_type.c
145 $(CC) $(PKG_CFLAGS) -GD -c mini-fribidi\fribidi_char_type.c
147 testfonts.obj : ..\examples\pangowin32tobmp.c
148 $(CC) $(PKG_CFLAGS) -GD -Fotestfonts.obj -c ..\examples\pangowin32tobmp.c
150 !IFDEF OBJS_pangowin32
151 PKG_CFLAGS = $(PKG_CFLAGS) -DPANGO_MODULE_PREFIX=_pango_basic_win32
153 module-defs-win32.obj \
155 pangowin32-fontcache.obj \
156 pangowin32-fontmap.obj \
157 # pangowin32-render.obj \
164 pangofc-decoder.obj \
166 pangofc-fontmap.obj \
168 pangoft2-fontmap.obj \
169 pangoft2-render.obj \
171 pango-ot-buffer.obj \
174 pango-ot-ruleset.obj \
178 PKG_CFLAGS = $(PKG_CFLAGS) $(FONTCONFIG_CFLAGS) $(FREETYPE2_CFLAGS)
185 pangox-fontcache.obj \
191 # -DHAVE_CAIRO_FREETYPE
192 !IFDEF OBJS_pangocairo
194 $(PKG_CFLAGS) $(FONTCONFIG_CFLAGS) $(FREETYPE2_CFLAGS) \
195 -DHAVE_CAIRO_WIN32 $(CAIRO_CFLAGS)
197 pangocairo-context.obj \
198 pangocairo-font.obj \
199 pangocairo-fontmap.obj \
200 pangocairo-render.obj \
201 pangocairo-win32font.obj \
202 pangocairo-win32fontmap.obj \
203 # pangocairo-fcfont.obj \
204 # pangocairo-fcfontmap.obj \
207 !IFDEF OBJS_querymodules
208 PKG_CFLAGS = $(PKG_CFLAGS) \
209 -DPACKAGE_NAME=\"Pango\" -DPACKAGE_VERSION=\"$(PANGO_VER)\"
215 OBJECTS = $(PACKAGE).obj
218 module-defs-win32.c : module-defs-win32.c.win32
219 copy module-defs-win32.c.win32 module-defs-win32.c
221 module-defs-fc.c : module-defs-fc.c.win32
222 copy module-defs-fc.c.win32 module-defs-fc.c
224 module-defs-lang.c : module-defs-lang.c.win32
225 copy module-defs-lang.c.win32 module-defs-lang.c
251 pango-enum-types.h: $(pango_headers) makefile.msc
252 $(PERL) $(GLIB)\gobject\glib-mkenums \
253 --fhead "#ifndef __PANGO_ENUM_TYPES_H__\n#define __PANGO_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
254 --fprod "/* enumerations from \"@filename@\" */\n" \
255 --vhead "GType @enum_name@_get_type (void);\n#define PANGO_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
256 --ftail "G_END_DECLS\n#endif /* __PANGO_ENUM_TYPES_H__ */" \
257 $(pango_headers) > pango-enum-types.h
259 pango-enum-types.c: $(pango_headers) pango-enum-types.h makefile.msc
260 $(PERL) $(GLIB)\gobject\glib-mkenums \
261 --fhead "#include <pango.h>" \
262 --fprod "\n/* enumerations from \"@filename@\" */" \
263 --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
264 --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
265 --vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (\"@EnumName@\", values);\n }\n return etype;\n}\n" \
266 $(pango_headers) > pango-enum-types.c
268 $(PACKAGE)-$(PKG_VER)s.lib : $(OBJECTS) $(PRJ_TOP)\config.h
269 lib /out:$(PACKAGE)-$(PKG_VER)s.lib $(OBJECTS)
271 lib$(PACKAGE)-$(PKG_VER)-0.dll : $(OBJECTS) $(PKG_DEF) $(PRJ_TOP)\config.h
272 $(CC) $(CFLAGS) -LD -Fe$@ $(OBJECTS) $(PKG_LINK) \
273 user32.lib gdi32.lib advapi32.lib $(LDFLAGS) /implib:$(PACKAGE)-$(PKG_VER).lib /def:$(PKG_DEF)
275 $(PACKAGE).exe : $(PKG_LINK) $(OBJECTS)
276 $(CC) $(CFLAGS) -Fe$(PACKAGE).exe $(OBJECTS) $(PKG_LINK) gdi32.lib user32.lib
278 $(PRJ_TOP)\config.h.win32 : makefile.msc
279 echo /*almostempty*/ > $(PRJ_TOP)\config.h.win32
280 echo #define PANGO_BINARY_AGE 0 >> $(PRJ_TOP)\config.h.win32
281 echo #define DHAVE_USP10_H 1 >> $(PRJ_TOP)\config.h.win32
283 $(PRJ_TOP)\config.h: $(PRJ_TOP)\config.h.win32
284 copy $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h
288 $(CC) $(CFLAGS) -GD -c $(PKG_CFLAGS) $<