1 # This file is part of the FreeType project.
3 # It builds the library and test programs for Microsoft Visual C++ 1.x
4 # and Microsoft C/C++ v.7.0 compilers for 16-bit Windows, large model,
5 # using QuickWin to display console outputs.
10 # Use this file while in the 'test' directory with the following statement:
12 # nmake /f arch\win16\Makefile.VC
14 # A DLL version of the library can be built and then used with
16 # nmake DLL=1 /f arch\win16\Makefile.VC dll
18 # (do not forget to define DLL, otherwise the link phase will fail).
21 # Debug versions can be obtained with
23 # nmake DEBUG=1 /f arch\win16\Makefile.VC
25 # Special versions enabled to handle big fonts (with more than 16,384
26 # glyphs) can be obtained with
28 # nmake BIGFONTS=1 /f arch\win16\Makefile.VC
31 FT_MAKEFILE = $(ARCH)\Makefile.VC
32 FT_MAKE = $(MAKE) /nologo
38 INCDIRS = -I$(LIBDIR) -I$(LIBDIR)\$(ARCH) -I. -I$(LIBDIR)\extend
40 # One can also consider using "set MSC_CMD_FLAGS=/Gr /Op- /Gy /YX".
41 # With Microsoft C/C++ 7.0, use /G2 instead of /G3.
43 CFLAGS = /Ox /AL /Za /W2 /G3 $(INCDIRS)
46 CFLAGS = /Zi /Ge /AL /Za /W2 /G3 $(INCDIRS)
50 CFLAGS = $(CFLAGS) /Mq
51 LDFLAGS = $(LDFLAGS) /Mq
54 CFLAGS = $(CFLAGS) /DFREETYPE_DLL
58 # Windows graphic driver
59 GDRIVER = $(ARCH)\gw_win16.c
61 GSRC = display.c gmain.c blitter.c $(GDRIVER)
63 GOBJ = $(GSRC:.c=.obj)
88 EXEFILES = ftdump.exe \
101 # Skiped if DEBUG build
102 all: freetype $(EXEFILES)
104 dll: the_dll $(EXEFILES)
107 # Skipped if non-DEBUG build
108 default_target: debug
109 dll: the_debug_dll $(EXEFILES)
113 debug: freetype_debug $(EXEFILES)
121 $(FT_MAKE) /f $(FT_MAKEFILE) $(MAKEBIG) all
126 $(FT_MAKE) /f $(FT_MAKEFILE) DEBUG=1 $(MAKEBIG) debug
131 $(FT_MAKE) /f $(FT_MAKEFILE) DLL=1 $(MAKEBIG) dll
133 -copy $(LIBDIR)\$(FT_DLL)
137 $(FT_MAKE) /f $(FT_MAKEFILE) DEBUG=1 DLL=1 $(MAKEBIG) dll
139 -copy $(LIBDIR)\$(FT_DLL)
142 # C compilers are unable to include 16-bit <windows.h> in ANSI mode.
143 # So we have a special rule for this file, to build it outside ANSI.
146 $(CFLAGS) /Ze $(GDRIVER)
154 ftzoom.exe: $(GOBJ) ftzoom.obj common.obj $(LIBDIR)\libttf.lib
155 ftview.exe: $(GOBJ) ftview.obj common.obj $(LIBDIR)\libttf.lib
156 ftstring.exe: $(GOBJ) ftstring.obj common.obj $(LIBDIR)\libttf.lib
157 ftstrtto.exe: $(GOBJ) ftstrtto.obj common.obj arabic.obj $(LIBDIR)\libttf.lib
158 fttimer.exe: $(GOBJ) fttimer.obj common.obj $(LIBDIR)\libttf.lib
159 ftlint.exe: ftlint.obj common.obj $(LIBDIR)\libttf.lib
160 ftdump.exe: ftdump.obj common.obj $(LIBDIR)\libttf.lib
161 ftstrpnm.exe: ftstrpnm.obj common.obj $(LIBDIR)\libttf.lib
162 ftsbit.exe: ftsbit.obj common.obj $(LIBDIR)\libttf.lib
163 ftmetric.exe: ftmetric.obj common.obj $(LIBDIR)\libttf.lib
164 fterror.exe: fterror.obj common.obj $(LIBDIR)\libttf.lib
169 $(FT_MAKE) /f $(FT_MAKEFILE) clean
174 $(FT_MAKE) /f $(FT_MAKEFILE) distclean
185 !include "$(ARCH)\depend.win"