Support for swappable t&l modules, including an example one in the FX
[mesa.git] / Make-config
index a036580f3e9e85ca977a9ba6139e12651a2f1230..65f50e21f219484782112a42383dadb06974bea1 100644 (file)
@@ -1,13 +1,13 @@
-# $Id: Make-config,v 1.10 1999/11/02 10:11:44 brianp Exp $
+# $Id: Make-config,v 1.33 2000/11/03 01:37:10 brianp Exp $
 
 MESA_MAJOR=3
-MESA_MINOR=1
+MESA_MINOR=5
 MESA_TINY=0
 VERSION=$(MESA_MAJOR).$(MESA_MINOR)
 
 # Mesa 3-D graphics library
 # 
-# Copyright (C) 1999  Brian Paul   All Rights Reserved.
+# Copyright (C) 1999-2000  Brian Paul   All Rights Reserved.
 # 
 # Permission is hereby granted, free of charge, to any person obtaining a
 # copy of this software and associated documentation files (the "Software"),
@@ -29,13 +29,19 @@ VERSION=$(MESA_MAJOR).$(MESA_MINOR)
 
 # The following variables are passed to each Makefile:
 #
-# GL_LIB      the name of the Mesa "GL" library file (usually libGL.a)
-# GLU_LIB     the name of the Mesa "GLU" library file (usually libGLU.a)
-# GLUT_LIB    the name of the GLUT library file (usually libglut.a)
-# CC          the C compiler (usually cc or gcc)
-# CFLAGS      flags to C compiler (usually -O)
-# MAKELIB     the script or command to make a library file
-# XLIBS       libraries needed to link X apps (at least -lX11)
+# GL_LIB         the name of the Mesa "GL" library file (usually libGL.so)
+# GLU_LIB        the name of the Mesa "GLU" library file (usually libGLU.so)
+# GLUT_LIB       the name of the GLUT library file (usually libglut.so)
+# GLW_LIB        the name of the GLw widget library file (usually libGLw.so)
+# CC             the C compiler (usually cc or gcc)
+# CFLAGS         flags to C compiler (usually -O)
+# MAKELIB        the script or command to make a library file
+# GL_LIB_DEPS    list of libraries which the GL library depends on
+# GLU_LIB_DEPS   list of libraries which the GLU library depends on
+# GLUT_LIB_DEPS  list of libraries which the GLUT library depends on
+# APP_LIB_DEPS   list of libraries which demo programs depend upon
+# ASM_SOURCES    optional list of assembly language files to assemble
+#
 #
 # Optionally, you can add definitions for the INCDIR and LIBDIR variables
 # which specify where to find the Mesa include files and where to put the
@@ -43,18 +49,15 @@ VERSION=$(MESA_MAJOR).$(MESA_MINOR)
 # overriding makefile macros on the command line should work with most
 # variants of make.
 #
-# To enable profiling add -DPROFILE to the CFLAGS line.  Be sure to set the
-# MESA_PROFILE environment variable to enable printing of the profile report.
-#
-# If your system supports the X Shared Memory extension add -DSHM to the
-# CFLAGS line and add -lXext to the XLIBS line.
+# If your system supports the X Shared Memory extension add -DUSE_XSHM to the
+# CFLAGS line and add -lXext to the GL_LIB_DEPS line.
 #
 # Some compilers complain about const parameters.  Adding -DNO_CONST to the
 # CFLAGS line should silence suth warnings.
 #
 #
 # To add a new system configuration just follow the examples below and update
-# the top-level Makefile.
+# the top-level Makefile.X11 file.
 
 
 
@@ -64,10 +67,11 @@ aix:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
        "CFLAGS = -O -DAIXV3" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 aix-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -75,10 +79,11 @@ aix-sl:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
        "CFLAGS = -O -DAIXV3" \
        "MAKELIB = ../bin/mklib.aix" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 # Make-config additions for the Amiga 3000 UX
 # Carlyn Voss Iuzzolino   5/8/95: 
@@ -93,10 +98,11 @@ amix:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
        "CFLAGS =" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lsocket -lnsl -lm"
+       "APP_LIB_DEPS = -lX11 -lsocket -lnsl -lm"
 
 beos-r4:
        $(MAKE) -f Makefile.BeOS-R4 targets \
@@ -104,10 +110,11 @@ beos-r4:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = g++" \
        "CFLAGS = -O -DNO_CONST" \
        "MAKELIB = ../bin/mklib.beos-r4" \
-       "XLIBS = "
+       "APP_LIB_DEPS = "
 
 bsdos:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -115,10 +122,11 @@ bsdos:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -I/usr/X11/include -O2" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11/lib -lX11 -lipc -lm"
+       "APP_LIB_DEPS = -L/usr/X11/lib -lX11 -lipc -lm"
 
 bsdos4:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -126,10 +134,11 @@ bsdos4:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -I/usr/X11/include -O2 -fPIC" \
        "MAKELIB = ../bin/mklib.bsdos4" \
-       "XLIBS = -L/usr/X11/lib -lX11 -lipc -lm"
+       "APP_LIB_DEPS = -L/usr/X11/lib -lX11 -lipc -lm"
 
 cygnus:
        $(MAKE) -f Makefile.cygnus $(MFLAGS) -f Makefile.X11 targets \
@@ -137,6 +146,7 @@ cygnus:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "DLLTOOL = dlltool" \
        "WING_DIR= /wing" \
@@ -154,6 +164,7 @@ cygnus-linux:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gnuwin32gcc" \
        "DLLTOOL = gnuwin32dlltool --as gnuwin32as" \
        "LD = gnuwin32ld" \
@@ -171,10 +182,11 @@ dgux:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -O" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lm"
+       "APP_LIB_DEPS = -lX11 -lm"
 
 freebsd:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -182,10 +194,11 @@ freebsd:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O2 -fPIC -pedantic -I/usr/X11R6/include -DSHM -DHZ=100" \
+       "CFLAGS = -O2 -fPIC -pedantic -I/usr/X11R6/include -DUSE_XSHM -DHZ=100" \
        "MAKELIB = ../bin/mklib.freebsd" \
-       "XLIBS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
 freebsd-386:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -193,11 +206,16 @@ freebsd-386:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O3 -ffast-math -fPIC -pedantic -I/usr/X11R6/include -DSHM -DHZ=100 -DUSE_X86_ASM -DFREEBSD" \
+       "CFLAGS = -O3 -ffast-math -fPIC -pedantic -I/usr/X11R6/include -DUSE_XSHM -DHZ=100 -DUSE_X86_ASM -DFREEBSD" \
        "MAKELIB = ../bin/mklib.freebsd" \
-       "XLIBS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S"
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S"
 
 gcc:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -205,10 +223,11 @@ gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -pedantic -O2" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lm"
+       "APP_LIB_DEPS = -lX11 -lm"
 
 hpux9:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -216,10 +235,11 @@ hpux9:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = +O3 -Aa -D_HPUX_SOURCE -I/usr/include/X11R5 -DSHM" \
+       "CFLAGS = +O3 -Aa -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
 
 hpux9-gcc:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -227,10 +247,11 @@ hpux9-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DSHM" \
+       "CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
 
 hpux9-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -238,10 +259,11 @@ hpux9-sl:
        "GLU_LIB = libGLU.sl" \
        "GLUT_LIB = libglut.sl" \
        "GLW_LIB = libGLw.sl" \
+       "OSMESA_LIB = libOSMesa.sl" \
        "CC = cc" \
-       "CFLAGS = +z +O3 +Olibcalls +ESlit -Aa +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 -DSHM" \
+       "CFLAGS = +z +O3 +Olibcalls +ESlit -Aa +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.hpux" \
-       "XLIBS = -L/usr/lib/X11R5 -s -Wl,+s,-B,nonfatal,-B,immediate -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11R5 -s -Wl,+s,-B,nonfatal,-B,immediate -lXext -lXmu -lXi -lX11 -lm"
 
 hpux9-gcc-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -249,10 +271,11 @@ hpux9-gcc-sl:
        "GLU_LIB = libGLU.sl" \
        "GLUT_LIB = libglut.sl" \
        "GLW_LIB = libGLw.sl" \
+       "OSMESA_LIB = libOSMesa.sl" \
        "CC = gcc" \
-       "CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DSHM" \
+       "CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.hpux" \
-       "XLIBS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
 
 hpux10:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -260,10 +283,11 @@ hpux10:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = +O3 +DAportable -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DSHM" \
+       "CFLAGS = +O3 +DAportable -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
 hpux10-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -271,10 +295,11 @@ hpux10-sl:
        "GLU_LIB = libGLU" \
        "GLUT_LIB = libglut" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = +z -Ae +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DSHM" \
+       "CFLAGS = +z -Ae +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.hpux" \
-       "XLIBS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
 hpux10-gcc:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -282,10 +307,11 @@ hpux10-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include  -DSHM" \
+       "CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include  -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
 hpux10-gcc-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -293,10 +319,11 @@ hpux10-gcc-sl:
        "GLU_LIB = libGLU.sl" \
        "GLUT_LIB = libglut.sl" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DSHM" \
+       "CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.hpux" \
-       "XLIBS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
 
 # For IRIX 4: don't use -fullwarn because it causes too much garbage
@@ -306,10 +333,11 @@ irix4:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = -O2 -ansi -prototypes -DSHM" \
+       "CFLAGS = -O2 -ansi -prototypes -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -lXext -lXmu -lXi -lX11 -lm"
 
 # On IRIX 5.3 -sopt causes a problem in drawpixels.c so we don't use it
 irix5:
@@ -318,10 +346,11 @@ irix5:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = -O2 -ansi -fullwarn -DSHM -DNO_CONST" \
+       "CFLAGS = -O2 -ansi -fullwarn -DUSE_XSHM -DNO_CONST" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 # On IRIX 5.2+gcc
 irix5-gcc:
@@ -330,10 +359,11 @@ irix5-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O2 -pedantic -DSHM" \
+       "CFLAGS = -O2 -pedantic -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 # IRIX 5 using Dynamic Shared Objects (DSO)
 irix5-dso:
@@ -342,10 +372,11 @@ irix5-dso:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = cc" \
-       "CFLAGS = -O2 -ansi -fullwarn -DSHM -DNO_CONST" \
+       "CFLAGS = -O2 -ansi -fullwarn -DUSE_XSHM -DNO_CONST" \
        "MAKELIB = ../bin/mklib.irix5" \
-       "XLIBS = -rpath ../lib -lX11 -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -rpath ../lib -lX11 -lXmu -lXi -lm"
 
 irix6-o32:
        pmake $(MFLAGS) -f Makefile.X11 targets \
@@ -353,10 +384,11 @@ irix6-o32:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = -32 -mips2 -O2 -ansi -DSHM -DNO_CONST" \
+       "CFLAGS = -32 -mips2 -O2 -ansi -DUSE_XSHM -DNO_CONST" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 irix6-o32-dso:
        pmake $(MFLAGS) -f Makefile.X11 targets \
@@ -364,10 +396,11 @@ irix6-o32-dso:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = cc" \
-       "CFLAGS = -32 -mips2 -O2 -ansi -DSHM -DNO_CONST" \
+       "CFLAGS = -32 -mips2 -O2 -ansi -DUSE_XSHM -DNO_CONST" \
        "MAKELIB = ../bin/mklib.irix6-32" \
-       "XLIBS = -rpath ../lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -rpath ../lib -lX11 -lXext -lXmu -lXi -lm"
 
 # For IRIX 6: -woff:
 #   1209 - controlling expression is constant
@@ -377,11 +410,12 @@ irix6-n32:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "LIBDIR = ../lib32" \
        "CC = cc" \
        "CFLAGS = -n32 -mips3 -O3 -ansi -woff 1209,1521" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 irix6-n32-dso:
        pmake $(MFLAGS) -f Makefile.X11 targets \
@@ -389,11 +423,12 @@ irix6-n32-dso:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "LIBDIR = ../lib32" \
        "CC = cc" \
-       "CFLAGS = -n32 -mips3 -O3 -ansi -DSHM -woff 1185,1521" \
+       "CFLAGS = -n32 -mips3 -O3 -ansi -DUSE_XSHM -woff 1185,1521" \
        "MAKELIB = ../bin/mklib.irix6-n32" \
-       "XLIBS = -rpath ../lib32 -lX11 -lXmu -lXi -lfpe -lm"
+       "APP_LIB_DEPS = -rpath ../lib32 -lX11 -lXmu -lXi -lfpe -lm"
 
 irix6-gcc-n32-sl:
        make $(MFLAGS) -f Makefile.X11 targets \
@@ -401,11 +436,12 @@ irix6-gcc-n32-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "LIBDIR = ../lib32" \
        "CC = gcc" \
-       "CFLAGS = -mabi=n32 -mips3 -O3 -DSHM" \
+       "CFLAGS = -mabi=n32 -mips3 -O3 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.irix6-n32" \
-       "XLIBS = -rpath ../lib32 -lX11 -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -rpath ../lib32 -lX11 -lXmu -lXi -lm"
 
 # For IRIX 6-64: -woff:
 #   1068 - integer conversion resulted in a change of sign
@@ -421,11 +457,12 @@ irix6-64:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "LIBDIR = ../lib64" \
        "CC = cc" \
-       "CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DSHM" \
+       "CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 irix6-64-dso:
        pmake $(MFLAGS) -f Makefile.X11 targets \
@@ -433,113 +470,182 @@ irix6-64-dso:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "LIBDIR = ../lib64" \
        "CC = cc" \
-       "CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DSHM" \
+       "CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.irix6-64" \
-       "XLIBS = -rpath ../lib64 -lX11 -lXmu -lXi -lm"
-
-# May want to try these CFLAGS for better performance under Linux and GCC:
-# -fPIC -O2 -ansi -pedantic -mieee-fp -DSHM -funroll-loops
-# -fexpensive-optimizations -fomit-frame-pointer -ffast-math
-# and  -malign-loops=2 -malign-jumps=2 -malign-functions=2 for Pentium
+       "APP_LIB_DEPS = -rpath ../lib64 -lX11 -lXmu -lXi -lm"
 
 linux:
+       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
+       "GL_LIB = libGL.so" \
+       "GLU_LIB = libGLU.so" \
+       "GLUT_LIB = libglut.so" \
+       "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc" \
+       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include" \
+       "MAKELIB = ../bin/mklib.linux" \
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm"
+
+linux-static:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O2 -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -I/usr/X11R6/include" \
+       "CFLAGS = -O3 -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm"
-
-# One Linux user reports having to use these XLIBS:
-#    -lMrm -lXmu -lXi -lXt -lXext -lXmu -lXi -lSM -lICE -lX11
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm -lpthread"
 
-linux-elf:
+linux-trace:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -I/usr/X11R6/include" \
+       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -DMESA_TRACE -I/usr/X11R6/include" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm"
 
-linux-glide:
+linux-x86:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
-       "CC = gcc" \
-       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DFX -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc -malign-loops=2 -malign-jumps=2 -malign-functions=2" \
+       "CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_KATMAI_ASM -DPTHREADS -I/usr/X11R6/include" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -L/usr/local/glide/lib -lglide2x -lm"
-
-# Linux on Intel X86: assembly language optimizations
-linux-386:
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform_raw1.S X86/3dnow_xform_raw2.S \
+               X86/3dnow_xform_raw3.S X86/3dnow_xform_raw4.S \
+               X86/3dnow_xform_masked1.S X86/3dnow_xform_masked2.S \
+               X86/3dnow_xform_masked3.S X86/3dnow_xform_masked4.S \
+               X86/3dnow_norm_raw.S X86/3dnow_vertex.S \
+               X86/katmai_xform_raw1.S X86/katmai_xform_masked1.S \
+               X86/katmai_xform_raw2.S X86/katmai_xform_masked2.S \
+               X86/katmai_xform_raw3.S X86/katmai_xform_masked3.S \
+               X86/katmai_xform_raw4.S X86/katmai_xform_masked4.S \
+               X86/katmai_norm_raw.S X86/katmai_vertex.S"
+
+linux-x86-static:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
-       "CC = gcc" \
-       "CFLAGS = -O2 -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DUSE_X86_ASM -I/usr/X11R6/include" \
+       "OSMESA_LIB = libOSMesa.a" \
+       "CC = gcc -malign-loops=2 -malign-jumps=2 -malign-functions=2" \
+       "CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_KATMAI_ASM -DPTHREADS -I/usr/X11R6/include" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform_raw1.S X86/3dnow_xform_raw2.S \
+               X86/3dnow_xform_raw3.S X86/3dnow_xform_raw4.S \
+               X86/3dnow_xform_masked1.S X86/3dnow_xform_masked2.S \
+               X86/3dnow_xform_masked3.S X86/3dnow_xform_masked4.S \
+               X86/3dnow_norm_raw.S X86/3dnow_vertex.S \
+               X86/katmai_xform_raw1.S X86/katmai_xform_masked1.S \
+               X86/katmai_xform_raw2.S X86/katmai_xform_masked2.S \
+               X86/katmai_xform_raw3.S X86/katmai_xform_masked3.S \
+               X86/katmai_xform_raw4.S X86/katmai_xform_masked4.S \
+               X86/katmai_norm_raw.S X86/katmai_vertex.S"
 
-linux-386-elf:
+# Contributed by Uwe_Maurer@t-online.de
+linux-ggi:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
-       "GLW_LIB = libGLw.so" \
-       "CC = gcc" \
-       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DUSE_X86_ASM -I/usr/X11R6/include" \
-       "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
+       "CC = gcc"  \
+       "CFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DGGI -DCDECL=" \
+       "MAKELIB = ../bin/mklib.ggi" \
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lggi -lm"
 
-linux-386-glide:
+# Contributed by Emmanuel marty core@ggi-project.org
+linux-386-ggi:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
-       "CC = gcc" \
-       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DSHM -DFX -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
-       "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -L/usr/local/glide/lib -lglide2x -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc"  \
+       "CFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DUSE_X86_ASM -DGGI -DCDECL=" \
+       "MAKELIB = ../bin/mklib.ggi" \
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lggi -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S"
 
-linux-386-glide-mits:
+linux-glide:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DFX -D_REENTRANT -DMITS -DUSE_X86_ASM -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
+       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DFX -DPTHREADS -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -L/usr/local/glide/lib -lglide2x -lm -lpthread" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -L/usr/local/glide/lib -lglide2x" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lglut -lGLU -lGL"
 
-linux-386-opt-V2-glide:
+linux-386-glide:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -O3 -m486 -fomit-frame-pointer -pipe -ansi -pedantic -ffast-math -fexpensive-optimizations -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DFX -DFX_V2 -DUSE_X86_ASM -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include"\
+       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_XSHM -DFX -DPTHREADS -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -L/usr/local/glide/lib -lglide2x -lm -lpthread" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -L/usr/local/glide/lib -lglide2x -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S"
 
 linux-386-opt-glide:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -547,185 +653,153 @@ linux-386-opt-glide:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -O3 -m486 -fomit-frame-pointer -pipe -ansi -pedantic -ffast-math -fexpensive-optimizations -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DFX -DUSE_X86_ASM -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
+       "CFLAGS = -O3 -m486 -fomit-frame-pointer -pipe -ansi -pedantic -ffast-math -fexpensive-optimizations -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DFX -DUSE_X86_ASM -DPTHREADS -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -L/usr/local/glide/lib -lglide2x -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -L/usr/local/glide/lib -lglide2x -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S"
 
-linux-3dnow:
+linux-386-opt-V2-glide:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
-       "CC = gcc -malign-loops=2 -malign-jumps=2 -malign-functions=2" \
-       "CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -D_SVID_SOURCE -D_BSD_SOURCE -DSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -I/usr/X11R6/include" \
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc" \
+       "CFLAGS = -O3 -m486 -fomit-frame-pointer -pipe -ansi -pedantic -ffast-math -fexpensive-optimizations -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DFX -DFX_V2 -DUSE_X86_ASM -DPTHREAD -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include"\
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S \
-       X86/mmx_blend.S \
-       X86/3dnow_xform_raw1.S X86/3dnow_xform_raw2.S \
-       X86/3dnow_xform_raw3.S X86/3dnow_xform_raw4.S \
-       X86/3dnow_xform_masked1.S X86/3dnow_xform_masked2.S \
-       X86/3dnow_xform_masked3.S X86/3dnow_xform_masked4.S \
-       X86/3dnow_norm_raw.S X86/vertex.S X86/vertex_3dnow.S" 
-
-linux-3dnow-glide:
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -L/usr/local/glide/lib -lglide2x -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S"
+
+linux-x86-glide:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc -malign-loops=2 -malign-jumps=2 -malign-functions=2" \
-       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DSHM -DFX -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include -I/usr/src/mesa-glx/src/FX/X86" \
+       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_KATMAI_ASM -DUSE_XSHM -DFX -DPTHREADS -I/usr/X11R6/include -I/usr/include/glide -I/usr/local/glide/include -I/usr/src/mesa-glx/src/FX/X86" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -L/usr/local/glide/lib -lglide2x -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S \
-       X86/mmx_blend.S \
-       X86/3dnow_xform_raw1.S X86/3dnow_xform_raw2.S \
-       X86/3dnow_xform_raw3.S X86/3dnow_xform_raw4.S \
-       X86/3dnow_xform_masked1.S X86/3dnow_xform_masked2.S \
-       X86/3dnow_xform_masked3.S X86/3dnow_xform_masked4.S \
-       X86/3dnow_norm_raw.S X86/vertex.S X86/vertex_3dnow.S \
-       FX/X86/fx_3dnow_fastpath.S"
-
-
-# Contributed by C. Alex. North-Keys (erlkonig@talisman.org)
-linux-386-pthread-shared-glide:
-       $(MAKE) $(MFLAGS) targets \
-       "GL_LIB = libGL.so" \
-       "GLU_LIB = libGLU.so" \
-       "GLUT_LIB = libglut.so" \
-       "CC = gcc" \
-       "CFLAGS = -O3 -fPIC -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM -DUSE_X86_ASM -D_REENTRANT -DTHREADS -DPTHREADS -DFX -I/usr/include/glide -I/usr/local/glide/include" \
-       "MAKELIB = ../mklib.glide" \
-       "XLIBS = -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lpthread -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S \
-       X86/mmx_blend.S X86/vertex.S"
-
-# Contributed by Uwe_Maurer@t-online.de
-linux-ggi:
-       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
-       "GL_LIB = libGL.so" \
-       "GLU_LIB = libGLU.so" \
-       "GLUT_LIB = libglut.so" \
-       "GLW_LIB = libGLw.a" \
-       "CC = gcc"  \
-       "CFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM -DGGI -DCDECL=" \
-       "MAKELIB = ../bin/mklib.ggi" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lggi -lm"
-
-# Contributed by Emmanuel marty core@ggi-project.org
-linux-386-ggi:
-       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
-       "GL_LIB = libGL.so" \
-       "GLU_LIB = libGLU.so" \
-       "GLUT_LIB = libglut.so" \
-       "GLW_LIB = libGLw.so" \
-       "CC = gcc"  \
-       "CFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM -DUSE_X86_ASM -DGGI -DCDECL=" \
-       "MAKELIB = ../bin/mklib.ggi" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lggi -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -L/usr/local/glide/lib -lglide2x -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform_raw1.S X86/3dnow_xform_raw2.S \
+               X86/3dnow_xform_raw3.S X86/3dnow_xform_raw4.S \
+               X86/3dnow_xform_masked1.S X86/3dnow_xform_masked2.S \
+               X86/3dnow_xform_masked3.S X86/3dnow_xform_masked4.S \
+               X86/3dnow_norm_raw.S X86/3dnow_vertex.S \
+               FX/X86/fx_3dnow_fastpath.S \
+               X86/katmai_xform_raw1.S X86/katmai_xform_masked1.S \
+               X86/katmai_xform_raw2.S X86/katmai_xform_masked2.S \
+               X86/katmai_xform_raw3.S X86/katmai_xform_masked3.S \
+               X86/katmai_xform_raw4.S X86/katmai_xform_masked4.S \
+               X86/katmai_norm_raw.S X86/katmai_vertex.S"
 
-# Linux on Alpha (based on email from John Ferguson ferguson@viz.tamu.edu)
 linux-alpha:
-       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
-       "GL_LIB = libGL.a" \
-       "GLU_LIB = libGLU.a" \
-       "GLUT_LIB = libglut.so" \
-       "GLW_LIB = libGLw.a" \
-       "CC = gcc" \
-       "CFLAGS = -O2 -mieee -pedantic -L/usr/X11R6/lib -D_XOPEN_SOURCE -DSHM" \
-       "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lm"
-
-linux-alpha-elf:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE -DSHM" \
+       "CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE -DSHM" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXi -lm"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm"
 
-# Not tested, but should be okay on any RedHat-based linux for PowerPC machines
-# If your linux supports shared libraries, you might want to build with the 
-# the "linux-ppc-shared" entry instead
-# You might want to change the mcpu flag appropriately for your 
-# processor (601, 603, 604, etc.), it but doesn't make much difference
-linux-ppc:
+linux-alpha-static:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM" \
+       "CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -L/usr/X11R6/lib -D_XOPEN_SOURCE -DSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm"
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lm"
 
-# -O5 and -fexpensive-optimizations causes a compiler crash for Linux PPC R4
-linux-ppc-so:
-       $(MAKE) targets \
+linux-ppc:
+       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM" \
+       "CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm"
 
-# Contributed by John Stone
-linux-386-pthread:
+linux-ppc-static:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
+       "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O2 -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R\6/include -DSHM -DUSE_X86_ASM -D_REENTRANT -DTHREADS -DPTHREADS" \
+       "CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lpthread -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm"
 
-# Contributed by John Gotts
-linux-386-pthread-shared:
-       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
-       "GL_LIB = libGL.so" \
-       "GLU_LIB = libGLU.so" \
-       "GLUT_LIB = libglut.so" \
-       "CC = gcc" \
-       "CFLAGS = -O3 -fPIC -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/us\r/X11R6/include -DSHM -DUSE_X86_ASM -D_REENTRANT -DTHREADS -DPTHREADS" \
-       "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lpthread -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
-
-linux-sparc:
+linux-sparc-static:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -pedantic -funroll-loops -O3 -DSHM" \
+       "CFLAGS = -pedantic -funroll-loops -O3 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXt -lSM -lICE -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXt -lXmu -lXi -lm"
 
 # Replace -mv8 with -mcypress, -msupersparc or -msparclite as appropriate.
-linux-sparc5-elf:
+linux-sparc5:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -mv8 -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM" \
+       "CFLAGS = -mv8 -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm"
 
 # 32-bit Sparc ELF userland, on UltraSparc
 linux-sparc-ultra:
@@ -734,26 +808,30 @@ linux-sparc-ultra:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -mv8 -O2 -mtune=ultrasparc -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM" \
+       "CFLAGS = -mv8 -O2 -mtune=ultrasparc -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm"
 
 # May want to add these CFLAGS for better performance under LynxOS and GCC:
-# -fPIC -O2 -ansi -pedantic -mieee-fp -DSHM -funroll-loops
+# -fPIC -O2 -ansi -pedantic -mieee-fp -DUSE_XSHM -funroll-loops
 # -fexpensive-optimizations -fomit-frame-pointer -ffast-math
 # and  -malign-loops=2 -malign-jumps=2 -malign-functions=2 for Pentium
-
 lynxos:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O2 -ansi -pedantic -funroll-loops -ffast-math -DSHM" \
+       "CFLAGS = -O2 -ansi -pedantic -funroll-loops -ffast-math -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11/lib -lXext -lXi -lXmu -lX11 -lbsd -lm"
+       "APP_LIB_DEPS = -L/usr/X11/lib -lXext -lXi -lXmu -lX11 -lbsd -lm"
 
 machten-2.2:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -761,10 +839,11 @@ machten-2.2:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -DTENON -D__MACHTEN__ -fstrength-reduce -m68881 -O2" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -L/usr/lib/X11 -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11 -lX11 -lm"
 
 machten-4.0:
        $(MAKE) targets \
@@ -772,10 +851,11 @@ machten-4.0:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -DTENON -D__MACHTEN__ -fstrength-reduce -O2" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -L/usr/X11R5/lib -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/X11R5/lib -lX11 -lm"
 
 mklinux:
        $(MAKE) targets \
@@ -783,10 +863,11 @@ mklinux:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -pedantic -O2" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lmoto -L/usr/X11/lib -lXmu -lX11 -lm"
+       "APP_LIB_DEPS = -lmoto -L/usr/X11/lib -lXmu -lX11 -lm"
 
 netbsd:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -794,10 +875,11 @@ netbsd:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -O2 -fPIC -DSHM -I/usr/X11R6/include -DHZ=100"  \
+       "CFLAGS = -O2 -fPIC -DUSE_XSHM -I/usr/X11R6/include -DHZ=100"  \
        "MAKELIB = ../bin/mklib.netbsd" \
-       "XLIBS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
 next:  
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -814,16 +896,18 @@ openbsd:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = cc" \
-       "CFLAGS = -O2 -fPIC -I/usr/X11R6/include -DSHM -DHZ=100" \
+       "CFLAGS = -O2 -fPIC -I/usr/X11R6/include -DUSE_XSHM -DHZ=100" \
        "MAKELIB = ../bin/mklib.openbsd" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXi -lm"
 
 openstep:      
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "DRIVER_SOURCES = OSmesa/osmesa.c" \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = ${MYCC}" \
        "CFLAGS = -traditional-cpp -DOPENSTEP -O4" \
        "MAKELIB = ../bin/mklib.openstep"
@@ -833,6 +917,7 @@ openstep-win32:
        "DRIVER_SOURCES = OSmesa/osmesa.c" \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -DOPENSTEP -O4" \
        "MAKELIB = ../bin/mklib.openstep"
@@ -843,11 +928,16 @@ os2-x11:
        "GLU_LIB  = MesaGLU.a" \
        "GLUT_LIB = glut.a" \
        "GLW_LIB = GLw.a" \
+       "OSMESA_LIB = OSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -Zmt -O3 -m486 -funroll-loops -Wall -Wno-unused -ansi -pedantic -ffast-math -DUSE_X86_ASM -D_SVID_SOURCE -D_BSD_SOURCE -I$(X11ROOT)/XFree86/include" \
        "MAKELIB = ..\\bin\\mklib-emx.cmd " \
-       "XLIBS = -Zmt -Zcrtdll -Zexe -L$(X11ROOT)/XFree86/lib -lXt -lX11 -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "APP_LIB_DEPS = -Zmt -Zcrtdll -Zexe -L$(X11ROOT)/XFree86/lib -lXt -lX11 -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S"
 
 osf1:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -855,10 +945,11 @@ osf1:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = -O2 -std1 -ieee_with_no_inexact -DSHM -DNO_CONST" \
+       "CFLAGS = -O0 -std1 -ieee_with_no_inexact -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 osf1-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -866,10 +957,11 @@ osf1-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = cc" \
-       "CFLAGS = -O2 -std1 -ieee_with_no_inexact -DSHM -DNO_CONST" \
+       "CFLAGS = -O0 -std1 -ieee_with_no_inexact -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.osf1" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 pgi-cygnus:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -877,10 +969,11 @@ pgi-cygnus:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = pgcc" \
        "CFLAGS = -fast -cyglibs -Munix -I. -DWIN32 -D__WIN32__ -D_WINDOWS " \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lm"
+       "APP_LIB_DEPS = -lX11 -lm"
 
 pgi-mingw32:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -888,10 +981,11 @@ pgi-mingw32:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = pgcc" \
        "CFLAGS = -fast -msvcrt -Munix -I. -DWIN32 -D__WIN32__ -D_WINDOWS " \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lm"
+       "APP_LIB_DEPS = -lX11 -lm"
 
 # QNX V4 & Watcom Compiler
 qnx:
@@ -900,10 +994,11 @@ qnx:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
        "CFLAGS = -O" \
        "MAKELIB = ../bin/mklib.qnx" \
-       "XLIBS = -L/usr/X11/lib -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/X11/lib -lX11 -lm"
 
 sco:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -911,10 +1006,11 @@ sco:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -pedantic -O2 -mieee-fp" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11/lib -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/X11/lib -lX11 -lm"
 
 sco5:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -922,10 +1018,11 @@ sco5:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -pedantic -O2 -mieee-fp" \
-       "MAKELIB = ../mklib.ar-ruv" \
-       "XLIBS = -lXm -lXt -lX11 -lXmu -lXext -lsocket -lx -lm"
+       "MAKELIB = ../bin/mklib.ar-ruv" \
+       "APP_LIB_DEPS = -lXm -lXt -lX11 -lXmu -lXext -lsocket -lx -lm"
 
 solaris-x86:
        $(MAKE) -f Makefile.X11 targets \
@@ -933,10 +1030,11 @@ solaris-x86:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = -Xa -xO3 -xpentium -KPIC -I/usr/openwin/include -DSHM" \
+       "CFLAGS = -Xa -xO3 -xpentium -KPIC -I/usr/openwin/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.solaris" \
-       "XLIBS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 solaris-x86-gcc:
        $(MAKE) -f Makefile.X11 targets \
@@ -944,10 +1042,11 @@ solaris-x86-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O3 -m486 -fPIC -I/usr/openwin/include -DSHM" \
+       "CFLAGS = -O3 -m486 -fPIC -I/usr/openwin/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.solaris" \
-       "XLIBS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 sunos4:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -955,10 +1054,11 @@ sunos4:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = acc" \
-       "CFLAGS = -O -DSHM -DSUNOS4" \
+       "CFLAGS = -O -DUSE_XSHM -DSUNOS4" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 sunos4-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -966,10 +1066,11 @@ sunos4-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = acc" \
-       "CFLAGS = -Kpic -O -I/usr/include/X11R5 -DSHM -DSUNOS4" \
+       "CFLAGS = -Kpic -O -I/usr/include/X11R5 -DUSE_XSHM -DSUNOS4" \
        "MAKELIB = ld -assert pure-text -o" \
-       "XLIBS = -L/usr/lib/X11R5 -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/lib/X11R5 -lX11 -lXext -lXmu -lXi -lm"
 
 sunos4-gcc:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -977,10 +1078,11 @@ sunos4-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O3 -DSHM -DSUNOS4 -I/usr/openwin/include" \
+       "CFLAGS = -O3 -DUSE_XSHM -DSUNOS4 -I/usr/openwin/include" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 sunos4-gcc-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -988,10 +1090,11 @@ sunos4-gcc-sl:
        "GLU_LIB = libGLU.so.$(VERSION)" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -fPIC -O3 -I/usr/openwin/include -I/usr/include/X11R5 -I/usr/include/X11R5 -DSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -fPIC -O3 -I/usr/openwin/include -I/usr/include/X11R5 -I/usr/include/X11R5 -DUSE_XSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.sunos4" \
-       "XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 sunos4-gcc-x11r6-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -999,10 +1102,11 @@ sunos4-gcc-x11r6-sl:
        "GLU_LIB = libGLU.so.$(VERSION)" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -fPIC -O3 -I/usr/X11R6.3/include -DSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -fPIC -O3 -I/usr/X11R6.3/include -DUSE_XSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.sunos4" \
-       "XLIBS = -L/usr/X11R6.3/lib/X11 -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/X11R6.3/lib/X11 -lX11 -lXext -lXmu -lXi -lm"
 
 sunos5:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1010,10 +1114,11 @@ sunos5:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 sunos5-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1021,10 +1126,11 @@ sunos5-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = cc" \
-       "CFLAGS = -KPIC -Xa -O -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -KPIC -Xa -O -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.sunos5" \
-       "XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 sunos5-ultra:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1032,10 +1138,11 @@ sunos5-ultra:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = -Xa -fast -xO5 -xtarget=ultra -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -Xa -fast -xO5 -xtarget=ultra -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 sunos5-ultra-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1043,10 +1150,11 @@ sunos5-ultra-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = cc" \
-       "CFLAGS = -KPIC -Xa -fast -xO5 -xtarget=ultra -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -KPIC -Xa -fast -xO5 -xtarget=ultra -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.sunos5" \
-       "XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 sunos5-gcc:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1054,10 +1162,11 @@ sunos5-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O3 -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -O3 -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 sunos5-gcc-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1065,10 +1174,11 @@ sunos5-gcc-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -fPIC -O3 -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -fPIC -O3 -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.sunos5" \
-       "XLIBS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 sunos5-x11r6-gcc-sl:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1076,10 +1186,11 @@ sunos5-x11r6-gcc-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -fPIC -O3 -DSHM -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -fPIC -O3 -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.sunos5" \
-       "XLIBS = -lSM -lICE -lX11 -lXext -lXmu -lXi -lnsl -lsocket -lm"
+       "APP_LIB_DEPS = -lSM -lICE -lX11 -lXext -lXmu -lXi -lnsl -lsocket -lm"
 
 # Contributed by John Stone
 sunos5-pthread:
@@ -1088,9 +1199,9 @@ sunos5-pthread:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "CC = cc" \
-       "CFLAGS = -mt -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4\_BUG -DTHREADS -DPTHREADS" \
+       "CFLAGS = -mt -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG -DPTHREADS" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lpthread -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lpthread -lm"
 
 # Contributed by John Stone
 sunos5-thread:
@@ -1099,9 +1210,9 @@ sunos5-thread:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "CC = cc" \
-       "CFLAGS = -mt -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DSHM -DSOLARIS_2_4\_BUG -DTHREADS -DSOLARIS_THREADS" \
+       "CFLAGS = -mt -Xa -fast -xO4 -native -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG -DSOLARIS_THREADS" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lthread -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lthread -lm"
 
 # Contributed by John Stone
 sunos5-gcc-thread:
@@ -1110,9 +1221,9 @@ sunos5-gcc-thread:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "CC = gcc" \
-       "CFLAGS = -O3 -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG -D_REENTRANT -DTHREADS -DSOLARIS_THR\EADS" \
+       "CFLAGS = -O3 -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG -D_REENTRANT -DSOLARIS_THREADS" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lthread -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lthread -lm"
 
 # Contributed by John Stone
 sunos5-gcc-pthread:
@@ -1121,9 +1232,9 @@ sunos5-gcc-pthread:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "CC = gcc" \
-       "CFLAGS = -O3 -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG -D_REENTRANT -DTHREADS -DPTHREADS" \
+       "CFLAGS = -O3 -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG -D_REENTRANT -DPTHREADS" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lpthread -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lpthread -lm"
 
 # from Ron Metoyer (metoyer@iexist.flw.lucent.com)
 sunSolaris-CC:
@@ -1132,10 +1243,11 @@ sunSolaris-CC:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = CC" \
-       "CFLAGS = -O -I/usr/openwin/include -DSHM -DSOLARIS_2_4_BUG" \
+       "CFLAGS = -O -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
 #This config doesn't work, Ultrix C compiler isn't ANSI compliant
 ultrix:
@@ -1144,10 +1256,11 @@ ultrix:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
        "CFLAGS = -O -Dconst=/**/" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lXmu -lX11 -lXi -lm"
+       "APP_LIB_DEPS = -lXmu -lX11 -lXi -lm"
 
 ultrix-gcc:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1155,10 +1268,11 @@ ultrix-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -pedantic -O2" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lXmu -lX11 -lXi -lm"
+       "APP_LIB_DEPS = -lXmu -lX11 -lXi -lm"
 
 # tested on Cray C90 running UNICOS 8.0.4
 unicos:
@@ -1167,10 +1281,11 @@ unicos:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
        "CFLAGS =" \
        "MAKELIB = ../bin/mklib/ar-rcv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 unixware:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1178,10 +1293,11 @@ unixware:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = -O -I/usr/X/include -DSHM" \
+       "CFLAGS = -O -I/usr/X/include -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lsocket -lnsl -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lsocket -lnsl -lm"
 
 unixware-shared:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1189,10 +1305,11 @@ unixware-shared:
        "GLU_LIB = libGLU" \
        "GLUT_LIB = libglut" \
        "GLW_LIB = libGLw" \
+       "OSMESA_LIB = libOSMesa" \
        "CC = cc" \
-       "CFLAGS = -O -I/usr/X/include -KPIC,inline -DSHM" \
+       "CFLAGS = -O -I/usr/X/include -KPIC,inline -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.solaris" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lsocket -lnsl -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lsocket -lnsl -lm"
 
 uwin:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1202,7 +1319,7 @@ uwin:
        "CC = gcc" \
        "CFLAGS = -pedantic -O2 -I/usr/X11/include " \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/X11/lib -lX11 -lm"
+       "APP_LIB_DEPS = -L/usr/X11/lib -lX11 -lm"
 
 vistra:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1210,10 +1327,11 @@ vistra:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
        "CFLAGS = -pedantic -O2" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -lX11 -lsocket -lnsl -lgen -lm"
+       "APP_LIB_DEPS = -lX11 -lsocket -lnsl -lgen -lm"
 
 
 # for debugging on IRIX 5.x systems
@@ -1228,11 +1346,12 @@ irix-debug:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "LIBDIR = ../lib32" \
        "CC = cc" \
-       "CFLAGS = -g -n32 -ansi -fullwarn -DSHM -DDEBUG -woff 1209,1210,1506,1521,3496" \
+       "CFLAGS = -g -n32 -ansi -fullwarn -DUSE_XSHM -DDEBUG -woff 1209,1210,1506,1521,3496" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -rpath ../lib32 -lX11 -lXext -lXmu -lXi -lfpe -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -rpath ../lib32 -lX11 -lXext -lXmu -lXi -lfpe -lXext -lXmu -lXi -lm"
 
 DEBUG:
        pmake $(MFLAGS) -f Makefile.X11 targets \
@@ -1240,35 +1359,70 @@ DEBUG:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
-       "CFLAGS = -g -ansi -prototypes -fullwarn -DSHM -DDEBUG" \
+       "CFLAGS = -g -ansi -prototypes -fullwarn -DUSE_XSHM -DDEBUG" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
-       "XLIBS = -lX11 -lXext -lXmu -lXi -lfpe -lm"
+       "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lfpe -lm"
 
 # for debugging on Linux systems
 linux-debug:
+       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
+       "GL_LIB = libGL.so" \
+       "GLU_LIB = libGLU.so" \
+       "GLUT_LIB = libglut.so" \
+       "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc" \
+       "CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DSVGA -I/usr/include/glide -DFX" \
+       "MAKELIB = ../bin/mklib.linux" \
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -lvga -L/usr/local/glide/lib -lglide2x" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lglut -lGLU -lGL"
+
+linux-static-debug:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -g -ansi -pedantic -Wall -DSHM -DDEBUG -DSVGA -DFX -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM_not -I/usr/include/glide -I/usr/local/glide/include" \
+       "CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -DUSE_XSHM -DDEBUG -DMESA_DEBUG -DSVGA -DFX -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/include/glide -I/usr/local/glide/include" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/local/glide/lib -lglide2x -ltexus -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lvga -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -ltexus -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lvga -lm" \
 
-linux-elf-debug:
+linux-x86-debug:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
-       "CC = gcc" \
-       "CFLAGS = -g -ansi -pedantic -Wall -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM -DDEBUG" \
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc -malign-loops=2 -malign-jumps=2 -malign-functions=2" \
+       "CFLAGS = -O2 -g -ansi -pedantic -Wall -Wmissing-prototypes -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_KATMAI_ASM -DPTHREADS -I/usr/X11R6/include -DDEBUG -DMESA_DEBUG" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lvga -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \
+       "GLU_LIB_DEPS = -L../lib -lGL -lm" \
+       "GLUT_LIB_DEPS = -L../lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
+       "APP_LIB_DEPS = -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform_raw1.S X86/3dnow_xform_raw2.S \
+               X86/3dnow_xform_raw3.S X86/3dnow_xform_raw4.S \
+               X86/3dnow_xform_masked1.S X86/3dnow_xform_masked2.S \
+               X86/3dnow_xform_masked3.S X86/3dnow_xform_masked4.S \
+               X86/3dnow_norm_raw.S X86/3dnow_vertex.S \
+               X86/katmai_xform_raw1.S X86/katmai_xform_masked1.S \
+               X86/katmai_xform_raw2.S X86/katmai_xform_masked2.S \
+               X86/katmai_xform_raw3.S X86/katmai_xform_masked3.S \
+               X86/katmai_xform_raw4.S X86/katmai_xform_masked4.S \
+               X86/katmai_norm_raw.S X86/katmai_vertex.S"
 
 linux-glide-debug:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1276,11 +1430,11 @@ linux-glide-debug:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -g -ansi -pedantic -Wall -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DSHM -DFX -DDEBUG -I/usr/local/glide/include -I/usr/include/glide" \
+       "CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DFX -DDEBUG -I/usr/local/glide/include -I/usr/include/glide" \
        "MAKELIB = ../bin/mklib.linux" \
-       "XLIBS = -L/usr/local/glide/lib -lglide2x -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lvga -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/vertex.S"
+       "APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lvga -lm -lpthread"
 
 # for profiling on Linux systems
 linux-prof:
@@ -1289,15 +1443,54 @@ linux-prof:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
+       "CC = gcc" \
+       "CFLAGS = -Wall -O2 -pg -ansi -pedantic -ffast-math -DUSE_XSHM -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_KATMAI_ASM" \
+       "MAKELIB = ../bin/mklib.ar-ruv" \
+       "APP_LIB_DEPS = -L/usr/X11/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform_raw1.S X86/3dnow_xform_raw2.S \
+               X86/3dnow_xform_raw3.S X86/3dnow_xform_raw4.S \
+               X86/3dnow_xform_masked1.S X86/3dnow_xform_masked2.S \
+               X86/3dnow_xform_masked3.S X86/3dnow_xform_masked4.S \
+               X86/3dnow_norm_raw.S X86/3dnow_vertex.S \
+               FX/X86/fx_3dnow_fastpath.S \
+               X86/katmai_xform_raw1.S X86/katmai_xform_masked1.S \
+               X86/katmai_xform_raw2.S X86/katmai_xform_masked2.S \
+               X86/katmai_xform_raw3.S X86/katmai_xform_masked3.S \
+               X86/katmai_xform_raw4.S X86/katmai_xform_masked4.S \
+               X86/katmai_norm_raw.S X86/katmai_vertex.S"
+
+linux-glide-prof:
+       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
+       "GL_LIB = libGL.a" \
+       "GLU_LIB = libGLU.a" \
+       "GLUT_LIB = libglut.a" \
+       "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O2 -pg -ansi -pedantic -Wall -DSHM -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -I/usr/include/glide -I/usr/local/glide/include" \
+       "CFLAGS = -O2 -pg -ansi -pedantic -Wall -DUSE_XSHM -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_KATMAI_ASM -I/usr/include/glide -I/usr/local/glide/include" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
-       "XLIBS = -L/usr/local/glide/lib -lglide2x -L/usr/X11/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S \
-       X86/mmx_blend.S \
-       X86/3dnow_xform_raw1.S X86/3dnow_xform_raw2.S \
-       X86/3dnow_xform_raw3.S X86/3dnow_xform_raw4.S \
-       X86/3dnow_xform_masked1.S X86/3dnow_xform_masked2.S \
-       X86/3dnow_xform_masked3.S X86/3dnow_xform_masked4.S \
-       X86/3dnow_norm_raw.S X86/vertex.S X86/vertex_3dnow.S \
-       FX/X86/fx_3dnow_fastpath.S"
+       "APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -L/usr/X11/lib -lX11 -lXext -lXmu -lXt -lXi -lSM -lICE -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform_raw2.S X86/x86_xform_raw3.S \
+               X86/x86_xform_raw4.S X86/x86_xform_masked2.S \
+               X86/x86_xform_masked3.S X86/x86_xform_masked4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform_raw1.S X86/3dnow_xform_raw2.S \
+               X86/3dnow_xform_raw3.S X86/3dnow_xform_raw4.S \
+               X86/3dnow_xform_masked1.S X86/3dnow_xform_masked2.S \
+               X86/3dnow_xform_masked3.S X86/3dnow_xform_masked4.S \
+               X86/3dnow_norm_raw.S X86/3dnow_vertex.S \
+               FX/X86/fx_3dnow_fastpath.S \
+               X86/katmai_xform_raw1.S X86/katmai_xform_masked1.S \
+               X86/katmai_xform_raw2.S X86/katmai_xform_masked2.S \
+               X86/katmai_xform_raw3.S X86/katmai_xform_masked3.S \
+               X86/katmai_xform_raw4.S X86/katmai_xform_masked4.S \
+               X86/katmai_norm_raw.S X86/katmai_vertex.S"