UNIX_X11LIBPATH:=/usr/X11R6/lib
endif
+# default targets
+TARGETS_DEBUG=sv-debug cl-debug sdl-debug
+TARGETS_PROFILE=sv-profile cl-profile sdl-profile
+TARGETS_RELEASE=sv-release cl-release sdl-release
+TARGETS_RELEASE_PROFILE=sv-release-profile cl-release-profile sdl-release-profile
+TARGETS_NEXUIZ=sv-nexuiz cl-nexuiz sdl-nexuiz
# Linux configuration
ifeq ($(DP_MAKE_TARGET), linux)
LDFLAGS_SV=$(LDFLAGS_LINUXSV)
LDFLAGS_SDL=$(LDFLAGS_LINUXSDL)
- SDLCONFIG_CFLAGS=$(SDLCONFIG_UNIXCFLAGS)
- SDLCONFIG_LIBS=$(SDLCONFIG_UNIXLIBS)
- SDLCONFIG_STATICLIBS=$(SDLCONFIG_UNIXSTATICLIBS)
+ SDLCONFIG_CFLAGS=$(SDLCONFIG_UNIXCFLAGS) $(SDLCONFIG_UNIXCFLAGS_X11)
+ SDLCONFIG_LIBS=$(SDLCONFIG_UNIXLIBS) $(SDLCONFIG_UNIXLIBS_X11)
+ SDLCONFIG_STATICLIBS=$(SDLCONFIG_UNIXSTATICLIBS) $(SDLCONFIG_UNIXSTATICLIBS_X11)
EXE_CL=$(EXE_UNIXCL)
EXE_SV=$(EXE_UNIXSV)
EXE_SVNEXUIZ=$(EXE_UNIXSVNEXUIZ)
EXE_SDLNEXUIZ=$(EXE_UNIXSDLNEXUIZ)
- # libjpeg dependency (set these to "" if you want to use dynamic loading instead)
- CFLAGS_LIBJPEG=-DLINK_TO_LIBJPEG
- LIB_JPEG=-ljpeg
+ DP_LINK_ZLIB?=shared
+ DP_LINK_JPEG?=shared
+ DP_LINK_ODE?=dlopen
endif
# Mac OS X configuration
CFLAGS_MAKEDEP=
endif
- # libjpeg dependency (set these to "" if you want to use dynamic loading instead)
- # we don't currently link to libjpeg on Mac because the OS does not have an easy way to load libjpeg and we provide our own in the .app
- CFLAGS_LIBJPEG=
- LIB_JPEG=
+ DP_LINK_ZLIB?=shared
+ DP_LINK_JPEG?=shared
+ DP_LINK_ODE?=dlopen
+
+ # on OS X, we don't build the CL by default because it uses deprecated
+ # and not-implemented-in-64bit Carbon
+ TARGETS_DEBUG=sv-debug sdl-debug
+ TARGETS_PROFILE=sv-profile sdl-profile
+ TARGETS_RELEASE=sv-release sdl-release
+ TARGETS_RELEASE_PROFILE=sv-release-profile sdl-release-profile
+ TARGETS_NEXUIZ=sv-nexuiz sdl-nexuiz
endif
# SunOS configuration (Solaris)
LDFLAGS_SV=$(LDFLAGS_SUNOSSV)
LDFLAGS_SDL=$(LDFLAGS_SUNOSSDL)
- SDLCONFIG_CFLAGS=$(SDLCONFIG_UNIXCFLAGS)
- SDLCONFIG_LIBS=$(SDLCONFIG_UNIXLIBS)
- SDLCONFIG_STATICLIBS=$(SDLCONFIG_UNIXSTATICLIBS)
+ SDLCONFIG_CFLAGS=$(SDLCONFIG_UNIXCFLAGS) $(SDLCONFIG_UNIXCFLAGS_X11)
+ SDLCONFIG_LIBS=$(SDLCONFIG_UNIXLIBS) $(SDLCONFIG_UNIXLIBS_X11)
+ SDLCONFIG_STATICLIBS=$(SDLCONFIG_UNIXSTATICLIBS) $(SDLCONFIG_UNIXSTATICLIBS_X11)
EXE_CL=$(EXE_UNIXCL)
EXE_SV=$(EXE_UNIXSV)
EXE_SVNEXUIZ=$(EXE_UNIXSVNEXUIZ)
EXE_SDLNEXUIZ=$(EXE_UNIXSDLNEXUIZ)
- # libjpeg dependency (set these to "" if you want to use dynamic loading instead)
- CFLAGS_LIBJPEG=-DLINK_TO_LIBJPEG
- LIB_JPEG=-ljpeg
+ DP_LINK_ZLIB?=shared
+ DP_LINK_JPEG?=shared
+ DP_LINK_ODE?=dlopen
endif
# BSD configuration
LDFLAGS_SV=$(LDFLAGS_BSDSV)
LDFLAGS_SDL=$(LDFLAGS_BSDSDL)
- SDLCONFIG_CFLAGS=$(SDLCONFIG_UNIXCFLAGS)
- SDLCONFIG_LIBS=$(SDLCONFIG_UNIXLIBS)
- SDLCONFIG_STATICLIBS=$(SDLCONFIG_UNIXSTATICLIBS)
+ SDLCONFIG_CFLAGS=$(SDLCONFIG_UNIXCFLAGS) $(SDLCONFIG_UNIXCFLAGS_X11)
+ SDLCONFIG_LIBS=$(SDLCONFIG_UNIXLIBS) $(SDLCONFIG_UNIXLIBS_X11)
+ SDLCONFIG_STATICLIBS=$(SDLCONFIG_UNIXSTATICLIBS) $(SDLCONFIG_UNIXSTATICLIBS_X11)
EXE_CL=$(EXE_UNIXCL)
EXE_SV=$(EXE_UNIXSV)
EXE_SVNEXUIZ=$(EXE_UNIXSVNEXUIZ)
EXE_SDLNEXUIZ=$(EXE_UNIXSDLNEXUIZ)
- # libjpeg dependency (set these to "" if you want to use dynamic loading instead)
- CFLAGS_LIBJPEG=-DLINK_TO_LIBJPEG
- LIB_JPEG=-ljpeg
+ DP_LINK_ZLIB?=shared
+ DP_LINK_JPEG?=shared
+ DP_LINK_ODE?=dlopen
endif
# Win32 configuration
# TARGET=i686-pc-mingw32
# CC=$(TARGET)-g++
# WINDRES=$(TARGET)-windres
- CPUOPTIMIZATIONS=-march=i686 -fno-math-errno -ffinite-math-only -fno-rounding-math -fno-signaling-nans -fno-trapping-math -DUSE_WSPIAPI_H
+ CPUOPTIMIZATIONS=-march=i686 -fno-math-errno -ffinite-math-only -fno-rounding-math -fno-signaling-nans -fno-trapping-math
+# CPUOPTIMIZATIONS+=-DUSE_WSPIAPI_H -DSUPPORTIPV6
LDFLAGS_WINCOMMON=-Wl,--large-address-aware
else
LDFLAGS_WINCOMMON=
LDFLAGS_D3D=-ld3d9
else
CFLAGS_D3D=
- CFLAGS_WARNINGS=-Wall -Wold-style-definition -Wstrict-prototypes -Wsign-compare -Wdeclaration-after-statement
+ CFLAGS_WARNINGS=-Wall -Wold-style-definition -Wstrict-prototypes -Wsign-compare -Wdeclaration-after-statement -Wmissing-prototypes
LDFLAGS_D3D=
endif
EXE_SVNEXUIZ=$(EXE_WINSVNEXUIZ)
EXE_SDLNEXUIZ=$(EXE_WINSDLNEXUIZ)
- # libjpeg dependency (set these to "" if you want to use dynamic loading instead)
+ DP_LINK_ZLIB?=dlopen
+ DP_LINK_JPEG?=shared
+ DP_LINK_ODE?=dlopen
+endif
+
+# set these to "" if you want to use dynamic loading instead
+# zlib
+ifeq ($(DP_LINK_ZLIB), shared)
+ CFLAGS_LIBZ=-DLINK_TO_ZLIB
+ LIB_Z=-lz
+endif
+ifeq ($(DP_LINK_ZLIB), dlopen)
+ CFLAGS_LIBZ=
+ LIB_Z=
+endif
+
+# jpeg
+ifeq ($(DP_LINK_JPEG), shared)
CFLAGS_LIBJPEG=-DLINK_TO_LIBJPEG
LIB_JPEG=-ljpeg
endif
+ifeq ($(DP_LINK_JPEG), dlopen)
+ CFLAGS_LIBJPEG=
+ LIB_JPEG=
+endif
+
+# ode
+ifeq ($(DP_LINK_ODE), shared)
+ ODE_CONFIG?=ode-config
+ LIB_ODE=`$(ODE_CONFIG) --libs`
+ CFLAGS_ODE=`$(ODE_CONFIG) --cflags` -DUSEODE -DLINK_TO_LIBODE
+endif
+ifeq ($(DP_LINK_ODE), dlopen)
+ LIB_ODE=
+ CFLAGS_ODE=-DUSEODE
+endif
+
+# d0_blind_id
+# most distros do not have d0_blind_id package, dlopen will used by default
+# LIB_CRYPTO=-ld0_blind_id
+# CFLAGS_CRYPTO=-DLINK_TO_CRYPTO
+# LIB_CRYPTO_RIJNDAEL=-ld0_rijndael
+# CFLAGS_CRYPTO_RIJNDAEL=-DLINK_TO_CRYPTO_RIJNDAEL
+LIB_CRYPTO=
+CFLAGS_CRYPTO=
+LIB_CRYPTO_RIJNDAEL=
+CFLAGS_CRYPTO_RIJNDAEL=
##### Sound configuration #####
##### Dependency files #####
-include *.d
+
+# hack to deal with no-longer-needed .h files
+%.h:
+ @echo
+ @echo "NOTE: file $@ mentioned in dependencies missing, continuing..."
+ @echo "HINT: consider 'make clean'"
+ @echo