1
# This file is part of the FreeType project.
3
# It builds the library for Microsoft Visual C++ 1.x for MS-DOS, large model.
4
# It also works for Microsoft C/C++ v.7.0 16-bit compiler, but not for
5
# previous versions (use Makefile.MS instead).
9
# Use this file while in the lib directory with the following statement:
11
# nmake /f arch\msdos\Makefile.VC
14
# A debug version can be obtained with
16
# nmake DEBUG=1 /f arch\msdos\Makefile.VC
18
# A special version enabled to handle big fonts (with more than 16,384
19
# glyphs) can be obtained with
21
# nmake BIGFONTS=1 /f arch\msdos\Makefile.VC
24
FT_MAKEFILE = $(ARCH)\Makefile.VC
27
LIB = lib /noignorecase /nologo
29
# One can also consider using "set MSC_CMD_FLAGS=/Gr /Op- /Gy /YX".
30
# With Microsoft C/C++ 7.0, use /G2 instead of /G3.
32
CFLAGS = $(CFLAGS) /Ox /AL /W2 /G3 /I$(ARCH) /I. /Iextend
34
CFLAGS = $(CFLAGS) /Zi /Ge /AL /W2 /G3 /I$(ARCH) /I. /Iextend
39
CFLAGS = $(CFLAGS) /Za
42
TTMEMORY = .\ttmemory.c
44
CFLAGS = $(CFLAGS) /DTT_HUGE_PTR=__huge /Ze
46
TTFILE = $(ARCH)\hugefile.c
47
TTMEMORY = $(ARCH)\hugemem.c
52
PORT = $(TTFILE) $(TTMEMORY) $(TTMUTEX)
54
# Do not insert spaces between the file names or at end of line, otherwise
55
# the substitution for LIB command line will fail. Thank you.
57
SRC_X = extend\ftxgasp.c extend\ftxkern.c extend\ftxpost.c\
58
extend\ftxcmap.c extend\ftxwidth.c extend\ftxerr18.c extend\ftxsbit.c\
59
extend\ftxopen.c extend\ftxgsub.c extend\ftxgpos.c extend\ftxgdef.c
60
OBJS_X = $(SRC_X:.c=.obj)
62
SRC_M = ttapi.c ttcache.c ttcalc.c ttcmap.c ttdebug.c\
63
ttgload.c ttinterp.c ttload.c ttobjs.c ttraster.c ttextend.c $(PORT)
64
OBJS_M = $(SRC_M:.c=.obj) $(OBJS_X)
66
SRC_S = $(ARCH)\freetype.c
67
OBJ_S = $(SRC_S:.c=.obj)
68
OBJS_S = $(OBJ_S) $(OBJS_X)
71
# Since Microsoft's NMAKE does not handle $($(LIB_FILES)), and using
72
# LIB_FILES="$(OBJS_S)" will excess the capacity of COMMAND.COM, we cheat
73
# by constructing LIB's response file directly in the `all' target.
75
# Another solution, useful during debugging of part of the library,
76
# would be to include each .obj in the library as soon as it is compiled.
77
# It is commented out below. See Makefile.TC for an application.
82
# $(LIB) libttf +-$*.obj
86
# Skipped if DEBUG build
89
$(LIB) libttf.lib @<<response
96
$(LIB) libttf.lib @<<response
100
$(OBJ_S): $(SRC_S) $(SRC_M)
102
# Not used here because it excesses the capacity of COMMAND.COM...
103
libttf.lib: $(LIB_FILES)
104
$(LIB) $@ +-$(?: =-+);
115
!include "$(ARCH)\depend.dos"