TOP = ../.. !INCLUDE $(TOP)/glib/build/win32/make.msc !IFNDEF PERL PERL = perl !ENDIF # Possibly override Pango version from build/win32/module.defs PANGO_VER = 0.24 # INCLUDES = -I .. -I . # DEFINES = -DPACKAGE=\"Pango\" -DVERSION=\"$(PANGO_VER)\" # DEPCFLAGS = $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) $(FREETYPE2_CFLAGS) !IFNDEF PACKAGE DLLS = pango pangowin32 pangoft2 # pangox EXES = querymodules testfonts #? test1 test2 test3 test4 test5 # The main target all : \ sub-all sub-all: for %d in ($(DLLS)) do nmake -nologo -f makefile.msc sub-one-dll THIS=%d for %d in ($(DLLS)) do nmake -nologo -f makefile.msc sub-one-lib THIS=%d for %d in ($(EXES)) do nmake -nologo -f makefile.msc sub-one-exe THIS=%d sub-one-lib: nmake -nologo -f makefile.msc $(THIS)-$(PANGO_VER)s.lib PACKAGE=$(THIS) OBJS_$(THIS)=1 sub-one-dll: nmake -nologo -f makefile.msc $(THIS)-$(PANGO_VER).dll PACKAGE=$(THIS) OBJS_$(THIS)=1 sub-one-exe: nmake -nologo -f makefile.msc $(THIS).exe PACKAGE=$(THIS) OBJS_$(THIS)=1 !ELSE PRJ_TOP = .. PKG_VER = $(PANGO_VER) PKG_DEF = $(PACKAGE).def PKG_CFLAGS = -FImsvc_recommended_pragmas.h -I.. -I. -I$(PRJ_TOP) \ -DPACKAGE=\"Pango\" -DVERSION=\"$(PANGO_VER)\" \ -DPANGO_ENABLE_BACKEND -DPANGO_ENABLE_ENGINE \ $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) \ $(FREETYPE2_CFLAGS) \ $(X11_CFLAGS) -DSYSCONFDIR=\"/etc\" !IFDEF OBJS_pango # don't link with itself PKG_LINK = $(GLIB_LIBS) !ENDIF !IFDEF OBJS_pangowin32 PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \ pango-$(PANGO_VER).lib !ENDIF !IFDEF OBJS_pangoft2 PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) $(FREETYPE2_LIBS) \ pango-$(PANGO_VER).lib mini-xft/mini-xft.lib $(DIRENT_LIBS) !ENDIF !IFDEF OBJS_pangox PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \ pango-$(PANGO_VER).lib $(X11_LIBS) !ENDIF !IF DEFINED (OBJS_querymodules) || DEFINED (OBJS_testfonts) PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \ pango-$(PANGO_VER).lib pangowin32-$(PANGO_VER).lib !ENDIF !IFDEF OBJS_pango OBJECTS = \ break.obj \ fonts.obj \ glyphstring.obj \ mapping.obj \ modules.obj \ pango-attributes.obj \ pango-color.obj \ pango-context.obj \ pango-coverage.obj \ pango-fontset.obj \ pango-fontmap.obj \ pango-intset.obj \ pango-item.obj \ pango-markup.obj \ pango-layout.obj \ pango-tabs.obj \ pango-utils.obj \ reorder-items.obj \ shape.obj \ pango-enum-types.obj \ fribidi.obj \ fribidi_get_type.obj !ENDIF basic-win32.obj : ..\modules\basic\basic-win32.c $(CC) $(PKG_CFLAGS) -GD -DWIN32_MODULE_PREFIX -c ..\modules\basic\basic-win32.c basic-ft2.obj : ..\modules\basic\basic-ft2.c $(CC) $(PKG_CFLAGS) -GD -DFT2_MODULE_PREFIX -c ..\modules\basic\basic-ft2.c basic-x.obj : ..\modules\basic\basic-x.c $(CC) $(PKG_CFLAGS) -GD -DX_MODULE_PREFIX -c ..\modules\basic\basic-x.c fribidi.obj : mini-fribidi\fribidi.c $(CC) $(PKG_CFLAGS) -GD -c mini-fribidi\fribidi.c fribidi_get_type.obj : mini-fribidi\fribidi_get_type.c $(CC) $(PKG_CFLAGS) -GD -c mini-fribidi\fribidi_get_type.c !IFDEF OBJS_pangowin32 OBJECTS = \ module-defs-win32.obj \ pangowin32.obj \ pangowin32-fontcache.obj \ pangowin32-fontmap.obj \ basic-win32.obj !ENDIF !IFDEF OBJS_pangoft2 OBJECTS = \ module-defs-ft2.obj \ pangoft2.obj \ pangoft2-fontmap.obj \ basic-ft2.obj !ENDIF !IFDEF OBJS_pangox OBJECTS = \ module-defs-x.obj \ pangox.obj \ pangox-fontcache.obj \ pangox-fontmap.obj \ pango-indic.obj \ basic-x.obj !ENDIF !IFDEF OBJS_querymodules OBJECTS = \ querymodules.obj !ENDIF !IFNDEF OBJECTS OBJECTS = $(PACKAGE).obj !ENDIF module-defs.c : module-defs.c.win32 copy module-defs.c.win32 module-defs.c pango_headers= \ pango.h \ pango-attributes.h \ pango-break.h \ pango-context.h \ pango-coverage.h \ pango-engine.h \ pango-font.h \ pango-fontmap.h \ pango-glyph.h \ pango-indic.h \ pango-item.h \ pango-layout.h \ pango-modules.h \ pango-tabs.h \ pango-types.h \ pango-utils.h \ pangox.h pango-enum-types.h: $(pango_headers) $(PERL) ..\..\glib\gobject\glib-mkenums \ --fhead "#ifndef __PANGO_ENUM_TYPES_H__\n#define __PANGO_ENUM_TYPES_H__\n" \ --fprod "/* enumerations from \"@filename@\" */\n" \ --vhead "GType @enum_name@_get_type (void);\n#define PANGO_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \ --ftail "#endif /* __PANGO_ENUM_TYPES_H__ */" \ $(pango_headers) ) > pango-enum-types.h pango-enum-types.c: $(pango_headers) pango-enum-types.h $(PERL) ..\..\glib\gobject\glib-mkenums \ --fhead "#include " \ --fprod "\n/* enumerations from \"@filename@\" */" \ --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const GEnumValue values[] = {" \ --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ --vtail " { 0, NULL, NULL }\n };\n etype = g_enum_register_static (\"@EnumName@\", values);\n }\n return etype;\n}\n" \ $(pango_headers) > pango-enum-types.c $(PACKAGE)-$(PKG_VER)s.lib : $(OBJECTS) $(PRJ_TOP)\config.h lib /out:$(PACKAGE)-$(PKG_VER)s.lib $(OBJECTS) $(PACKAGE)-$(PKG_VER).dll : $(OBJECTS) $(PKG_DEF) $(PRJ_TOP)\config.h $(CC) $(CFLAGS) -LD -Fe$(PACKAGE)-$(PKG_VER).dll $(OBJECTS) $(PKG_LINK) user32.lib gdi32.lib advapi32.lib $(LDFLAGS) /def:$(PKG_DEF) $(PACKAGE).exe : $(PKG_LINK) $(OBJECTS) $(CC) $(CFLAGS) -Fe$(PACKAGE).exe $(OBJECTS) $(PKG_LINK) gdi32.lib user32.lib $(PRJ_TOP)\config.h: $(PRJ_TOP)\config.h.win32 copy $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h module-defs-win32.c: module-defs-win32.c.win32 copy module-defs-win32.c.win32 module-defs-win32.c .c.obj : $(CC) $(CFLAGS) -GD -c $(PKG_CFLAGS) -DPANGO_VERSION=\"$(PANGO_VER)\" $< !ENDIF #PACKAGE