mirror of
https://github.com/nzp-team/fteqw.git
synced 2024-11-22 03:51:32 +00:00
Some compile fixes.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5301 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
be373b88b9
commit
b6847664a7
7 changed files with 112 additions and 67 deletions
|
@ -78,7 +78,7 @@ ifneq (,$(BRANDING))
|
|||
-include game_$(BRANDING).mak
|
||||
endif
|
||||
ifneq (,$(FTE_CONFIG))
|
||||
export FTE_CONFIG_EXTRA:=$(shell $(CC) -xc -E -P -DCOMPILE_OPTS common/config_$(FTE_CONFIG).h)
|
||||
export FTE_CONFIG_EXTRA:=$(shell $(CC) -xc -E -P -DFTE_TARGET_$(FTE_TARGET) -DCOMPILE_OPTS common/config_$(FTE_CONFIG).h)
|
||||
BRANDFLAGS+=-DCONFIG_FILE_NAME=config_$(FTE_CONFIG).h $(FTE_CONFIG_EXTRA)
|
||||
EXE_NAME=$(FTE_CONFIG)
|
||||
endif
|
||||
|
@ -94,9 +94,13 @@ endif
|
|||
ifeq (,$(findstring DNO_VORBISFILE,$(FTE_CONFIG_EXTRA)))
|
||||
USE_VORBISFILE=1
|
||||
endif
|
||||
#ifeq (,$(findstring DNO_FREETYPE,$(FTE_CONFIG_EXTRA)))
|
||||
# USE_FREETYPE=1
|
||||
#endif
|
||||
ifneq (,$(findstring DLINK_FREETYPE,$(FTE_CONFIG_EXTRA)))
|
||||
LINK_FREETYPE=1
|
||||
LINK_PNG=1
|
||||
endif
|
||||
ifneq (,$(findstring DLINK_PNG,$(FTE_CONFIG_EXTRA)))
|
||||
LINK_PNG=1
|
||||
endif
|
||||
ifneq (,$(findstring -Os,$(FTE_CONFIG_EXTRA)))
|
||||
CPUOPTIMIZATIONS+=-Os
|
||||
BRANDFLAGS:=$(filter-out -O%,$(BRANDFLAGS))
|
||||
|
@ -185,6 +189,7 @@ ANT?=ant
|
|||
JAVA_HOME?=/usr
|
||||
JAVATOOL=$(JAVA_HOME)/bin/
|
||||
ANDROID_SCRIPT=android
|
||||
DO_CMAKE=cmake -DCMAKE_C_COMPILER="$(firstword $(CC))" -DCMAKE_C_FLAGS="$(wordlist 2,99,$(CC)) $(CPUOPTIMIZATIONS)" -DCMAKE_CXX_COMPILER="$(firstword $(CXX))" -DCMAKE_CXX_FLAGS="$(wordlist 2,99,$(CXX)) $(CPUOPTIMIZATIONS)"
|
||||
|
||||
ifeq ($(DROID_ARCH),)
|
||||
#armeabi armeabi-v7a arm64-v8a x86 x86_64 mips mips64
|
||||
|
@ -871,10 +876,14 @@ else
|
|||
OGGVORBISLDFLAGS=
|
||||
OGGVORBISFILE_STATIC=
|
||||
endif
|
||||
ifeq (1,$(USE_FREETYPE))
|
||||
ifeq (1,$(LINK_FREETYPE))
|
||||
LIBFREETYPE_STATIC=-DFREETYPE_STATIC
|
||||
LIBFREETYPE_LDFLAGS=-lfreetype
|
||||
endif
|
||||
ifeq (1,$(LINK_PNG))
|
||||
LIBFREETYPE_STATIC=-DAVAIL_PNG
|
||||
LIBFREETYPE_LDFLAGS=-lpng
|
||||
endif
|
||||
ifeq (1,$(strip $(INTERNAL_BULLET)))
|
||||
COMMON_OBJS+=com_phys_bullet.o
|
||||
ALL_CFLAGS+=-I/usr/include/bullet -I$(ARCHLIBS)/bullet3-$(BULLETVER)/src
|
||||
|
@ -910,9 +919,9 @@ ifdef windir
|
|||
M_LDFLAGS=$(MLDFLAGS) -lmingw32 -lws2_32 `$(SDLCONFIG) --static-libs`
|
||||
SV_LDFLAGS=`$(SDLCONFIG) --static-libs`
|
||||
else
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(IMAGELDFLAGS) $(CLIENTLDDEPS) `$(SDLCONFIG) --static-libs`
|
||||
VK_LDFLAGS=$(VKLDFLAGS) $(IMAGELDFLAGS) $(CLIENTLDDEPS) `$(SDLCONFIG) --static-libs`
|
||||
M_LDFLAGS=$(MLDFLAGS) $(IMAGELDFLAGS) $(CLIENTLDDEPS) `$(SDLCONFIG) --static-libs`
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(IMAGELDFLAGS) $(SDLCONFIG) --static-libs`
|
||||
VK_LDFLAGS=$(VKLDFLAGS) $(IMAGELDFLAGS) `$(SDLCONFIG) --static-libs`
|
||||
M_LDFLAGS=$(MLDFLAGS) $(IMAGELDFLAGS) `$(SDLCONFIG) --static-libs`
|
||||
SV_LDFLAGS=`$(SDLCONFIG) --static-libs`
|
||||
endif
|
||||
GL_CFLAGS=-DFTE_SDL $(GLCFLAGS) `$(SDLCONFIG) --cflags`
|
||||
|
@ -955,6 +964,7 @@ endif
|
|||
#google native client
|
||||
ifeq ($(FTE_TARGET),nacl)
|
||||
CLIENTLDDEPS=
|
||||
SERVERLDDEPS=
|
||||
|
||||
NARCH ?= x86_32
|
||||
ifeq ($(shell uname -o 2>&1 | grep Cygwin),)
|
||||
|
@ -1006,8 +1016,8 @@ ifeq ($(FTE_TARGET),nacl)
|
|||
|
||||
GLCL_OBJS=$(GL_OBJS) $(D3DGL_OBJS) $(GLQUAKE_OBJS) $(BOTLIB_OBJS) sys_ppapi.o cd_null.o gl_vidppapi.o fs_ppapi.o snd_ppapi.o
|
||||
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(CLIENTLDDEPS)
|
||||
M_LDFLAGS=$(GLLDFLAGS) $(CLIENTLDDEPS)
|
||||
GL_LDFLAGS=$(GLLDFLAGS)
|
||||
M_LDFLAGS=$(GLLDFLAGS)
|
||||
|
||||
GLB_DIR=gl_nacl_$(NARCH)
|
||||
MINGL_DIR=mingl_nacl_$(NARCH)
|
||||
|
@ -1025,6 +1035,7 @@ endif
|
|||
#FTE_TARGET=win32_SDL | FTE_TARGET=win64_SDL (MinGW32 + SDL | MinGW64 + SDL)
|
||||
ifeq (win_SDL,$(findstring win,$(FTE_TARGET))$(findstring _SDL,$(FTE_TARGET)))
|
||||
LIBS_DIR=./libs
|
||||
DO_CMAKE+=-DCMAKE_SYSTEM_NAME=Windows -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM="NEVER"
|
||||
|
||||
ifneq (,$(findstring win64,$(FTE_TARGET)))
|
||||
BITS=64
|
||||
|
@ -1048,9 +1059,9 @@ ifeq (win_SDL,$(findstring win,$(FTE_TARGET))$(findstring _SDL,$(FTE_TARGET)))
|
|||
SV_LDFLAGS=$(MINGW_LIBS_DIR)/libz.a -lm -lmingw32 -lws2_32 -lwinmm `$(SDLCONFIG) --static-libs`
|
||||
QCC_LDFLAGS=$(MINGW_LIBS_DIR)/libz.a
|
||||
else
|
||||
GL_LDFLAGS=$(IMAGELDFLAGS) $(CLIENTLDDEPS) -lws2_32 -lmingw32 $(SDL_LDFLAGS) -mwindows -ldxguid -lwinmm -lole32 $(GLLDFLAGS) `$(SDLCONFIG) --libs`
|
||||
VK_LDFLAGS=$(IMAGELDFLAGS) $(CLIENTLDDEPS) -lws2_32 -lmingw32 $(SDL_LDFLAGS) -mwindows -ldxguid -lwinmm -lole32 $(GLLDFLAGS) `$(SDLCONFIG) --libs`
|
||||
M_LDFLAGS=$(IMAGELDFLAGS) $(CLIENTLDDEPS) -lws2_32 -lmingw32 $(SDL_LDFLAGS) -mwindows -ldxguid -lwinmm -lole32 $(MLDFLAGS) `$(SDLCONFIG) --libs`
|
||||
GL_LDFLAGS=$(IMAGELDFLAGS) -lws2_32 -lmingw32 $(SDL_LDFLAGS) -mwindows -ldxguid -lwinmm -lole32 $(GLLDFLAGS) `$(SDLCONFIG) --libs`
|
||||
VK_LDFLAGS=$(IMAGELDFLAGS) -lws2_32 -lmingw32 $(SDL_LDFLAGS) -mwindows -ldxguid -lwinmm -lole32 $(GLLDFLAGS) `$(SDLCONFIG) --libs`
|
||||
M_LDFLAGS=$(IMAGELDFLAGS) -lws2_32 -lmingw32 $(SDL_LDFLAGS) -mwindows -ldxguid -lwinmm -lole32 $(MLDFLAGS) `$(SDLCONFIG) --libs`
|
||||
SV_LDFLAGS=$(MINGW_LIBS_DIR)/libz.a -lm -lmingw32 -lws2_32 -lwinmm `$(SDLCONFIG) --libs`
|
||||
QCC_LDFLAGS=$(MINGW_LIBS_DIR)/libz.a
|
||||
endif
|
||||
|
@ -1079,7 +1090,7 @@ ifeq (win_SDL,$(findstring win,$(FTE_TARGET))$(findstring _SDL,$(FTE_TARGET)))
|
|||
D3DCL_OBJS=$(D3DQUAKE_OBJS) $(BOTLIB_OBJS) snd_sdl.o cd_sdl.o sys_sdl.o in_sdl.o snd_directx.o $(D3DGL_OBJS) $(LTO_END) resources.o $(LTO_START)
|
||||
D3D_EXE_NAME=../$(EXE_NAME)-sdl-d3d$(BITS)$(EXEPOSTFIX)
|
||||
D3DCL_EXE_NAME=../$(EXE_NAME)-sdl-d3dcl$(BITS)$(EXEPOSTFIX)
|
||||
D3D_LDFLAGS=$(IMAGELDFLAGS) $(CLIENTLDDEPS) -lws2_32 -lmingw32 $(SDL_LDFLAGS) -mwindows -ldxguid -lwinmm -lole32
|
||||
D3D_LDFLAGS=$(IMAGELDFLAGS) -lws2_32 -lmingw32 $(SDL_LDFLAGS) -mwindows -ldxguid -lwinmm -lole32
|
||||
D3D_CFLAGS=$(D3DCFLAGS) -DFTE_SDL -DNO_XFLIP -I$(LIBS_DIR) -I$(MINGW_LIBS_DIR)/ -I$(MINGW_LIBS_DIR) $(CLIENTLIBFLAGS) $(DX7SDK)
|
||||
D3DB_DIR=sdl_d3d_mgw$(BITS)
|
||||
D3DCL_DIR=sdl_d3dcl_mgw$(BITS)
|
||||
|
@ -1204,6 +1215,9 @@ endif
|
|||
#FTE_TARGET=win32 | FTE_TARGET=win64 (MinGW32 | MinGW64)
|
||||
ifeq (win,$(findstring win,$(FTE_TARGET))$(findstring _SDL,$(FTE_TARGET)))
|
||||
# The extra object file called resources.o is specific for MinGW to link the icon in
|
||||
# DO_CMAKE+=-DCMAKE_SYSTEM_NAME=Windows -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM="NEVER"
|
||||
|
||||
DO_CMAKE=cmake -DCMAKE_TOOLCHAIN_FILE=/home/spike/fteqw/fteqw-code/cmakesucks.cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_SYSTEM_NAME=Windows -DCMAKE_C_COMPILER="$(firstword $(CC))" -DCMAKE_C_FLAGS="$(wordlist 2,99,$(CC))" -DCMAKE_CXX_COMPILER="$(firstword $(CXX))" -DCMAKE_CXX_FLAGS="$(wordlist 2,99,$(CXX))"
|
||||
|
||||
#cygwin's gcc requires an extra command to use mingw instead of cygwin (default paths, etc).
|
||||
ifneq ($(shell $(CC) -dumpmachine 2>&1 | grep cygwin),)
|
||||
|
@ -1238,7 +1252,7 @@ ifeq (win,$(findstring win,$(FTE_TARGET))$(findstring _SDL,$(FTE_TARGET)))
|
|||
GLCL_OBJS=$(GL_OBJS) $(D3DGL_OBJS) $(GLQUAKE_OBJS) $(BOTLIB_OBJS) gl_vidnt.o $(WINDOWS_OBJS)
|
||||
GL_EXE_NAME=../fteglqw$(BITS)$(EXEPOSTFIX)
|
||||
GLCL_EXE_NAME=../fteglqwcl$(BITS)$(EXEPOSTFIX)
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(IMAGELDFLAGS) $(CLIENTLDDEPS) -ldxguid -lws2_32 -lwinmm -lgdi32 -lole32 -Wl,--subsystem,windows
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(IMAGELDFLAGS) -ldxguid -lws2_32 -lwinmm -lgdi32 -lole32 -Wl,--subsystem,windows
|
||||
GL_CFLAGS=$(GLCFLAGS) $(W32_CFLAGS) $(DX7SDK) -DMULTITHREAD $(CLIENTLIBFLAGS)
|
||||
GLB_DIR=gl_mgw$(BITS)
|
||||
GLCL_DIR=glcl_mgw$(BITS)
|
||||
|
@ -1252,7 +1266,7 @@ ifeq (win,$(findstring win,$(FTE_TARGET))$(findstring _SDL,$(FTE_TARGET)))
|
|||
MCL_OBJS=$(D3DGL_OBJS) $(GLQUAKE_OBJS) $(SOFTWARE_OBJS) $(D3DQUAKE_OBJS) $(BOTLIB_OBJS) gl_vidnt.o gl_videgl.o $(WINDOWS_OBJS)
|
||||
M_EXE_NAME=../$(EXE_NAME)$(BITS)$(EXEPOSTFIX)
|
||||
MCL_EXE_NAME=../$(EXE_NAME)cl$(BITS)$(EXEPOSTFIX)
|
||||
M_LDFLAGS=$(GLLDFLAGS) $(IMAGELDFLAGS) $(CLIENTLDDEPS) -ldxguid -lws2_32 -lwinmm -lgdi32 -lole32 -Wl,--subsystem,windows
|
||||
M_LDFLAGS=$(GLLDFLAGS) $(IMAGELDFLAGS) -ldxguid -lws2_32 -lwinmm -lgdi32 -lole32 -Wl,--subsystem,windows
|
||||
M_CFLAGS=$(GLCFLAGS) $(W32_CFLAGS) $(D3DCFLAGS) $(DX7SDK) $(VKCFLAGS) -DMULTITHREAD $(CLIENTLIBFLAGS)
|
||||
MB_DIR=m_mgw$(BITS)
|
||||
MCL_DIR=mcl_mgw$(BITS)
|
||||
|
@ -1260,7 +1274,7 @@ ifeq (win,$(findstring win,$(FTE_TARGET))$(findstring _SDL,$(FTE_TARGET)))
|
|||
D3DCL_OBJS=$(D3DQUAKE_OBJS) $(D3DGL_OBJS) $(BOTLIB_OBJS) $(WINDOWS_OBJS)
|
||||
D3D_EXE_NAME=../fted3dqw$(BITS)$(EXEPOSTFIX)
|
||||
D3DCL_EXE_NAME=../fted3dclqw$(BITS)$(EXEPOSTFIX)
|
||||
D3D_LDFLAGS=$(IMAGELDFLAGS) $(CLIENTLDDEPS) -ldxguid -lws2_32 -lwinmm -lgdi32 -lole32 -Wl,--subsystem,windows
|
||||
D3D_LDFLAGS=$(IMAGELDFLAGS) -ldxguid -lws2_32 -lwinmm -lgdi32 -lole32 -Wl,--subsystem,windows
|
||||
D3D_CFLAGS=$(D3DCFLAGS) $(W32_CFLAGS) $(DX7SDK) -DMULTITHREAD $(CLIENTLIBFLAGS)
|
||||
D3DB_DIR=d3d_mgw$(BITS)
|
||||
D3DCL_DIR=d3dcl_mgw$(BITS)
|
||||
|
@ -1268,7 +1282,7 @@ ifeq (win,$(findstring win,$(FTE_TARGET))$(findstring _SDL,$(FTE_TARGET)))
|
|||
VKCL_OBJS=$(GLQUAKE_OBJS) $(D3DGL_OBJS) $(BOTLIB_OBJS) $(WINDOWS_OBJS) gl_vidnt.o
|
||||
VK_EXE_NAME=../ftevkqw$(BITS)$(EXEPOSTFIX)
|
||||
VKCL_EXE_NAME=../ftevkclqw$(BITS)$(EXEPOSTFIX)
|
||||
VK_LDFLAGS=$(IMAGELDFLAGS) $(CLIENTLDDEPS) -ldxguid -lws2_32 -lwinmm -lgdi32 -lole32 -Wl,--subsystem,windows
|
||||
VK_LDFLAGS=$(IMAGELDFLAGS) -ldxguid -lws2_32 -lwinmm -lgdi32 -lole32 -Wl,--subsystem,windows
|
||||
VK_CFLAGS=$(VKCFLAGS) $(W32_CFLAGS) $(DX7SDK) -DMULTITHREAD $(CLIENTLIBFLAGS)
|
||||
VKB_DIR=vk_mgw$(BITS)
|
||||
VKCL_DIR=vkcl_mgw$(BITS)
|
||||
|
@ -1358,7 +1372,7 @@ ifneq (,$(findstring linux,$(FTE_TARGET)))
|
|||
GLCL_OBJS=$(GL_OBJS) $(D3DGL_OBJS) $(GLQUAKE_OBJS) $(BOTLIB_OBJS) gl_vidlinuxglx.o gl_vidwayland.o gl_videgl.o snd_alsa.o snd_linux.o snd_sdl.o cd_linux.o sys_linux.o sys_linux_threads.o
|
||||
GL_EXE_NAME=../$(EXE_NAME)-gl$(BITS)
|
||||
GLCL_EXE_NAME=../$(EXE_NAME)-glcl$(BITS)
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(XLDFLAGS) $(CLIENTLDDEPS)
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(XLDFLAGS)
|
||||
GL_CFLAGS=$(GLCFLAGS) -I/usr/X11R6/include $(CL_CFLAGS) $(CLIENTLIBFLAGS)
|
||||
GLB_DIR=gl_linux$(BITS)
|
||||
GLCL_DIR=glcl_linux$(BITS)
|
||||
|
@ -1366,7 +1380,7 @@ ifneq (,$(findstring linux,$(FTE_TARGET)))
|
|||
VKCL_OBJS=$(GL_OBJS) $(D3DGL_OBJS) $(GLQUAKE_OBJS) $(BOTLIB_OBJS) gl_vidlinuxglx.o gl_vidwayland.o gl_videgl.o snd_alsa.o snd_linux.o snd_sdl.o cd_linux.o sys_linux.o sys_linux_threads.o
|
||||
VK_EXE_NAME=../$(EXE_NAME)-vk$(BITS)
|
||||
VKCL_EXE_NAME=../$(EXE_NAME)-vkcl$(BITS)
|
||||
VK_LDFLAGS=$(GLLDFLAGS) $(XLDFLAGS) $(CLIENTLDDEPS)
|
||||
VK_LDFLAGS=$(GLLDFLAGS) $(XLDFLAGS)
|
||||
VK_CFLAGS=$(VKCFLAGS) -I/usr/X11R6/include $(CL_CFLAGS) $(CLIENTLIBFLAGS)
|
||||
VKB_DIR=vk_linux$(BITS)
|
||||
VKCL_DIR=vkcl_linux$(BITS)
|
||||
|
@ -1420,8 +1434,6 @@ ifneq ($(shell echo $(FTE_TARGET)|grep macosx),)
|
|||
GLCL_DIR=glcl_macosx$(EXTENSION)$(BITS)
|
||||
MINGL_DIR=mingl_macosx$(EXTENSION)$(BITS)
|
||||
|
||||
CLIENTLDDEPS=
|
||||
|
||||
GL_CFLAGS=$(GLCFLAGS) -D__MACOSX__ -L/sw/lib -I/sw/include -L/opt/local/lib -I/opt/local/include -I$(LIBS_DIR)
|
||||
ifeq ($(FTE_TARGET),macosx_x86)
|
||||
GL_CFLAGS=$(GLCFLAGS) -D__MACOSX__ -L/sw/lib -I/sw/include -L/opt/local/lib -I/opt/local/include -I$(LIBS_DIR)
|
||||
|
@ -1453,7 +1465,6 @@ ifeq ($(FTE_TARGET),morphos)
|
|||
|
||||
SV_DIR=sv_morphos
|
||||
SV_LDFLAGS=-ldl -lz
|
||||
CLIENTLDDEPS=
|
||||
|
||||
GLCL_OBJS=$(GL_OBJS) $(D3DGL_OBJS) $(GLQUAKE_OBJS) $(BOTLIB_OBJS) gl_vidmorphos.o in_morphos.o snd_morphos.o cd_null.o sys_morphos.o
|
||||
GL_EXE_NAME=../$(EXE_NAME)-morphos-gl
|
||||
|
@ -1490,7 +1501,6 @@ ifeq ($(FTE_TARGET),dos)
|
|||
VKCL_DIR=vkcl_dos
|
||||
|
||||
IMAGELDFLAGS=
|
||||
CLIENTLDDEPS=
|
||||
|
||||
SOFTWARE_OBJS=sw_rast.o sw_backend.o sw_image.o
|
||||
|
||||
|
@ -1513,7 +1523,7 @@ ifeq ($(FTE_TARGET),cyg)
|
|||
GLCL_OBJS=$(GL_OBJS) $(D3DGL_OBJS) $(GLQUAKE_OBJS) $(BOTLIB_OBJS) gl_vidlinuxglx.o snd_linux.o cd_null.o sys_linux.o sys_linux_threads.o
|
||||
GL_EXE_NAME=../$(EXE_NAME)-cyg-gl$(EXEPOSTFIX)
|
||||
GLCL_EXE_NAME=../$(EXE_NAME)-cyg-glcl$(EXEPOSTFIX)
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(XLDFLAGS) $(CLIENTLDDEPS) -lz -lltdl
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(XLDFLAGS) -lz -lltdl
|
||||
GL_CFLAGS=$(GLCFLAGS) -I/usr/X11R6/include $(CLIENTLIBFLAGS) -DUSE_LIBTOOL
|
||||
GLB_DIR=gl_cygwin
|
||||
GLCL_DIR=glcl_cygwin
|
||||
|
@ -1521,7 +1531,7 @@ ifeq ($(FTE_TARGET),cyg)
|
|||
MCL_OBJS=$(D3DGL_OBJS) $(GLQUAKE_OBJS) $(SOFTWARE_OBJS) $(BOTLIB_OBJS) gl_vidlinuxglx.o snd_linux.o cd_null.o sys_linux.o sys_linux_threads.o
|
||||
M_EXE_NAME=../$(EXE_NAME)-cyg$(EXEPOSTFIX)
|
||||
MCL_EXE_NAME=../$(EXE_NAME)-cyg-cl$(EXEPOSTFIX)
|
||||
M_LDFLAGS=$(GLLDFLAGS) $(XLDFLAGS) $(CLIENTLDDEPS) -lz -lltdl
|
||||
M_LDFLAGS=$(GLLDFLAGS) $(XLDFLAGS) -lz -lltdl
|
||||
M_CFLAGS=$(GLCFLAGS) $(CLIENTLIBFLAGS) -DUSE_LIBTOOL
|
||||
MB_DIR=m_cygwin
|
||||
MCL_DIR=mcl_cygwin
|
||||
|
@ -1534,6 +1544,10 @@ endif
|
|||
|
||||
ifeq ($(FTE_TARGET),droid)
|
||||
BASELDFLAGS=-lz
|
||||
|
||||
#erk! FIXME!
|
||||
CLIENTLDDEPS=
|
||||
SERVERLDDEPS=
|
||||
|
||||
SYS_DROID_O=sys_droid.o sys_linux_threads.o
|
||||
GL_DROID_O=gl_viddroid.o $(SYS_DROID_O)
|
||||
|
@ -1598,11 +1612,12 @@ ifeq ($(FTE_TARGET),web)
|
|||
GLB_DIR=gl_web
|
||||
GL_EXE_NAME=../ftewebgl.js
|
||||
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(IMAGELDFLAGS) $(CLIENTLDDEPS)
|
||||
GL_LDFLAGS=$(GLLDFLAGS) $(IMAGELDFLAGS)
|
||||
GL_CFLAGS=$(GLCFLAGS)
|
||||
|
||||
IMAGELDFLAGS=
|
||||
CLIENTLDDEPS=
|
||||
SERVERLDDEPS=
|
||||
|
||||
BOTLIB_CFLAGS=
|
||||
#generate deps properly
|
||||
|
@ -1756,7 +1771,7 @@ _cl-profile: reldir
|
|||
@$(MAKE) _out-profile EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" WCFLAGS="$(CLIENT_ONLY_CFLAGS) $(WCFLAGS)" LDFLAGS="$(LDFLAGS)" SOBJS="$(SOBJS)" OBJS="SOBJS COMMON_OBJS CLIENT_OBJS PROGS_OBJS"
|
||||
|
||||
_clsv-rel: reldir
|
||||
@$(MAKE) _out-rel EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" WCFLAGS="$(JOINT_CFLAGS) $(WCFLAGS)" LDFLAGS="$(LDFLAGS)" SOBJS="$(SOBJS)" OBJS="SOBJS COMMON_OBJS CLIENT_OBJS PROGS_OBJS SERVER_OBJS"
|
||||
$(DO_ECHO) $(MAKE) _out-rel EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" WCFLAGS="$(JOINT_CFLAGS) $(WCFLAGS)" LDFLAGS="$(LDFLAGS)" SOBJS="$(SOBJS)" OBJS="SOBJS COMMON_OBJS CLIENT_OBJS PROGS_OBJS SERVER_OBJS"
|
||||
|
||||
_clsv-dbg: debugdir
|
||||
@$(MAKE) _out-dbg EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" WCFLAGS="$(JOINT_CFLAGS) $(WCFLAGS)" LDFLAGS="$(LDFLAGS)" SOBJS="$(SOBJS)" OBJS="SOBJS COMMON_OBJS CLIENT_OBJS PROGS_OBJS SERVER_OBJS"
|
||||
|
@ -1765,7 +1780,7 @@ _clsv-profile: reldir
|
|||
@$(MAKE) _out-profile EXE_NAME="$(EXE_NAME)" OUT_DIR="$(OUT_DIR)" WCFLAGS="$(JOINT_CFLAGS) $(WCFLAGS)" LDFLAGS="$(LDFLAGS)" SOBJS="$(SOBJS)" OBJS="SOBJS COMMON_OBJS CLIENT_OBJS PROGS_OBJS SERVER_OBJS"
|
||||
|
||||
sv-tmp: reldir debugdir
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(SV_EXE_NAME)" WCFLAGS="$(SV_CFLAGS)" LDFLAGS="$(ARCH_LDFLAGS) $(SV_LDFLAGS) $(LDFLAGS)" OBJS="SV_OBJS"
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(SV_EXE_NAME)" WCFLAGS="$(SV_CFLAGS)" LDFLAGS="$(ARCH_LDFLAGS) $(SV_LDFLAGS) $(LDFLAGS) $(SERVERLDDEPS)" OBJS="SV_OBJS"
|
||||
sv-rel:
|
||||
@$(MAKE) sv-tmp TYPE=_out-rel OUT_DIR="$(RELEASE_DIR)/$(NCDIRPREFIX)$(SV_DIR)"
|
||||
sv-dbg:
|
||||
|
@ -1774,9 +1789,9 @@ sv-profile:
|
|||
@$(MAKE) sv-tmp TYPE=_out-profile OUT_DIR="$(PROFILE_DIR)/$(NCDIRPREFIX)$(SV_DIR)"
|
||||
|
||||
d3dcl-tmp:
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(D3DCL_EXE_NAME)" WCFLAGS="$(D3D_CFLAGS)" LDFLAGS="$(D3D_LDFLAGS) $(LDFLAGS)" SOBJS="$(D3DCL_OBJS)"
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(D3DCL_EXE_NAME)" WCFLAGS="$(D3D_CFLAGS)" LDFLAGS="$(D3D_LDFLAGS) $(LDFLAGS) $(CLIENTLDDEPS)" SOBJS="$(D3DCL_OBJS)"
|
||||
d3d-tmp:
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(D3D_EXE_NAME)" WCFLAGS="$(D3D_CFLAGS)" LDFLAGS="$(D3D_LDFLAGS) $(LDFLAGS)" SOBJS="$(D3DCL_OBJS)"
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(D3D_EXE_NAME)" WCFLAGS="$(D3D_CFLAGS)" LDFLAGS="$(D3D_LDFLAGS) $(LDFLAGS) $(CLIENTLDDEPS)" SOBJS="$(D3DCL_OBJS)"
|
||||
|
||||
d3dcl-rel:
|
||||
@$(MAKE) d3dcl-tmp TYPE=_cl-rel OUT_DIR="$(RELEASE_DIR)/$(NCDIRPREFIX)$(D3DCL_DIR)"
|
||||
|
@ -1795,9 +1810,9 @@ d3d-profile:
|
|||
|
||||
|
||||
vkcl-tmp:
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(VKCL_EXE_NAME)" WCFLAGS="$(VK_CFLAGS)" LDFLAGS="$(VK_LDFLAGS) $(LDFLAGS)" SOBJS="$(VKCL_OBJS)"
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(VKCL_EXE_NAME)" WCFLAGS="$(VK_CFLAGS)" LDFLAGS="$(VK_LDFLAGS) $(LDFLAGS) $(CLIENTLDDEPS)" SOBJS="$(VKCL_OBJS)"
|
||||
vk-tmp:
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(VK_EXE_NAME)" WCFLAGS="$(VK_CFLAGS)" LDFLAGS="$(VK_LDFLAGS) $(LDFLAGS)" SOBJS="$(VKCL_OBJS)"
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(VK_EXE_NAME)" WCFLAGS="$(VK_CFLAGS)" LDFLAGS="$(VK_LDFLAGS) $(LDFLAGS) $(CLIENTLDDEPS)" SOBJS="$(VKCL_OBJS)"
|
||||
|
||||
vkcl-rel:
|
||||
@$(MAKE) vkcl-tmp TYPE=_cl-rel OUT_DIR="$(RELEASE_DIR)/$(NCDIRPREFIX)$(VKCL_DIR)"
|
||||
|
@ -1815,9 +1830,9 @@ vk-profile:
|
|||
|
||||
|
||||
glcl-tmp:
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(GLCL_EXE_NAME)" WCFLAGS="$(GL_CFLAGS)" LDFLAGS="$(GL_LDFLAGS) $(LDFLAGS)" SOBJS="$(GLCL_OBJS)"
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(GLCL_EXE_NAME)" WCFLAGS="$(GL_CFLAGS)" LDFLAGS="$(GL_LDFLAGS) $(LDFLAGS) $(CLIENTLDDEPS)" SOBJS="$(GLCL_OBJS)"
|
||||
gl-tmp:
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(GL_EXE_NAME)" WCFLAGS="$(GL_CFLAGS)" LDFLAGS="$(GL_LDFLAGS) $(LDFLAGS)" SOBJS="$(GLCL_OBJS)"
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(GL_EXE_NAME)" WCFLAGS="$(GL_CFLAGS)" LDFLAGS="$(GL_LDFLAGS) $(LDFLAGS) $(CLIENTLDDEPS)" SOBJS="$(GLCL_OBJS)"
|
||||
|
||||
glcl-rel:
|
||||
@$(MAKE) glcl-tmp TYPE=_cl-rel OUT_DIR="$(RELEASE_DIR)/$(NCDIRPREFIX)$(GLCL_DIR)"
|
||||
|
@ -1833,7 +1848,7 @@ gl-profile:
|
|||
@$(MAKE) gl-tmp TYPE=_clsv-profile OUT_DIR="$(PROFILE_DIR)/$(NCDIRPREFIX)$(GLB_DIR)"
|
||||
|
||||
mingl-tmp: reldir
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(MINGL_EXE_NAME)" WCFLAGS="$(GL_CFLAGS) -DMINIMAL" LDFLAGS="$(GL_LDFLAGS) $(LDFLAGS)" SOBJS="$(GLCL_OBJS)"
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(MINGL_EXE_NAME)" WCFLAGS="$(GL_CFLAGS) -DMINIMAL" LDFLAGS="$(GL_LDFLAGS) $(LDFLAGS) $(CLIENTLDDEPS)" SOBJS="$(GLCL_OBJS)"
|
||||
mingl-rel:
|
||||
@$(MAKE) mingl-tmp TYPE=_cl-rel OUT_DIR="$(RELEASE_DIR)/$(NCDIRPREFIX)$(MINGL_DIR)"
|
||||
mingl-dbg:
|
||||
|
@ -1842,9 +1857,9 @@ mingl-profile:
|
|||
@$(MAKE) mingl-tmp TYPE=_cl-profile OUT_DIR="$(PROFILE_DIR)/$(NCDIRPREFIX)$(MINGL_DIR)"
|
||||
|
||||
mcl-tmp:
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(MCL_EXE_NAME)" WCFLAGS="$(M_CFLAGS)" LDFLAGS="$(M_LDFLAGS) $(LDFLAGS)" SOBJS="$(MCL_OBJS)"
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(MCL_EXE_NAME)" WCFLAGS="$(M_CFLAGS)" LDFLAGS="$(M_LDFLAGS) $(LDFLAGS) $(CLIENTLDDEPS)" SOBJS="$(MCL_OBJS)"
|
||||
m-tmp:
|
||||
@$(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(M_EXE_NAME)" WCFLAGS="$(M_CFLAGS)" LDFLAGS="$(M_LDFLAGS) $(LDFLAGS)" SOBJS="$(MCL_OBJS)"
|
||||
$(DO_ECHO) $(MAKE) $(TYPE) OUT_DIR="$(OUT_DIR)" EXE_NAME="$(M_EXE_NAME)" WCFLAGS="$(M_CFLAGS)" LDFLAGS="$(M_LDFLAGS) $(LDFLAGS) $(CLIENTLDDEPS)" SOBJS="$(MCL_OBJS)"
|
||||
|
||||
mcl-rel:
|
||||
@$(MAKE) mcl-tmp TYPE=_cl-rel OUT_DIR="$(RELEASE_DIR)/$(NCDIRPREFIX)$(MCL_DIR)"
|
||||
|
@ -1853,7 +1868,7 @@ mcl-dbg:
|
|||
mcl-profile:
|
||||
@$(MAKE) mcl-tmp TYPE=_cl-profile OUT_DIR="$(PROFILE_DIR)/$(NCDIRPREFIX)$(MCL_DIR)"
|
||||
m-rel:
|
||||
@$(MAKE) m-tmp TYPE=_clsv-rel OUT_DIR="$(RELEASE_DIR)/$(NCDIRPREFIX)$(MB_DIR)"
|
||||
$(DO_ECHO) $(MAKE) m-tmp TYPE=_clsv-rel OUT_DIR="$(RELEASE_DIR)/$(NCDIRPREFIX)$(MB_DIR)"
|
||||
m-dbg:
|
||||
@$(MAKE) m-tmp TYPE=_clsv-dbg OUT_DIR="$(DEBUG_DIR)/$(NCDIRPREFIX)$(MB_DIR)"
|
||||
m-profile:
|
||||
|
@ -2189,8 +2204,8 @@ libs-$(ARCH)/libfreetype.a:
|
|||
-test -f libs-$(ARCH)/libfreetype.a || (mkdir -p libs-$(ARCH) && cd libs-$(ARCH) && tar -xvzf ../freetype-$(FREETYPEVER).tar.gz && cd freetype-$(FREETYPEVER) && CFLAGS="$(CFLAGS) -Os" $(TOOLOVERRIDES) ./configure $(CONFIGARGS) && $(TOOLOVERRIDES) $(MAKE) && cp objs/.libs/libfreetype.a ../ && cp -r include/ ../)
|
||||
|
||||
libs-$(ARCH)/libBulletDynamics.a:
|
||||
test -f bullet3-$(BULLETVER).tar.gz || wget https://github.com/bulletphysics/bullet3/archive/$(BULLETVER).tar.gz
|
||||
-test -f libs-$(ARCH)/libBulletDynamics.a || (mkdir -p libs-$(ARCH) && cd libs-$(ARCH) && tar -xvzf ../bullet3-$(BULLETVER).tar.gz && cd bullet3-$(BULLETVER) && CFLAGS="$(CFLAGS) -Os" $(TOOLOVERRIDES) cmake . && $(TOOLOVERRIDES) $(MAKE) LinearMath BulletDynamics BulletCollision && cp src/LinearMath/libLinearMath.a src/BulletDynamics/libBulletDynamics.a src/BulletCollision/libBulletCollision.a src/btBulletCollisionCommon.h src/btBulletDynamicsCommon.h ..)
|
||||
test -f bullet3-$(BULLETVER).tar.gz || wget https://github.com/bulletphysics/bullet3/archive/$(BULLETVER).tar.gz -O bullet3-$(BULLETVER).tar.gz
|
||||
-test -f libs-$(ARCH)/libBulletDynamics.a || (mkdir -p libs-$(ARCH) && cd libs-$(ARCH) && tar -xvzf ../bullet3-$(BULLETVER).tar.gz && cd bullet3-$(BULLETVER) && CFLAGS="$(CFLAGS) -Os" $(TOOLOVERRIDES) $(DO_CMAKE) . && $(TOOLOVERRIDES) $(MAKE) LinearMath BulletDynamics BulletCollision && cp src/LinearMath/libLinearMath.a src/BulletDynamics/libBulletDynamics.a src/BulletCollision/libBulletCollision.a src/btBulletCollisionCommon.h src/btBulletDynamicsCommon.h ..)
|
||||
|
||||
makelibs: libs-$(ARCH)/libjpeg.a libs-$(ARCH)/libz.a libs-$(ARCH)/libpng.a libs-$(ARCH)/libogg.a libs-$(ARCH)/libvorbis.a libs-$(ARCH)/libopus.a libs-$(ARCH)/libspeex.a libs-$(ARCH)/libspeexdsp.a libs-$(ARCH)/libfreetype.a $(MAKELIBS)
|
||||
|
||||
|
|
|
@ -2911,7 +2911,7 @@ char *COM_DeFunString(conchar_t *str, conchar_t *stop, char *out, int outsize, q
|
|||
}
|
||||
if (d & CON_2NDCHARSETTEXT)
|
||||
{ //FIXME: convert to quake glyphs...
|
||||
if (!com_parseutf8.ival && !forceutf8 && codepoint >= 0 && codepoint <= 255)
|
||||
if (!com_parseutf8.ival && !forceutf8 && codepoint <= 255)
|
||||
{ //strip the flag and encode it in private use (so it gets encoded as quake-compatible)
|
||||
d &= ~CON_2NDCHARSETTEXT;
|
||||
codepoint |= 0xe000;
|
||||
|
|
|
@ -25,10 +25,6 @@
|
|||
#define USE_INTERNAL_BULLET
|
||||
#undef MENU_NATIVECODE // Will make a debut eventually, hopefully
|
||||
|
||||
#if defined(WIN32)
|
||||
#define FREETYPE_STATIC
|
||||
#endif
|
||||
|
||||
// What do we use
|
||||
#ifndef GLQUAKE
|
||||
#define GLQUAKE
|
||||
|
@ -177,7 +173,9 @@
|
|||
#ifdef USE_INTERNAL_BULLET //makefile will respond to this by trying to link bullet into the engine itself, instead of as a plugin.
|
||||
-DLINK_INTERNAL_BULLET
|
||||
#endif
|
||||
|
||||
#if defined(FTE_TARGET_win32) || defined(FTE_TARGET_win64)
|
||||
-DLINK_FREETYPE
|
||||
#endif
|
||||
|
||||
-DNO_SPEEX //disable static speex
|
||||
#ifndef BOTLIB_STATIC
|
||||
|
|
|
@ -104,8 +104,10 @@ void *Sys_CreateThread(char *name, int (*func)(void *), void *args, int priority
|
|||
thread = NULL;
|
||||
}
|
||||
pthread_attr_destroy(&attr);
|
||||
#if defined(DEBUG) && defined(__USE_GNU) && __GLIBC_PREREQ(2,12)
|
||||
#if defined(DEBUG) && defined(__USE_GNU) && defined(__GLIBC_PREREQ)
|
||||
#if __GLIBC_PREREQ(2,12)
|
||||
pthread_setname_np(*thread, name);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
return (void *)thread;
|
||||
|
@ -132,8 +134,10 @@ void *Sys_CreateThread(char *name, int (*func)(void *), void *args, int priority
|
|||
}
|
||||
pthread_attr_destroy(&attr);
|
||||
|
||||
#if defined(DEBUG) && defined(__USE_GNU) && __GLIBC_PREREQ(2,12)
|
||||
#if defined(DEBUG) && defined(__USE_GNU) && defined(__GLIBC_PREREQ)
|
||||
#if __GLIBC_PREREQ(2,12)
|
||||
pthread_setname_np(*thread, name);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
return (void *)thread;
|
||||
|
|
|
@ -483,10 +483,12 @@ void SV_Map_f (void)
|
|||
char *nextserver;
|
||||
qboolean preserveplayers= false;
|
||||
qboolean isrestart = false; //don't hurt settings
|
||||
#ifdef SAVEDGAMES
|
||||
qboolean newunit = false; //no hubcache
|
||||
qboolean q2savetos0 = false;
|
||||
#endif
|
||||
qboolean flushparms = false; //flush parms+serverflags
|
||||
qboolean cinematic = false; //new map is .cin / .roq or something
|
||||
qboolean q2savetos0 = false;
|
||||
#ifdef Q3SERVER
|
||||
qboolean q3singleplayer = false; //forces g_gametype to 2 (otherwise clears if it was 2).
|
||||
#endif
|
||||
|
@ -531,12 +533,14 @@ void SV_Map_f (void)
|
|||
startspot = ((Cmd_Argc() == 2)?NULL:Cmd_Argv(2));
|
||||
}
|
||||
|
||||
q2savetos0 = !strcmp(Cmd_Argv(0), "gamemap") && !isDedicated; //q2
|
||||
#ifdef Q3SERVER
|
||||
q3singleplayer = !strcmp(Cmd_Argv(0), "spmap");
|
||||
#endif
|
||||
flushparms = !strcmp(Cmd_Argv(0), "map") || !strcmp(Cmd_Argv(0), "spmap");
|
||||
#ifdef SAVEDGAMES
|
||||
newunit = flushparms || (!strcmp(Cmd_Argv(0), "changelevel") && !startspot);
|
||||
q2savetos0 = !strcmp(Cmd_Argv(0), "gamemap") && !isDedicated; //q2
|
||||
#endif
|
||||
|
||||
sv.mapchangelocked = false;
|
||||
|
||||
|
@ -576,8 +580,10 @@ void SV_Map_f (void)
|
|||
Q_strncpyz(level, svs.name, sizeof(level));
|
||||
isrestart = true;
|
||||
flushparms = false;
|
||||
#ifdef SAVEDGAMES
|
||||
newunit = false;
|
||||
q2savetos0 = false;
|
||||
#endif
|
||||
|
||||
if (!*level)
|
||||
{
|
||||
|
@ -615,7 +621,9 @@ void SV_Map_f (void)
|
|||
if (*level == '*')
|
||||
{
|
||||
memmove(level, level+1, strlen(level));
|
||||
#ifdef SAVEDGAMES
|
||||
newunit=true;
|
||||
#endif
|
||||
}
|
||||
#ifndef SERVERONLY
|
||||
SCR_ImageName(level);
|
||||
|
@ -1862,7 +1870,9 @@ static void SV_Status_f (void)
|
|||
|
||||
int columns = 80;
|
||||
extern cvar_t sv_listen_qw;
|
||||
#if defined(TCPCONNECT) && !defined(CLIENTONLY)
|
||||
extern cvar_t net_enable_tls, net_enable_http, net_enable_webrtcbroker, net_enable_websockets, net_enable_qizmo, net_enable_qtv;
|
||||
#endif
|
||||
#ifdef NQPROT
|
||||
extern cvar_t sv_listen_nq, sv_listen_dp;
|
||||
#endif
|
||||
|
@ -1936,6 +1946,7 @@ static void SV_Status_f (void)
|
|||
else if (net_enable_dtls.ival)
|
||||
Con_Printf(" DTLS");
|
||||
#endif
|
||||
#if defined(TCPCONNECT) && !defined(CLIENTONLY)
|
||||
if (net_enable_tls.ival)
|
||||
Con_Printf(" TLS");
|
||||
if (net_enable_http.ival)
|
||||
|
@ -1948,6 +1959,7 @@ static void SV_Status_f (void)
|
|||
Con_Printf(" QZ");
|
||||
if (net_enable_qtv.ival)
|
||||
Con_Printf(" QTV");
|
||||
#endif
|
||||
Con_Printf("\n");
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -1032,7 +1032,7 @@ void SV_MulticastProtExt(vec3_t origin, multicast_t to, int dimension_mask, int
|
|||
{
|
||||
if (oneclient != split)
|
||||
{
|
||||
if (split->spectator && split->spec_track >= 0 && oneclient == &svs.clients[split->spec_track])
|
||||
if (andspecs && split->spectator && split->spec_track >= 0 && oneclient == &svs.clients[split->spec_track])
|
||||
;
|
||||
else
|
||||
continue;
|
||||
|
|
|
@ -57,6 +57,7 @@ static int VectorCompare (const vec3_t v1, const vec3_t v2)
|
|||
static rbeplugfuncs_t *rbefuncs;
|
||||
|
||||
|
||||
|
||||
//============================================================================
|
||||
// physics engine support
|
||||
//============================================================================
|
||||
|
@ -66,6 +67,13 @@ static rbeplugfuncs_t *rbefuncs;
|
|||
|
||||
#include "btBulletDynamicsCommon.h"
|
||||
|
||||
//not sure where these are going. seems to be an issue only on windows.
|
||||
#ifndef max
|
||||
#define max(a,b) ((a) > (b) ? (a) : (b))
|
||||
#endif
|
||||
#ifndef min
|
||||
#define min(a,b) ((a) < (b) ? (a) : (b))
|
||||
#endif
|
||||
|
||||
static void World_Bullet_RunCmd(world_t *world, rbecommandqueue_t *cmd);
|
||||
|
||||
|
@ -341,7 +349,8 @@ static void World_Bullet_Frame_JointFromEntity(world_t *world, wedict_t *ed)
|
|||
int enemy = 0, aiment = 0;
|
||||
wedict_t *e1, *e2;
|
||||
// vec_t CFM, ERP, FMax;
|
||||
vec_t Stop, Vel;
|
||||
vec_t Stop;
|
||||
// vec_t Vel;
|
||||
vec3_t forward;
|
||||
movetype = (int)ed->v->movetype;
|
||||
jointtype = (int)ed->xv->jointtype;
|
||||
|
@ -371,7 +380,7 @@ static void World_Bullet_Frame_JointFromEntity(world_t *world, wedict_t *ed)
|
|||
// float R = 2.0 * D * sqrt(K); // we assume D is premultiplied by sqrt(sprungMass)
|
||||
// CFM = 1.0 / (rbe->ode_step * K + R); // always > 0
|
||||
// ERP = rbe->ode_step * K * CFM;
|
||||
Vel = 0;
|
||||
// Vel = 0;
|
||||
// FMax = 0;
|
||||
Stop = movedir[2];
|
||||
}
|
||||
|
@ -379,7 +388,7 @@ static void World_Bullet_Frame_JointFromEntity(world_t *world, wedict_t *ed)
|
|||
{
|
||||
// CFM = 0;
|
||||
// ERP = 0;
|
||||
Vel = movedir[0];
|
||||
// Vel = movedir[0];
|
||||
// FMax = -movedir[1]; // TODO do we need to multiply with world.physics.ode_step?
|
||||
Stop = movedir[2] > 0 ? movedir[2] : BT_INFINITY;
|
||||
}
|
||||
|
@ -387,7 +396,7 @@ static void World_Bullet_Frame_JointFromEntity(world_t *world, wedict_t *ed)
|
|||
{
|
||||
// CFM = 0;
|
||||
// ERP = 0;
|
||||
Vel = 0;
|
||||
// Vel = 0;
|
||||
// FMax = 0;
|
||||
Stop = BT_INFINITY;
|
||||
}
|
||||
|
@ -573,9 +582,10 @@ static qboolean QDECL World_Bullet_RagCreateBody(world_t *world, rbebody_t *body
|
|||
{
|
||||
btRigidBody *body = NULL;
|
||||
btCollisionShape *geom = NULL;
|
||||
float radius, length;
|
||||
float radius;
|
||||
// float length;
|
||||
bulletcontext_t *ctx = (bulletcontext_t*)world->rbe;
|
||||
int axisindex;
|
||||
// int axisindex;
|
||||
ctx->hasextraobjs = true;
|
||||
|
||||
switch(bodyinfo->geomshape)
|
||||
|
@ -617,7 +627,7 @@ static qboolean QDECL World_Bullet_RagCreateBody(world_t *world, rbebody_t *body
|
|||
break;
|
||||
*/
|
||||
default:
|
||||
Con_DPrintf("World_Bullet_RagCreateBody: unsupported geomshape\n", bodyinfo->geomshape);
|
||||
Con_DPrintf("World_Bullet_RagCreateBody: unsupported geomshape %i\n", bodyinfo->geomshape);
|
||||
case GEOMTYPE_BOX:
|
||||
geom = new btBoxShape(btVector3(bodyinfo->dimensions[0], bodyinfo->dimensions[1], bodyinfo->dimensions[2]) * 0.5);
|
||||
break;
|
||||
|
@ -756,7 +766,7 @@ static void QDECL World_Bullet_RagMatrixFromJoint(rbejoint_t *joint, rbejointinf
|
|||
|
||||
static void QDECL World_Bullet_RagMatrixFromBody(world_t *world, rbebody_t *bodyptr, float *mat)
|
||||
{
|
||||
bulletcontext_t *ctx = (bulletcontext_t*)world->rbe;
|
||||
// bulletcontext_t *ctx = (bulletcontext_t*)world->rbe;
|
||||
btRigidBody *body = (btRigidBody*)bodyptr->body;
|
||||
MatFromTransform(mat, body->getCenterOfMassTransform());
|
||||
}
|
||||
|
@ -971,9 +981,9 @@ static void World_Bullet_Frame_BodyFromEntity(world_t *world, wedict_t *ed)
|
|||
{
|
||||
bulletcontext_t *ctx = (bulletcontext_t*)world->rbe;
|
||||
btRigidBody *body = NULL;
|
||||
btScalar mass;
|
||||
// btScalar mass;
|
||||
float test;
|
||||
void *dataID;
|
||||
// void *dataID;
|
||||
model_t *model;
|
||||
int axisindex;
|
||||
int modelindex = 0;
|
||||
|
@ -993,13 +1003,13 @@ static void World_Bullet_Frame_BodyFromEntity(world_t *world, wedict_t *ed)
|
|||
vec3_t spinvelocity;
|
||||
vec3_t up;
|
||||
vec3_t velocity;
|
||||
vec_t f;
|
||||
// vec_t f;
|
||||
vec_t length;
|
||||
vec_t massval = 1.0f;
|
||||
// vec_t movelimit;
|
||||
vec_t radius;
|
||||
vec_t scale;
|
||||
vec_t spinlimit;
|
||||
// vec_t spinlimit;
|
||||
qboolean gravity;
|
||||
|
||||
geomtype = (int)ed->xv->geomtype;
|
||||
|
@ -1383,8 +1393,8 @@ static void World_Bullet_Frame_BodyFromEntity(world_t *world, wedict_t *ed)
|
|||
if (modified && body)
|
||||
{
|
||||
// dVector3 r[3];
|
||||
float entitymatrix[16];
|
||||
float bodymatrix[16];
|
||||
// float entitymatrix[16];
|
||||
// float bodymatrix[16];
|
||||
|
||||
#if 0
|
||||
Con_Printf("entity %i got changed by QC\n", (int) (ed - prog->edicts));
|
||||
|
@ -1608,6 +1618,7 @@ static void QDECL World_Bullet_Frame(world_t *world, double frametime, double gr
|
|||
struct bulletcontext_s *ctx = (struct bulletcontext_s*)world->rbe;
|
||||
if (world->rbe_hasphysicsents || ctx->hasextraobjs)
|
||||
{
|
||||
int iters;
|
||||
unsigned int i;
|
||||
wedict_t *ed;
|
||||
|
||||
|
@ -1642,7 +1653,10 @@ static void QDECL World_Bullet_Frame(world_t *world, double frametime, double gr
|
|||
|
||||
ctx->dworld->setGravity(btVector3(0, 0, -gravity));
|
||||
|
||||
ctx->dworld->stepSimulation(frametime, max(0, physics_bullet_maxiterationsperframe->value), 1/bound(1, physics_bullet_framerate->value, 500));
|
||||
iters=physics_bullet_maxiterationsperframe->value;
|
||||
if (iters < 0)
|
||||
iters = 0;
|
||||
ctx->dworld->stepSimulation(frametime, iters, 1/bound(1, physics_bullet_framerate->value, 500));
|
||||
|
||||
// set the tolerance for closeness of objects
|
||||
// dWorldSetContactSurfaceLayer(world->rbe.world, max(0, physics_bullet_contactsurfacelayer.value));
|
||||
|
@ -1722,6 +1736,7 @@ static void QDECL World_Bullet_PushCommand(world_t *world, rbecommandqueue_t *va
|
|||
ctx->cmdqueuetail = ctx->cmdqueuehead = cmd;
|
||||
}
|
||||
|
||||
/*
|
||||
static void QDECL World_Bullet_TraceEntity(world_t *world, vec3_t start, vec3_t end, wedict_t *ed)
|
||||
{
|
||||
struct bulletcontext_s *ctx = (struct bulletcontext_s*)world->rbe;
|
||||
|
@ -1740,6 +1755,7 @@ static void QDECL World_Bullet_TraceEntity(world_t *world, vec3_t start, vec3_t
|
|||
btTransform to(btMatrix3x3(1, 0, 0, 0, 1, 0, 0, 0, 1), btVector3(end[0], end[1], end[2]));
|
||||
ctx->dworld->convexSweepTest((btConvexShape*)shape, from, to, result, 1);
|
||||
}
|
||||
*/
|
||||
|
||||
static void QDECL World_Bullet_Start(world_t *world)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue