Files
gMod/OTM_DX9/makefile.gcc
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.5 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
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$@
${obj}\OTM_IDirect3D9.${obj_suff}: OTM_IDirect3D9.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_IDirect3D9Ex.${obj_suff}: OTM_IDirect3D9Ex.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_IDirect3DDevice9.${obj_suff}: OTM_IDirect3DDevice9.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_IDirect3DDevice9Ex.${obj_suff}: OTM_IDirect3DDevice9Ex.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_TextureFunction.${obj_suff}: OTM_TextureFunction.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_IDirect3DTexture9.${obj_suff}: OTM_IDirect3DTexture9.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_IDirect3DVolumeTexture9.${obj_suff}: OTM_IDirect3DVolumeTexture9.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_IDirect3DCubeTexture9.${obj_suff}: OTM_IDirect3DCubeTexture9.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_ArrayHandler.${obj_suff}: OTM_ArrayHandler.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_TextureClient.${obj_suff}: OTM_TextureClient.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
${obj}\OTM_TextureServer.${obj_suff}: OTM_TextureServer.cpp ${headers}
${CXX} ${CFLAGS} /c $< /Fo$@
clean:
del ${objects} ${bin}\${dll}