mirror of
https://github.com/nzp-team/fteqw.git
synced 2024-11-22 12:01:25 +00:00
CVS clients lie.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1040 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
59619dbf74
commit
7c133ec53f
1 changed files with 75 additions and 22 deletions
|
@ -10,8 +10,17 @@ ifeq ($(FTE_TARGET),) #user didn't specify prefered target
|
|||
else
|
||||
ifeq ($(shell uname),Linux)
|
||||
FTE_TARGET=linux
|
||||
#else I've no idea what it is you're running
|
||||
endif
|
||||
ifeq ($(shell uname),FreeBSD)
|
||||
FTE_TARGET=bsd
|
||||
endif
|
||||
ifeq ($(shell uname),NetBSD)
|
||||
FTE_TARGET=bsd
|
||||
endif
|
||||
ifeq ($(shell uname),OpenBSD)
|
||||
FTE_TARGET=bsd
|
||||
endif
|
||||
#else I've no idea what it is you're running
|
||||
endif
|
||||
|
||||
FTE_TARGET ?= sdl #so go for sdl.
|
||||
|
@ -35,7 +44,7 @@ QUX_DIR=$(BASE_DIR)/qux
|
|||
RELEASE_DIR=$(BASE_DIR)/release
|
||||
DEBUG_DIR=$(BASE_DIR)/debug
|
||||
|
||||
DO_CC=$(CC) $(BASE_CFLAGS) $(WCFLAGS) -o $@ -c $< $(CFLAGS)
|
||||
DO_CC=$(CC) $(CFLAGS) $(BASE_CFLAGS) $(WCFLAGS) -o $@ -c $<
|
||||
ifeq ($(USEASM),true)
|
||||
ifdef windir
|
||||
DO_AS=$(CC) $(BASE_CFLAGS) $(WCFLAGS) -x assembler-with-cpp -o $@ -c $< $(CFLAGS)
|
||||
|
@ -43,6 +52,7 @@ ifeq ($(USEASM),true)
|
|||
DO_AS=$(CC) $(BASE_CFLAGS) $(WCFLAGS) -x assembler-with-cpp -DELF -o $@ -c $< $(CFLAGS)
|
||||
endif
|
||||
endif
|
||||
BASELDFLAGS=-lm
|
||||
BASELDFLAGS=-lm -lz
|
||||
GLXLDFLAGS=-L/usr/X11R6/lib -lX11 -lXext -lpng -ljpeg -lXxf86vm
|
||||
GLSLDFLAGS=-L/usr/X11R6/lib -lMesaGL -lglide -lvga
|
||||
|
@ -117,6 +127,7 @@ CLIENT_OBJS = $(CLIENT_ASM_OBJS) \
|
|||
image.o \
|
||||
keys.o \
|
||||
menu.o \
|
||||
m_download.o \
|
||||
m_master.o \
|
||||
m_multi.o \
|
||||
m_items.o \
|
||||
|
@ -144,16 +155,10 @@ CLIENT_OBJS = $(CLIENT_ASM_OBJS) \
|
|||
view.o \
|
||||
wad.o \
|
||||
\
|
||||
pop3noti.o \
|
||||
imapnoti.o \
|
||||
\
|
||||
ftpclient.o \
|
||||
httpclient.o \
|
||||
\
|
||||
\
|
||||
m_x.o \
|
||||
x_reqs.o \
|
||||
x_res.o \
|
||||
pr_menu.o
|
||||
|
||||
|
||||
|
@ -263,12 +268,12 @@ SERVER_OBJS = \
|
|||
g72x.o \
|
||||
webgen.o \
|
||||
ftpserver.o \
|
||||
httpserver.o
|
||||
httpserver.o
|
||||
|
||||
SERVERONLY_OBJS = \
|
||||
svmodel.o \
|
||||
sv_sys_unix.o
|
||||
|
||||
|
||||
WINDOWSSERVERONLY_OBJS = \
|
||||
svmodel.o \
|
||||
sv_sys_win.o
|
||||
|
@ -294,7 +299,7 @@ COMMON_OBJS = $(COMMON_ASM_OBJS) \
|
|||
q1bsp.o \
|
||||
q2pmove.o
|
||||
|
||||
|
||||
|
||||
#the defaults for sdl come first
|
||||
GLCL_OBJS=$(GL_OBJS) $(GLQUAKE_OBJS) gl_vidsdl.o snd_sdl.o cd_sdl.o sys_sdl.o in_sdl.o
|
||||
GL_EXE_NAME=../fteqw_sdl.gl
|
||||
|
@ -315,7 +320,7 @@ ifdef windir
|
|||
SW_LDFLAGS=$(SWLDFLAGS) -lmingw32 -lwsock32 -lSDLmain -lSDL
|
||||
else
|
||||
#pthread is needed because of SDL.
|
||||
SW_LDFLAGS=$(SWLDFLAGS) `sdl-config --libs` -lpng -ljpeg -lSDLmain
|
||||
SW_LDFLAGS=$(SWLDFLAGS) `sdl-config --libs` -lpng -ljpeg
|
||||
endif
|
||||
SW_CFLAGS=$(SWCFLAGS) `sdl-config --cflags`
|
||||
SWB_DIR=sw_sdl
|
||||
|
@ -324,16 +329,16 @@ SWCL_DIR=swcl_sdl
|
|||
SV_OBJS=$(COMMON_OBJS) $(NQPROT_OBJS) $(SERVER_OBJS) $(PROGS_OBJS) $(SERVERONLY_OBJS)
|
||||
SV_EXE_NAME=../fteqw.sv
|
||||
SV_CFLAGS=$(SERVER_ONLY_CFLAGS)
|
||||
|
||||
|
||||
#specific targets override those defaults as needed.
|
||||
|
||||
|
||||
ifeq ($(FTE_TARGET),win32)
|
||||
LIBS_DIR = $(BASE_DIR)/libs
|
||||
SV_EXE_NAME=../fteqwsv.exe
|
||||
SV_LDFLAGS=libs/zlib.lib -lwsock32
|
||||
SV_DIR=sv_mingw
|
||||
SV_OBJS=$(COMMON_OBJS) $(NQPROT_OBJS) $(SERVER_OBJS) $(PROGS_OBJS) $(WINDOWSSERVERONLY_OBJS)
|
||||
|
||||
|
||||
ifeq ($(USEASM),true)
|
||||
GLCL_OBJS=$(GL_OBJS) $(GLQUAKE_OBJS) gl_vidnt.o snd_win.o cd_win.o in_win.o sys_win.o sys_dosa.o
|
||||
else
|
||||
|
@ -371,6 +376,49 @@ endif
|
|||
MCL_DIR=mcl_mgw
|
||||
|
||||
endif
|
||||
ifeq ($(FTE_TARGET),bsd)
|
||||
#mostly uses the linux stuff.
|
||||
#oss, X, etc.
|
||||
|
||||
SV_DIR=sv_linux
|
||||
SV_LDFLAGS=-lz
|
||||
|
||||
ifeq ($(USEASM),true)
|
||||
GLCL_OBJS=$(GL_OBJS) $(GLQUAKE_OBJS) gl_vidlinuxglx.o snd_linux.o cd_null.o sys_linux.o sys_dosa.o
|
||||
else
|
||||
GLCL_OBJS=$(GL_OBJS) $(GLQUAKE_OBJS) gl_vidlinuxglx.o snd_linux.o cd_null.o sys_linux.o
|
||||
endif
|
||||
GL_EXE_NAME=../fteqw.gl
|
||||
GLCL_EXE_NAME=../fteqwcl.gl
|
||||
GL_LDFLAGS= -L/usr/local/lib $(GLLDFLAGS) $(GLXLDFLAGS)
|
||||
GL_CFLAGS=$(GLCFLAGS) -I/usr/local/include
|
||||
GLB_DIR=gl_bsd
|
||||
GLCL_DIR=glcl_bsd
|
||||
|
||||
ifeq ($(USEASM),true)
|
||||
SWCL_OBJS=$(SOFTWARE_OBJS) vid_x.o snd_linux.o cd_null.o sys_linux.o sys_dosa.o
|
||||
else
|
||||
SWCL_OBJS=$(SOFTWARE_OBJS) vid_x.o snd_linux.o cd_null.o sys_linux.o
|
||||
endif
|
||||
SW_EXE_NAME=../fteqw.sw
|
||||
SWCL_EXE_NAME=../fteqwcl.sw
|
||||
SW_LDFLAGS=-L/usr/local/lib $(SWLDFLAGS) $(XLDFLAGS)
|
||||
SW_CFLAGS=$(SWCFLAGS) -I/usr/local/include
|
||||
SWB_DIR=sw_bsd
|
||||
SWCL_DIR=swcl_bsd
|
||||
|
||||
ifeq ($(USEASM),true)
|
||||
MCL_OBJS=$(GLQUAKE_OBJS) $(SOFTWARE_OBJS) gl_vidlinuxglx.o vid_x.o snd_linux.o cd_null.o sys_linux.o sys_dosa.o
|
||||
else
|
||||
MCL_OBJS=$(GLQUAKE_OBJS) $(SOFTWARE_OBJS) gl_vidlinuxglx.o vid_x.o snd_linux.o cd_null.o sys_linux.o
|
||||
endif
|
||||
M_EXE_NAME=../fteqw
|
||||
MCL_EXE_NAME=../fteqwcl
|
||||
M_LDFLAGS=$(GLLDFLAGS) $(GLXLDFLAGS)
|
||||
M_CFLAGS=$(SWCFLAGS) $(GLCFLAGS)
|
||||
MB_DIR=m_bsd
|
||||
MCL_DIR=mcl_bsd
|
||||
endif
|
||||
ifeq ($(FTE_TARGET),linux)
|
||||
|
||||
SV_DIR=sv_linux
|
||||
|
@ -425,19 +473,24 @@ VPATH = $(BASE_DIR) : $(CLIENT_DIR) : $(GL_DIR) : $(COMMON_DIR) : $(SW_DIR) : $(
|
|||
|
||||
|
||||
$(OUT_DIR)/%.o : %.c
|
||||
$(DO_CC)
|
||||
$(DO_CC) -I$(OUT_DIR)
|
||||
|
||||
ifeq ($(USEASM),true)
|
||||
$(OUT_DIR)/%.o : %.s sw/*.h
|
||||
$(DO_AS)
|
||||
endif
|
||||
|
||||
#enables use of precompiled headers in gcc 3.4 onwards.
|
||||
$(OUT_DIR)/quakedef.h.gch : quakedef.h
|
||||
$(CC) -x c $(BASE_CFLAGS) $(WCFLAGS) -o $@ -c $< $(CFLAGS)
|
||||
|
||||
#addprefix is to add the ./release/server/ part of the object name
|
||||
#foreach is needed as the OBJS is a list of variable names containing object lists.
|
||||
#which is needed as windows sucks too much for the chaining to carry a full list.
|
||||
#god knows how gcc loads the list properly.
|
||||
#or at least I hope he does. It makes no sence to mortals.
|
||||
$(OUT_DIR)/$(EXE_NAME): $(addprefix $(OUT_DIR)/, $(CUSTOMOBJS) $(foreach ol, $(OBJS), $($(ol))))
|
||||
|
||||
$(OUT_DIR)/$(EXE_NAME): $(OUT_DIR)/quakedef.h.gch $(addprefix $(OUT_DIR)/, $(CUSTOMOBJS) $(foreach ol, $(OBJS), $($(ol))))
|
||||
$(CC) $(WCFLAGS) -o $@ $(addprefix $(OUT_DIR)/, $(CUSTOMOBJS) $(foreach ol, $(OBJS), $($(ol)))) $(LDFLAGS) $(CFLAGS)
|
||||
|
||||
_out-rel:
|
||||
|
@ -466,7 +519,7 @@ sv-rel:
|
|||
$(MAKE) sv-tmp TYPE=_out-rel OUT_DIR="$(RELEASE_DIR)/$(SV_DIR)"
|
||||
sv-dbg:
|
||||
$(MAKE) sv-tmp TYPE=_out-dbg OUT_DIR="$(DEBUG_DIR)/$(SV_DIR)"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -536,13 +589,13 @@ debugdir:
|
|||
@-mkdir $(OUT_DIR)
|
||||
endif
|
||||
|
||||
ifneq ($(shell grep all ../plugins/Makefile),)
|
||||
plugins:
|
||||
ifneq ($(shell grep all ../plugins/Makefile),)
|
||||
$(MAKE) -C ../plugins
|
||||
else
|
||||
plugins:
|
||||
else
|
||||
@-echo no plugins directory installed
|
||||
endif
|
||||
endif
|
||||
plugins:
|
||||
|
||||
help:
|
||||
@-echo "Specfic targets:"
|
||||
|
|
Loading…
Reference in a new issue