Files
gMod/OTM_DX9/makefile.vc
T
code@koerner-de.net 199383dacb Improvements:
- Added a new way of dll injection. The game is started through OTM, thus OTM inject the dll directly.
2011-11-18 10:28:13 +00:00

117 lines
3.8 KiB
Plaintext

!IFDEF NO_INJECTION
!IFDEF ALPHA
precompiler_flag = /D "ALPHA" /D "NO_INJECTION"
!ELSE
precompiler_flag = /D "NO_INJECTION"
!ENDIF
def_file = /DEF:"OTM_DX9_dll_NO_INJECTION.def"
obj_suff = NO_INJECTION.obj
dll = d3d9.dll
!ELSE
!IFDEF DIRECT_INJECTION
!IFDEF ALPHA
precompiler_flag = /D "ALPHA" /D "DIRECT_INJECTION"
!ELSE
precompiler_flag = /D "DIRECT_INJECTION"
!ENDIF
def_file = /DEF:"OTM_DX9_dll_DIRECT_INJECTION.def"
obj_suff = DI.obj
dll = OTM_d3d9_DI.dll
!ELSE
!IFDEF ALPHA
precompiler_flag = /D "ALPHA" /D "HOOK_INJECTION"
!ELSE
precompiler_flag = /D "HOOK_INJECTION"
!ENDIF
def_file = /DEF:"OTM_DX9_dll_HOOK_INJECTION.def"
obj_suff = HOOK.obj
dll = OTM_d3d9_Hook.dll
!ENDIF
CXX = cl
CLINK = link.exe
DEFINES = /D "WIN32" /D "_WINDOWS" /D "_USRDLL" /D "_WINDLL" /D "_MBCS"
CFLAGS = /I "C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include" /nologo /W3 /WX- /O2 $(DEFINES) $(precompiler_flag) /Gm- /EHsc /MT /GS /fp:precise /Zc:wchar_t
LFLAGS = /INCREMENTAL:NO /NOLOGO /LIBPATH:"C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86" /DLL "Winmm.lib" "d3dx9.lib" "dxguid.lib" "user32.lib" "Kernel32.lib" $(def_file) /SUBSYSTEM:WINDOWS /OPT:REF /OPT:ICF /TLBID:1 /DYNAMICBASE:NO /NXCOMPAT:NO /MACHINE:X86
obj = obj
bin = bin
objects = $(obj)\OTM_DX9_dll.$(obj_suff) \
$(obj)\OTM_IDirect3D9.$(obj_suff) \
$(obj)\OTM_IDirect3D9Ex.$(obj_suff) \
$(obj)\OTM_IDirect3DDevice9.$(obj_suff) \
$(obj)\OTM_IDirect3DDevice9Ex.$(obj_suff) \
$(obj)\OTM_TextureFunction.$(obj_suff) \
$(obj)\OTM_IDirect3DTexture9.$(obj_suff) \
$(obj)\OTM_IDirect3DVolumeTexture9.$(obj_suff) \
$(obj)\OTM_IDirect3DCubeTexture9.$(obj_suff) \
$(obj)\OTM_ArrayHandler.$(obj_suff) \
$(obj)\OTM_TextureClient.$(obj_suff) \
$(obj)\OTM_TextureServer.$(obj_suff)
headers = OTM_Main.h \
OTM_Defines.h \
OTM_DX9_dll.h \
OTM_IDirect3D9.h \
OTM_IDirect3DDevice9.h \
OTM_TextureFunction.h \
OTM_IDirect3DTexture9.h \
OTM_IDirect3DVolumeTexture9.h \
OTM_IDirect3DCubeTexture9.h \
OTM_ArrayHandler.h \
OTM_TextureClient.h \
OTM_TextureServer.h
$(bin)\d3d9.dll: $(objects)
$(CLINK) $(LFLAGS) $(objects) /OUT:$(bin)\$(dll)
copy $(bin)\$(dll) ..\OTM_GUI\bin\$(dll)
$(obj)\OTM_DX9_dll.$(obj_suff): OTM_DX9_dll.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_DX9_dll.cpp
$(obj)\OTM_IDirect3D9.$(obj_suff): OTM_IDirect3D9.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_IDirect3D9.cpp
$(obj)\OTM_IDirect3D9Ex.$(obj_suff): OTM_IDirect3D9Ex.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_IDirect3D9Ex.cpp
$(obj)\OTM_IDirect3DDevice9.$(obj_suff): OTM_IDirect3DDevice9.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_IDirect3DDevice9.cpp
$(obj)\OTM_IDirect3DDevice9Ex.$(obj_suff): OTM_IDirect3DDevice9Ex.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_IDirect3DDevice9Ex.cpp
$(obj)\OTM_TextureFunction.$(obj_suff): OTM_TextureFunction.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_TextureFunction.cpp
$(obj)\OTM_IDirect3DTexture9.$(obj_suff): OTM_IDirect3DTexture9.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_IDirect3DTexture9.cpp
$(obj)\OTM_IDirect3DVolumeTexture9.$(obj_suff): OTM_IDirect3DVolumeTexture9.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_IDirect3DVolumeTexture9.cpp
$(obj)\OTM_IDirect3DCubeTexture9.$(obj_suff): OTM_IDirect3DCubeTexture9.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_IDirect3DCubeTexture9.cpp
$(obj)\OTM_ArrayHandler.$(obj_suff): OTM_ArrayHandler.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_ArrayHandler.cpp
$(obj)\OTM_TextureClient.$(obj_suff): OTM_TextureClient.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_TextureClient.cpp
$(obj)\OTM_TextureServer.$(obj_suff): OTM_TextureServer.cpp $(headers)
$(CXX) $(CFLAGS) /c /Fo$@ OTM_TextureServer.cpp
clean:
del $(objects) $(bin)\$(dll)