1# ***************************************************************************
2# MAKEFILE-DLLMOD.MSVC (c) Copyright Roger Bowler, 2005-2007
3# Build Hercules for Win32 using MSVC and nmake (DLL version with loadable modules)
4# ***************************************************************************
5
6INCDIR = msvc.makefile.includes
7
8# ---------------------------------------------------------------------
9!INCLUDE $(INCDIR)\CONFIG.msvc
10!INCLUDE $(INCDIR)\VERSION.msvc
11!INCLUDE $(INCDIR)\OUTPUT_DIRS.msvc
12!INCLUDE $(INCDIR)\MODULES.msvc
13!INCLUDE $(INCDIR)\OBJ_CODE.msvc
14!INCLUDE $(INCDIR)\ZLIB_DIR.msvc
15!INCLUDE $(INCDIR)\BZIP2_DIR.msvc
16!INCLUDE $(INCDIR)\PCRE_DIR.msvc
17# ---------------------------------------------------------------------
18
19###################################################
20# NOTE! must set the 'NODEBUG' variable properly
21#       BEFORE calling win32.mak since it uses it.
22###################################################
23
24# ---------------------------------------------------------------------
25!INCLUDE <win32.mak>
26# ---------------------------------------------------------------------
27
28###################################################
29# NOTE! must set our prefered 'cdebug' value(s)
30#       AFTER calling win32.mak since it sets it.
31###################################################
32
33# ---------------------------------------------------------------------
34!INCLUDE $(INCDIR)\DEBUG_RETAIL.msvc
35!INCLUDE $(INCDIR)\ZLIB_FLAGS.msvc
36!INCLUDE $(INCDIR)\BZIP2_FLAGS.msvc
37!INCLUDE $(INCDIR)\PCRE_FLAGS.msvc
38!INCLUDE $(INCDIR)\HERC_FLAGS.msvc
39# ---------------------------------------------------------------------
40
41!IFDEF DYNDIR
42!INCLUDE $(DYNDIR)$(DYNMOD).msvc
43MODULES = $(MODULES) $(X)$(DYNMOD).dll
44rcflags = $(rcflags) -D TARGETFILENAME=\"$(DYNMOD).dll\" -D MAX_CPU_ENGINES_STR=\"$(MAX_CPU_ENGINES)\"
45!ENDIF
46
47# ---------------------------------------------------------------------
48!INCLUDE $(INCDIR)\PRIM_RULES.msvc
49!INCLUDE $(INCDIR)\OUTDIR_RULES.msvc
50!INCLUDE $(INCDIR)\MOD_RULES1.msvc
51!INCLUDE $(INCDIR)\MOD_RULES2.msvc
52!INCLUDE $(INCDIR)\ZLIB_RULES.msvc
53!INCLUDE $(INCDIR)\BZIP2_RULES.msvc
54!INCLUDE $(INCDIR)\PCRE_RULES.msvc
55# ---------------------------------------------------------------------
56
57!IFDEF DYNDIR
58
59$(O)$(DYNMOD).res: $(DYNDIR)$(DYNMOD).rc
60    $(rc) $(rcflags) $(rcvars) -fo $(O)$(DYNMOD).res $(DYNDIR)$(DYNMOD).rc
61
62$(X)$(DYNMOD).dll: $(O)$(DYNMOD).res $(DYNOBJ) $(O)hengine.lib $(O)hutil.lib $(O)hsys.lib
63    $(linkdll)
64
65{$(DYNDIR)}.c{$(OBJDIR)}.obj::
66    $(cc) $(cdebug) $(cflags) /Fp"$(OBJDIR)\\build_pch.pch" /Yu"hstdinc.h" $(cvarsdll) /Fo"$(OBJDIR)\\" /Fd"$(OBJDIR)\\" $<
67
68!ENDIF
69