4 VERSION
= $(PREFIX
)-r
$(RELEASE
)-$(BASEVER
)
7 @
$(MAKE
) /nologo X86
=1 do-all
8 @
$(MAKE
) /nologo X64
=1 do-all
11 @
$(MAKE
) /nologo X86
=1 do-clean
12 @
$(MAKE
) /nologo X64
=1 do-clean
13 @
-rmdir
/s
/q build
>NUL
2>NUL
15 !if defined
(X86
) || defined
(X64
)
19 TABASE
= $(PREFIX
)-$(ARCH
)
20 TARGET
= $(TABASE
).dll
21 OBJDIR
= build\objs-
$(ARCH
)
24 OBJS
= hook.obj
override.obj settings.obj cache.obj misc.obj expfunc.obj ft.obj fteng.obj ft2vert.obj gdidll.res
26 OBJS
= $(OBJS
) optimize\memcpy__amd.obj
27 OBJS
= build\objs-x86\
$(OBJS
: = build\objs-x86\
) #-)
29 OBJS
= build\objs-x64\
$(OBJS
: = build\objs-x64\
) #-)
33 @
$(MAKE
) /nologo do-init
34 @
$(MAKE
) /nologo do-build
37 @xcopy
/t
/q
/y
"$(SRCDIR)" "$(OBJDIR)"
39 $(FREETYPE_DIR
)\freetype
-x
86.lib
: freetype.mak
40 $(MAKE
) -f freetype.mak X86
=1
42 $(FREETYPE_DIR
)\freetype
-x
64.lib
: freetype.mak
43 $(MAKE
) -f freetype.mak X64
=1
51 @
-erase
/f
/q
"$(TABASE).*" >NUL
2>NUL
54 @
-erase
/s
/f
/q
"$(OBJDIR)" *.idb
*.pdb
>NUL
2>NUL
55 @
-rmdir
/s
/q
"$(OBJDIR)" >NUL
2>NUL
57 INCDIR
= $(SRCDIR
) $(FREETYPE_INCDIR
) $(EASYHOOK_INCDIR
) $(DETOURS_INCDIR
)
58 LIBDIR
= $(FREETYPE_LIBDIR
) $(EASYHOOK_LIBDIR
) $(DETOURS_LIBDIR
)
59 INCLUDE
= $(INCLUDE
);$(INCDIR
: =;)
60 LIB
= $(LIB
);$(LIBDIR
: =;)
67 LIBS
= advapi32.lib usp10.lib freetype-
$(ARCH
).lib
69 LIBS
= $(LIBS
) easyhook64
$(EH_LIB_SUFFIX
).lib
72 LIBS
= $(LIBS
) detoured.lib detours.lib
74 LIBS
= $(LIBS
) easyhook32
$(EH_LIB_SUFFIX
).lib
77 DEFS
= /DWIN32
/D_WINDOWS
/D_UNICODE
/DUNICODE
78 !if defined
(X86
) && defined
(USE_DETOURS
)
79 DEFS
= $(DEFS
) /DUSE_DETOURS
83 CFLAGS
= $(CFLAGS_DEBUG
) $(DEFS
)
84 LDFLAGS
= $(LDFLAGS_DEBUG
) /pdb
:$(TABASE
).pdb
86 CFLAGS
= $(CFLAGS_SAFE
) $(DEFS
)
89 $(TARGET
): $(OBJS
) $(SRCDIR
)\expfunc.def
$(FREETYPE_DIR
)\freetype
-$(ARCH
).lib
90 $(LD
) /dll
$(LDFLAGS
) $(LIBS
) /def
:$(SRCDIR
)\expfunc.def
/out
:$@
$(OBJS
)
92 .SUFFIXES
: .
cpp .obj .rc .res
94 {$(SRCDIR
)}.c
{$(OBJDIR
)}.obj
:
95 $(CC
) /nologo
$(CFLAGS
) /Fo
$@
/c
$<
97 {$(SRCDIR
)}.
cpp{$(OBJDIR
)}.obj
:
98 $(CC
) /nologo
$(CFLAGS
) /Fo
$@
/c
$<
100 {$(SRCDIR
)\optimize
}.
cpp{$(OBJDIR
)\optimize
}.obj
:
101 $(CC
) /nologo
$(CFLAGS
) /Fo
$@
/c
$<
103 {$(SRCDIR
)}.rc
{$(OBJDIR
)}.res
:
104 rc
/fo
$@
/l
0x411 $<
106 !endif # defined(ARCH)