-# K6/athlon optimizations
-#CPUOPTIMIZATIONS=-march=k6
-# Note: don't use -march=athlon, every gcc which has it currently (2.96-3.1)
-# have optimizer bugs (like entities disappearing randomly - a bug with
-# compiling BOX_ON_PLANE_SIDE in mathlib.h)
-#CPUOPTIMIZATIONS=-march=athlon
-# 686 optimizations
-#CPUOPTIMIZATIONS=-march=i686
-# No specific CPU
-CPUOPTIMIZATIONS=
-
-
-##### Variables that you shouldn't care about #####
-
-# Sound objects
-OBJ_COMMONSOUND=snd_dma.o snd_mem.o snd_mix.o snd_ogg.o snd_wav.o
-OBJ_NOSOUND=snd_null.o
+# 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
+
+SDL_CONFIG?=sdl-config
+SDLCONFIG_UNIXCFLAGS?=`$(SDL_CONFIG) --cflags`
+SDLCONFIG_UNIXLIBS?=`$(SDL_CONFIG) --libs`
+SDLCONFIG_UNIXSTATICLIBS?=`$(SDL_CONFIG) --static-libs`
+SDLCONFIG_MACOSXCFLAGS=-I/Library/Frameworks/SDL.framework/Headers
+SDLCONFIG_MACOSXLIBS=-framework SDL -framework Cocoa $(SDLCONFIG_MACOSXCFLAGS)
+SDLCONFIG_MACOSXSTATICLIBS=-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
+
+# 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=