+CC?=gcc
+
+# athlon optimizations
+#CPUOPTIMIZATIONS?=-march=athlon
+# athlon xp optimizations
+#CPUOPTIMIZATIONS?=-march=athlon-xp
+# athlon 64 optimizations
+#CPUOPTIMIZATIONS?=-march=athlon64 -m32
+# Pentium 3 optimizations
+#CPUOPTIMIZATIONS?=-march=pentium3
+# Pentium 4 optimizations
+#CPUOPTIMIZATIONS?=-march=pentium4
+# 686 (Pentium Pro/II) optimizations
+#CPUOPTIMIZATIONS?=-march=i686
+# No specific CPU (386 compatible)
+#CPUOPTIMIZATIONS?=
+# Experimental
+#CPUOPTIMIZATIONS?=-fno-math-errno -ffinite-math-only -fno-rounding-math -fno-signaling-nans -fassociative-math -freciprocal-math -fno-signed-zeros -fno-trapping-math
+# Normal
+CPUOPTIMIZATIONS?=-fno-math-errno -ffinite-math-only -fno-rounding-math -fno-signaling-nans -fno-trapping-math
+# NOTE: *never* *ever* use the -ffast-math or -funsafe-math-optimizations flag
+
+# Additional stuff for libode
+LIB_ODE=`[ -n "$(DP_ODE_STATIC_LIBDIR)" ] && "$(DP_ODE_STATIC_LIBDIR)/../bin/ode-config" --libs` `[ -n "$(DP_ODE_STATIC_LIBDIR)" ] && echo -lstdc++`
+CFLAGS_ODE=`[ -n "$(DP_ODE_STATIC_LIBDIR)" ] && "$(DP_ODE_STATIC_LIBDIR)/../bin/ode-config" --cflags || { [ -n "$(DP_ODE_DYNAMIC)" ] && echo \ -DODE_DYNAMIC; }` `[ -n "$(DP_ODE_STATIC_LIBDIR)" ] && echo -DODE_STATIC`
+
+
+SDL_CONFIG?=sdl-config
+SDLCONFIG_UNIXCFLAGS?=`$(SDL_CONFIG) --cflags`
+SDLCONFIG_UNIXCFLAGS_X11?=
+SDLCONFIG_UNIXLIBS?=`$(SDL_CONFIG) --libs`
+SDLCONFIG_UNIXLIBS_X11?=-lX11
+SDLCONFIG_UNIXSTATICLIBS?=`$(SDL_CONFIG) --static-libs`
+SDLCONFIG_UNIXSTATICLIBS_X11?=-lX11
+SDLCONFIG_MACOSXCFLAGS=-I/Library/Frameworks/SDL.framework/Headers -I$(HOME)/Library/Frameworks/SDL.framework/Headers
+SDLCONFIG_MACOSXLIBS=-F$(HOME)/Library/Frameworks/ -framework SDL -framework Cocoa $(SDLCONFIG_MACOSXCFLAGS)
+SDLCONFIG_MACOSXSTATICLIBS=-F$(HOME)/Library/Frameworks/ -framework SDL -framework Cocoa $(SDLCONFIG_MACOSXCFLAGS)
+STRIP?=strip
+
+
+###### 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
+
+# statically loading d0_blind_id
+LIB_CRYPTO=`[ -n "$(DP_CRYPTO_STATIC_LIBDIR)" ] && echo \ $(DP_CRYPTO_STATIC_LIBDIR)/libd0_blind_id.a\ $(DP_CRYPTO_STATIC_LIBDIR)/libgmp.a`
+CFLAGS_CRYPTO=`[ -n "$(DP_CRYPTO_STATIC_LIBDIR)" ] && echo \ -I$(DP_CRYPTO_STATIC_LIBDIR)/../include\ -DCRYPTO_STATIC`
+LIB_CRYPTO_RIJNDAEL=`[ -n "$(DP_CRYPTO_RIJNDAEL_STATIC_LIBDIR)" ] && echo \ $(DP_CRYPTO_RIJNDAEL_STATIC_LIBDIR)/libd0_rijndael.a`
+CFLAGS_CRYPTO_RIJNDAEL=`[ -n "$(DP_CRYPTO_RIJNDAEL_STATIC_LIBDIR)" ] && echo \ -I$(DP_CRYPTO_RIJNDAEL_STATIC_LIBDIR)/../include\ -DCRYPTO_RIJNDAEL_STATIC`
+
+# Additional stuff for libmodplug
+LIB_SND_MODPLUG=`[ -n "$(DP_MODPLUG_STATIC_LIBDIR)" ] && echo \ $(DP_MODPLUG_STATIC_LIBDIR)/libmodplug.a\ -lstdc++`
+CFLAGS_SND_MODPLUG=`[ -n "$(DP_MODPLUG_STATIC_LIBDIR)" ] && echo \ -I$(DP_MODPLUG_STATIC_LIBDIR)/../include\ -DSND_MODPLUG_STATIC`
+
+# No sound
+OBJ_SND_NULL=snd_null.o
+LIB_SND_NULL=
+
+# Open Sound System (Linux, FreeBSD and Solaris)
+OBJ_SND_OSS=$(OBJ_SND_COMMON) snd_oss.o
+LIB_SND_OSS=$(LIB_SND_MODPLUG)
+
+# Advanced Linux Sound Architecture (Linux)
+OBJ_SND_ALSA=$(OBJ_SND_COMMON) snd_alsa.o
+LIB_SND_ALSA=-lasound $(LIB_SND_MODPLUG)
+
+# Core Audio (Mac OS X)
+OBJ_SND_COREAUDIO=$(OBJ_SND_COMMON) snd_coreaudio.o
+LIB_SND_COREAUDIO=-framework CoreAudio $(LIB_SND_MODPLUG)
+
+# BSD / Sun audio API (NetBSD and OpenBSD)
+OBJ_SND_BSD=$(OBJ_SND_COMMON) snd_bsd.o
+LIB_SND_BSD=$(LIB_SND_MODPLUG)
+
+# DirectX and Win32 WAVE output (Win32)
+OBJ_SND_WIN=$(OBJ_SND_COMMON) snd_win.o
+LIB_SND_WIN=$(LIB_SND_MODPLUG)
+
+# Qantourisc's 3D Realtime Acoustic Lib (3D RAS)
+OBJ_SND_3DRAS=snd_3dras.o
+LIB_SND_3DRAS=