###### Sound and audio CD #####
-OBJ_SND_COMMON=snd_main.o snd_mem.o snd_mix.o snd_ogg.o snd_wav.o snd_modplug.o
+OBJ_SND_COMMON=snd_main.o snd_mem.o snd_mix.o snd_ogg.o snd_wav.o
# No sound
OBJ_SND_NULL=snd_null.o
# Open Sound System (Linux, FreeBSD and Solaris)
OBJ_SND_OSS=$(OBJ_SND_COMMON) snd_oss.o
-LIB_SND_OSS=$(LIB_SND_MODPLUG)
+LIB_SND_OSS=
# Advanced Linux Sound Architecture (Linux)
OBJ_SND_ALSA=$(OBJ_SND_COMMON) snd_alsa.o
-LIB_SND_ALSA=-lasound $(LIB_SND_MODPLUG)
+LIB_SND_ALSA=-lasound
# Core Audio (Mac OS X)
OBJ_SND_COREAUDIO=$(OBJ_SND_COMMON) snd_coreaudio.o
-LIB_SND_COREAUDIO=-framework CoreAudio $(LIB_SND_MODPLUG)
+LIB_SND_COREAUDIO=-framework CoreAudio
# BSD / Sun audio API (NetBSD and OpenBSD)
OBJ_SND_BSD=$(OBJ_SND_COMMON) snd_bsd.o
-LIB_SND_BSD=$(LIB_SND_MODPLUG)
+LIB_SND_BSD=
# DirectX and Win32 WAVE output (Win32)
OBJ_SND_WIN=$(OBJ_SND_COMMON) snd_win.o
-LIB_SND_WIN=$(LIB_SND_MODPLUG)
+LIB_SND_WIN=
# Qantourisc's 3D Realtime Acoustic Lib (3D RAS)
OBJ_SND_3DRAS=snd_3dras.o
LIB_SND_3DRAS=
# CD objects
-OBJ_CD_COMMON=cd_shared.o
OBJ_NOCD=cd_null.o
bih.o \
cap_avi.o \
cap_ogg.o \
+ cd_shared.o \
crypto.o \
cl_collision.o \
cl_demo.o \
# note that builddate.c is very intentionally not compiled to a .o before
# being linked, because it should be recompiled every time an executable is
# built to give the executable a proper date string
-OBJ_SV= builddate.c sys_linux.o vid_null.o thread_null.o $(OBJ_SND_NULL) $(OBJ_COMMON)
-OBJ_SDL= builddate.c sys_sdl.o vid_sdl.o thread_sdl.o $(OBJ_SND_COMMON) snd_sdl.o $(OBJ_SDLCD) $(OBJ_COMMON)
+OBJ_SV= builddate.c sys_linux.o vid_null.o thread_null.o $(OBJ_SND_NULL) $(OBJ_NOCD) $(OBJ_COMMON)
+OBJ_SDL= builddate.c sys_sdl.o vid_sdl.o thread_sdl.o $(OBJ_SND_COMMON) snd_sdl.o cd_sdl.o $(OBJ_COMMON)
# Compilation
-CFLAGS_COMMON=$(CFLAGS_MAKEDEP) $(CFLAGS_PRELOAD) $(CFLAGS_FS) $(CFLAGS_WARNINGS) $(CFLAGS_LIBZ) $(CFLAGS_LIBJPEG) $(CFLAGS_D3D) -D_FILE_OFFSET_BITS=64 -D__KERNEL_STRICT_NAMES -I../../../
-CFLAGS_CLIENT=-DCONFIG_CD
-CFLAGS_SERVER=
+CFLAGS_COMMON=$(CFLAGS_MAKEDEP) $(CFLAGS_PRELOAD) $(CFLAGS_FS) $(CFLAGS_WARNINGS) $(CFLAGS_LIBZ) $(CFLAGS_LIBJPEG) $(CFLAGS_D3D) -D_FILE_OFFSET_BITS=64 -D__KERNEL_STRICT_NAMES
CFLAGS_DEBUG=-ggdb
CFLAGS_PROFILE=-g -pg -ggdb -fprofile-arcs
CFLAGS_RELEASE=
LDFLAGS_UNIXCOMMON=-lm $(LIB_ODE) $(LIB_Z) $(LIB_JPEG) $(LIB_CRYPTO) $(LIB_CRYPTO_RIJNDAEL)
LDFLAGS_UNIXCL=-L$(UNIX_X11LIBPATH) -lX11 -lXpm -lXext -lXxf86vm -pthread $(LIB_SOUND)
-LDFLAGS_UNIXCL_PRELOAD=-lz -ljpeg -lpng -logg -ltheora -lvorbis -lvorbisenc -lvorbisfile -lcurl -lmodplug
+LDFLAGS_UNIXCL_PRELOAD=-lz -ljpeg -lpng -logg -ltheora -lvorbis -lvorbisenc -lvorbisfile -lcurl
LDFLAGS_UNIXSV_PRELOAD=-lz -ljpeg -lpng -lcurl
-LDFLAGS_UNIXSDL_PRELOAD=-lz -ljpeg -lpng -logg -ltheora -lvorbis -lvorbisenc -lvorbisfile -lcurl -lmodplug
+LDFLAGS_UNIXSDL_PRELOAD=-lz -ljpeg -lpng -logg -ltheora -lvorbis -lvorbisenc -lvorbisfile -lcurl
CFLAGS_UNIX_PRELOAD=-DPREFER_PRELOAD
-LDFLAGS_UNIXSDL=$(SDLCONFIG_LIBS) $(LIB_SND_MODPLUG)
+LDFLAGS_UNIXSDL=$(SDLCONFIG_LIBS)
EXE_UNIXCL=darkplaces-glx
EXE_UNIXSV=darkplaces-dedicated
EXE_UNIXSDL=darkplaces-sdl
EXE_UNIXSDLNEXUIZ=nexuiz-sdl
CMD_UNIXRM=rm -rf
-CMD_UNIXCP=cp -f
-CMD_UNIXMKDIR=mkdir -p
##### Linux specific variables #####
+# If you want CD sound in Linux
+OBJ_LINUXCD=cd_linux.o
+# If you want no CD audio
+#OBJ_LINUXCD=$(OBJ_NOCD)
+
# Link
LDFLAGS_LINUXCL=$(LDFLAGS_UNIXCOMMON) -lrt -ldl $(LDFLAGS_UNIXCL)
LDFLAGS_LINUXSV=$(LDFLAGS_UNIXCOMMON) -lrt -ldl
##### BSD specific variables #####
+#if you want CD sound in BSD
+OBJ_BSDCD=cd_bsd.o
+#if you want no CD audio
+#OBJ_BSDCD=$(OBJ_NOCD)
+
# Link
LDFLAGS_BSDCL=$(LDFLAGS_UNIXCOMMON) -lutil $(LDFLAGS_UNIXCL)
LDFLAGS_BSDSV=$(LDFLAGS_UNIXCOMMON)
##### Win32 specific variables #####
WINDRES ?= windres
+#if you want CD sound in Win32
+OBJ_WINCD=cd_win.o
+#if you want no CD audio
+#OBJ_WINCD=$(OBJ_NOCD)
OBJ_WGL= builddate.c sys_win.o vid_wgl.o thread_null.o $(OBJ_SND_WIN) $(OBJ_WINCD) $(OBJ_COMMON)
# see LDFLAGS_WINCOMMON in makefile
LDFLAGS_WINCL=$(LDFLAGS_WINCOMMON) $(LIB_CRYPTO) $(LIB_CRYPTO_RIJNDAEL) -mwindows -lwinmm -luser32 -lgdi32 -ldxguid -ldinput -lcomctl32 -lws2_32 $(LDFLAGS_D3D) $(LIB_Z) $(LIB_JPEG)
LDFLAGS_WINSV=$(LDFLAGS_WINCOMMON) $(LIB_CRYPTO) $(LIB_CRYPTO_RIJNDAEL) -mconsole -lwinmm -lws2_32 $(LIB_Z) $(LIB_JPEG)
-LDFLAGS_WINSDL=$(LDFLAGS_WINCOMMON) $(LIB_CRYPTO) $(LIB_CRYPTO_RIJNDAEL) $(SDLCONFIG_LIBS) $(LIB_SND_MODPLUG) -lwinmm -lws2_32 $(LIB_Z) $(LIB_JPEG)
+LDFLAGS_WINSDL=$(LDFLAGS_WINCOMMON) $(LIB_CRYPTO) $(LIB_CRYPTO_RIJNDAEL) $(SDLCONFIG_LIBS) -lwinmm -lws2_32 $(LIB_Z) $(LIB_JPEG)
EXE_WINCL=darkplaces.exe
EXE_WINSV=darkplaces-dedicated.exe
EXE_WINSDL=darkplaces-sdl.exe
EXE_WINSVNEXUIZ=nexuiz-dedicated.exe
EXE_WINSDLNEXUIZ=nexuiz-sdl.exe
-VPATH := ../../../
##### Commands #####
cl-debug :
$(MAKE) bin-debug \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_CL)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
+ EXE="$(EXE_CL)" LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
cl-profile :
$(MAKE) bin-profile \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_CL)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
+ EXE="$(EXE_CL)" LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
cl-release :
$(MAKE) bin-release \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_CL)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
+ EXE="$(EXE_CL)" LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
cl-release-profile :
$(MAKE) bin-release-profile \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_CL)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
+ EXE="$(EXE_CL)" LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
cl-nexuiz :
$(MAKE) bin-release \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_CLNEXUIZ)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
+ EXE="$(EXE_CLNEXUIZ)" LDFLAGS_COMMON="$(LDFLAGS_CL)" LEVEL=1
sv-debug :
$(MAKE) bin-debug \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SV)" CFLAGS_FEATURES=$(CFLAGS_SERVER) LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
+ EXE="$(EXE_SV)" LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
sv-profile :
$(MAKE) bin-profile \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SV)" CFLAGS_FEATURES=$(CFLAGS_SERVER) LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
+ EXE="$(EXE_SV)" LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
sv-release :
$(MAKE) bin-release \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SV)" CFLAGS_FEATURES=$(CFLAGS_SERVER) LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
+ EXE="$(EXE_SV)" LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
sv-release-profile :
$(MAKE) bin-release-profile \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SV)" CFLAGS_FEATURES=$(CFLAGS_SERVER) LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
+ EXE="$(EXE_SV)" LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
sv-nexuiz :
$(MAKE) bin-release \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SVNEXUIZ)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
+ EXE="$(EXE_SVNEXUIZ)" LDFLAGS_COMMON="$(LDFLAGS_SV)" LEVEL=1
sdl-debug :
$(MAKE) bin-debug \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SDL)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
+ EXE="$(EXE_SDL)" LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
sdl-profile :
$(MAKE) bin-profile \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SDL)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
+ EXE="$(EXE_SDL)" LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
sdl-release :
$(MAKE) bin-release \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SDL)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
+ EXE="$(EXE_SDL)" LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
sdl-release-profile :
$(MAKE) bin-release-profile \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SDL)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
+ EXE="$(EXE_SDL)" LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
sdl-nexuiz :
$(MAKE) bin-release \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- EXE="$(EXE_SDLNEXUIZ)" CFLAGS_FEATURES=$(CFLAGS_CLIENT) LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
+ EXE="$(EXE_SDLNEXUIZ)" LDFLAGS_COMMON="$(LDFLAGS_SDL)" LEVEL=1
bin-debug :
$(CHECKLEVEL1)
@echo
@echo "========== $(EXE) (debug) =========="
- $(MAKE) prepare BUILD_DIR=obj/debug/$(EXE)
- $(MAKE) -C obj/debug/$(EXE) -f ../../../$(MAKEFILE) $(EXE) \
+ $(MAKE) $(EXE) \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_FEATURES) $(CFLAGS_EXTRA) $(CFLAGS_DEBUG) $(OPTIM_DEBUG)"\
+ CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_DEBUG) $(OPTIM_DEBUG)"\
LDFLAGS="$(LDFLAGS_DEBUG) $(LDFLAGS_COMMON)" LEVEL=2
bin-profile :
$(CHECKLEVEL1)
@echo
@echo "========== $(EXE) (profile) =========="
- $(MAKE) prepare BUILD_DIR=obj/profile/$(EXE)
- $(MAKE) -C obj/profile/$(EXE) -f ../../../$(MAKEFILE) $(EXE) \
+ $(MAKE) $(EXE) \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_FEATURES) $(CFLAGS_EXTRA) $(CFLAGS_PROFILE) $(OPTIM_RELEASE)"\
+ CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_PROFILE) $(OPTIM_RELEASE)"\
LDFLAGS="$(LDFLAGS_PROFILE) $(LDFLAGS_COMMON)" LEVEL=2
bin-release :
$(CHECKLEVEL1)
@echo
@echo "========== $(EXE) (release) =========="
- $(MAKE) prepare BUILD_DIR=obj/release/$(EXE)
- $(MAKE) -C obj/release/$(EXE) -f ../../../$(MAKEFILE) $(EXE) \
+ $(MAKE) $(EXE) \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_FEATURES) $(CFLAGS_EXTRA) $(CFLAGS_RELEASE) $(OPTIM_RELEASE)"\
+ CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_RELEASE) $(OPTIM_RELEASE)"\
LDFLAGS="$(LDFLAGS_RELEASE) $(LDFLAGS_COMMON)" LEVEL=2
$(STRIP) $(EXE)
$(CHECKLEVEL1)
@echo
@echo "========== $(EXE) (release) =========="
- $(MAKE) prepare BUILD_DIR=obj/release-profile/$(EXE)
- $(MAKE) -C obj/release-profile/$(EXE) -f ../../../$(MAKEFILE) $(EXE) \
+ $(MAKE) $(EXE) \
DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
- CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_FEATURES) $(CFLAGS_EXTRA) $(CFLAGS_RELEASE_PROFILE) $(OPTIM_RELEASE)"\
+ CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_RELEASE_PROFILE) $(OPTIM_RELEASE)"\
LDFLAGS="$(LDFLAGS_RELEASE) $(LDFLAGS_COMMON)" LEVEL=2
$(STRIP) $(EXE)
-prepare :
- $(CMD_MKDIR) $(BUILD_DIR)
- $(CMD_CP) makefile.inc $(BUILD_DIR)/
-
-snd_modplug.o: snd_modplug.c
- $(CHECKLEVEL2)
- $(DO_CC) $(CFLAGS_SND_MODPLUG)
#this checks USEODE when compiling so it needs the ODE flags as well
prvm_cmds.o: prvm_cmds.c
-$(CMD_RM) $(EXE_SDLNEXUIZ)
-$(CMD_RM) *.o
-$(CMD_RM) *.d
- -$(CMD_RM) obj/
clean-profile: clean
-$(CMD_RM) *.gcda