--- linux/Makefile.orig	Fri Mar 30 23:06:46 2007
+++ linux/Makefile	Fri Mar 30 23:13:43 2007
@@ -11,25 +11,14 @@
 GLIBC=
 endif
 
-ifneq (,$(findstring alpha,$(shell uname -m)))
-ARCH=axp
-else
-ifneq (,$(findstring ppc,$(shell uname -m)))
-ARCH=ppc
-else
-ifneq (,$(findstring x86_64,$(shell uname -m)))
-ARCH=x86_64
-else
-ARCH=i386
-endif
-endif
-endif
+ARCH=$(shell uname -m)
+
 NOARCH=noarch
 
 MOUNT_DIR=..
 
-BUILD_DEBUG_DIR=debug$(ARCH)
-BUILD_RELEASE_DIR=release$(ARCH)
+BUILD_DEBUG_DIR=debug
+BUILD_RELEASE_DIR=release
 CLIENT_DIR=$(MOUNT_DIR)/client
 SERVER_DIR=$(MOUNT_DIR)/server
 REF_GL_DIR=$(MOUNT_DIR)/ref_gl
@@ -42,51 +31,31 @@
 
 EGCS=/usr/local/egcs-1.1.2/bin/gcc
 
-CC=gcc
-
-ifeq ($(ARCH),x86_64)
-_LIB := lib64
-else
-_LIB := lib
-endif
-
-BASE_CFLAGS=-Dstricmp=strcasecmp -D_stricmp=strcasecmp -D__linux__
-
-ifeq ($(ARCH),axp)
-RELEASE_CFLAGS=$(BASE_CFLAGS) -ffast-math -funroll-loops \
-	-fomit-frame-pointer -fexpensive-optimizations
-endif
+CC?=gcc
 
-ifeq ($(ARCH),ppc)
-RELEASE_CFLAGS=$(BASE_CFLAGS) -O2 -ffast-math -funroll-loops \
-	-fomit-frame-pointer -fexpensive-optimizations
-endif
+CC?=gcc
 
-ifeq ($(ARCH),sparc)
-RELEASE_CFLAGS=$(BASE_CFLAGS) -ffast-math -funroll-loops \
+BASE_CFLAGS=$(CFLAGS) -Dstricmp=strcasecmp -D_stricmp=strcasecmp -I$(X11BASE)/include
+RELEASE_CFLAGS=$(BASE_CFLAGS)
+ifdef OPTIMIZED_CFLAGS
+RELEASE_CFLAGS+=-O2 -ffast-math -funroll-loops \
 	-fomit-frame-pointer -fexpensive-optimizations
-endif
-
-ifeq ($(ARCH),i386)
-RELEASE_CFLAGS=$(BASE_CFLAGS) -O2 -ffast-math -funroll-loops -falign-loops=2 \
-	-fomit-frame-pointer -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -ftree-vectorize
-endif
-
-ifeq ($(ARCH),x86_64)
-RELEASE_CFLAGS=$(BASE_CFLAGS) -O2 -ffast-math -funroll-loops -falign-loops=2 \
-        -fomit-frame-pointer -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -ftree-vectorize
+  ifeq ($(ARCH),i386)
+RELEASE_CFLAGS+=-falign-loops=2 -falign-jumps=2 -falign-functions=2 \
+	-fno-strict-aliasing
+  endif
 endif
 
 ARENA_CFLAGS=-DARENA
 
 DEBUG_CFLAGS=$(BASE_CFLAGS) -g
-LDFLAGS=-ldl -lm
+LDFLAGS=-lm
 SVGALDFLAGS=-lvga -lm
-XLDFLAGS=-L/usr/X11R6/$(_LIB) -lX11 -lXext -lXxf86dga
+XLDFLAGS=-L$(X11BASE)/lib -lX11 -lXext -lXxf86dga
 XCFLAGS=
 
-GLLDFLAGS=-L/usr/X11R6/$(_LIB) -L/usr/local/$(_LIB) -lX11 -lXext -lvga -lm
-GLXLDFLAGS=-L/usr/X11R6/$(_LIB) -L/usr/local/$(_LIB) -lX11 -lXext -lXxf86dga -lXxf86vm -lm -ljpeg -lGL -lGLU
+GLLDFLAGS=-L$(X11BASE)/lib -L$(LOCALBASE)/lib -lX11 -lXext -lvga -lm
+GLXLDFLAGS=-L$(X11BASE)/lib -L$(LOCALBASE)/lib -lX11 -lXext -lXxf86dga -lXxf86vm -lm -ljpeg -lGL -lGLU
 
 SDLCFLAGS=$(shell sdl-config --cflags)
 SDLLDFLAGS=$(shell sdl-config --libs)
@@ -115,19 +84,19 @@
 # SETUP AND BUILD
 #############################################################################
 
-ifeq ($(ARCH),axp)
-TARGETS=$(BUILDDIR)/crded.$(ARCH) \
-	$(BUILDDIR)/game$(ARCH).$(SHLIBEXT) \
-	$(BUILDDIR)/arena/game$(ARCH).$(SHLIBEXT)
-else
-TARGETS=$(BUILDDIR)/crded.$(ARCH) \
-	$(BUILDDIR)/crx.$(ARCH) \
-	$(BUILDDIR)/game$(ARCH).$(SHLIBEXT) \
-	$(BUILDDIR)/arena/game$(ARCH).$(SHLIBEXT)
+TARGETS=$(BUILDDIR)/game.$(SHLIBEXT) \
+	$(BUILDDIR)/arena/game.$(SHLIBEXT)
+
+ifeq ($(strip $(CLIENT)),1)
+	TARGETS+=$(BUILDDIR)/crx
+endif
+
+ifeq ($(strip $(DEDICATED)),1)
+	TARGETS+=$(BUILDDIR)/crded
 endif
 
 ifeq ($(strip $(SDLSOUND)),1)
-	TARGETS+=$(BUILDDIR)/crx.sdl.$(ARCH)
+	TARGETS+=$(BUILDDIR)/crx.sdl
 endif
 
 build_debug:
@@ -234,18 +203,14 @@
 SOUND_SDL_OBJS = \
 	$(BUILDDIR)/client/snd_sdl.o
 
-ifeq ($(ARCH),axp)
-CODERED_AS_OBJS =  #blank
-else
 CODERED_AS_OBJS = \
 	$(BUILDDIR)/client/snd_mixa.o
-endif
 
 
-$(BUILDDIR)/crx.$(ARCH) : $(CODERED_OBJS) $(SOUND_OSS_OBJS) $(CODERED_AS_OBJS) $(REF_GL_OBJS) $(REF_GL_GLX_OBJS)
+$(BUILDDIR)/crx : $(CODERED_OBJS) $(SOUND_OSS_OBJS) $(CODERED_AS_OBJS) $(REF_GL_OBJS) $(REF_GL_GLX_OBJS)
 	$(CC) $(CFLAGS) -o $@ $(CODERED_OBJS) $(SOUND_OSS_OBJS) $(CODERED_AS_OBJS) $(LDFLAGS) $(REF_GL_OBJS) $(REF_GL_GLX_OBJS) $(GLXLDFLAGS)
 
-$(BUILDDIR)/crx.sdl.$(ARCH) : $(CODERED_OBJS) $(SOUND_SDL_OBJS) $(CODERED_AS_OBJS) $(REF_GL_OBJS) $(REF_GL_GLX_OBJS)
+$(BUILDDIR)/crx.sdl : $(CODERED_OBJS) $(SOUND_SDL_OBJS) $(CODERED_AS_OBJS) $(REF_GL_OBJS) $(REF_GL_GLX_OBJS)
 	$(CC) $(CFLAGS) -o $@ $(CODERED_OBJS) $(SOUND_SDL_OBJS) $(CODERED_AS_OBJS) $(LDFLAGS) $(REF_GL_OBJS) $(REF_GL_GLX_OBJS) $(GLXLDFLAGS) $(SDLLDFLAGS)
 
 $(BUILDDIR)/client/cl_cin.o :     $(CLIENT_DIR)/cl_cin.c
@@ -478,7 +443,7 @@
 	$(BUILDDIR)/ded/cl_null.o \
 	$(BUILDDIR)/ded/cd_null.o
 
-$(BUILDDIR)/crded.$(ARCH) : $(CRDED_OBJS)
+$(BUILDDIR)/crded : $(CRDED_OBJS)
 	$(CC) $(CFLAGS) -o $@ $(CRDED_OBJS) $(LDFLAGS)
 
 $(BUILDDIR)/ded/cmd.o :        $(COMMON_DIR)/cmd.c
@@ -597,7 +562,7 @@
 
 
 
-$(BUILDDIR)/game$(ARCH).$(SHLIBEXT) : $(GAME_OBJS)
+$(BUILDDIR)/game.$(SHLIBEXT) : $(GAME_OBJS)
 	$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(GAME_OBJS)
 
 
@@ -753,7 +718,7 @@
 	$(BUILDDIR)/arena/p_weapon.o \
 	$(BUILDDIR)/arena/vehicles.o
 
-$(BUILDDIR)/arena/game$(ARCH).$(SHLIBEXT) : $(ARENA_OBJS)
+$(BUILDDIR)/arena/game.$(SHLIBEXT) : $(ARENA_OBJS)
 	$(CC) $(CFLAGS) $(SHLIBLDFLAGS) -o $@ $(ARENA_OBJS)
 
 
