minor clean-ups
[mesa.git] / Make-config
index 7b40a56517726e9591f61a9fb6300c3b53fe8da9..03ae5081b2a94c94e18267d6648ac1c76dbf06bf 100644 (file)
@@ -1,13 +1,13 @@
-# $Id: Make-config,v 1.29 2000/09/26 15:27:20 brianp Exp $
+# $Id: Make-config,v 1.57 2001/12/14 17:48:19 kschultz Exp $
 
-MESA_MAJOR=3
-MESA_MINOR=5
+MESA_MAJOR=4
+MESA_MINOR=1
 MESA_TINY=0
 VERSION=$(MESA_MAJOR).$(MESA_MINOR)
 
 # Mesa 3-D graphics library
 # 
-# Copyright (C) 1999-2000  Brian Paul   All Rights Reserved.
+# Copyright (C) 1999-2001  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"),
@@ -67,6 +67,7 @@ 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" \
@@ -78,6 +79,7 @@ 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" \
@@ -96,6 +98,7 @@ 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" \
@@ -107,6 +110,7 @@ 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" \
@@ -118,6 +122,7 @@ 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" \
@@ -129,6 +134,7 @@ 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" \
@@ -140,7 +146,9 @@ cygnus:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "DLLTOOL = dlltool" \
        "WING_DIR= /wing" \
        "LD = ld" \
@@ -148,6 +156,7 @@ cygnus:
                -O2 -funroll-loops \
                -fexpensive-optimizations -fomit-frame-pointer -ffast-math \
                -malign-loops=2 -malign-jumps=2 -malign-functions=2" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "WLIBS = ../lib/wing32.a -lkernel32 -luser32 -lgdi32"
 
@@ -157,6 +166,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" \
@@ -168,14 +178,36 @@ cygnus-linux:
        "MAKELIB = ../bin/mklib.cygnus-linux" \
        "WLIBS = ../lib/wing32.a -lkernel32 -luser32 -lgdi32"
 
+darwin:
+       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
+       "GL_LIB = libGL.dylib" \
+       "GLU_LIB = libGLU.dylib" \
+       "GLUT_LIB = libglut.dylib" \
+       "GLW_LIB = libGLw.dylib" \
+       "OSMESA_LIB = libOSMesa.dylib" \
+       "CC = cc" \
+       "CPLUSPLUS = cc" \
+       "CFLAGS = -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math \
+                -funroll-loops -fexpensive-optimizations -no-cpp-precomp \
+                -dynamic -Ddarwin" \
+       "CCFLAGS = $(CFLAGS)" \
+       "MAKELIB = ../bin/mklib.darwin" \
+       "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" 
+
 dgux:
        $(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" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -lX11 -lm"
 
@@ -185,8 +217,11 @@ freebsd:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O2 -fPIC -pedantic -I/usr/X11R6/include -DUSE_XSHM -DHZ=100" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.freebsd" \
        "APP_LIB_DEPS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
@@ -196,11 +231,16 @@ freebsd-386:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O3 -ffast-math -fPIC -pedantic -I/usr/X11R6/include -DUSE_XSHM -DHZ=100 -DUSE_X86_ASM -DFREEBSD" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.freebsd" \
        "APP_LIB_DEPS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/glapi_x86.S"
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S"
 
 gcc:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -208,8 +248,11 @@ gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -pedantic -O2" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -lX11 -lm"
 
@@ -219,6 +262,7 @@ 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 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
@@ -230,8 +274,11 @@ hpux9-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
 
@@ -241,6 +288,7 @@ 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 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.hpux" \
@@ -252,8 +300,11 @@ hpux9-gcc-sl:
        "GLU_LIB = libGLU.sl" \
        "GLUT_LIB = libglut.sl" \
        "GLW_LIB = libGLw.sl" \
+       "OSMESA_LIB = libOSMesa.sl" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.hpux" \
        "APP_LIB_DEPS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
 
@@ -263,6 +314,7 @@ 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 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
@@ -274,6 +326,7 @@ 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 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.hpux" \
@@ -285,8 +338,11 @@ hpux10-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include  -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
@@ -296,19 +352,23 @@ hpux10-gcc-sl:
        "GLU_LIB = libGLU.sl" \
        "GLUT_LIB = libglut.sl" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.hpux" \
        "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
 irix4:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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 = cc" \
        "CFLAGS = -O2 -ansi -prototypes -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
@@ -316,11 +376,12 @@ irix4:
 
 # On IRIX 5.3 -sopt causes a problem in drawpixels.c so we don't use it
 irix5:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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 = cc" \
        "CFLAGS = -O2 -ansi -fullwarn -DUSE_XSHM -DNO_CONST" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
@@ -333,68 +394,92 @@ irix5-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O2 -pedantic -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
        "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 # IRIX 5 using Dynamic Shared Objects (DSO)
 irix5-dso:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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 = cc" \
        "CFLAGS = -O2 -ansi -fullwarn -DUSE_XSHM -DNO_CONST" \
        "MAKELIB = ../bin/mklib.irix5" \
        "APP_LIB_DEPS = -rpath ../lib -lX11 -lXmu -lXi -lm"
 
+# IRIX 6 32-bit Targets
+#      Turn Warnings off for these errors (MIPSpro Compiler 7.30)
+#      1521:   A nonstandard preprocessing directive is used.
+#      1552:   The variable "" is set but never used.
+#      C++
+#      3262:   The variable "" was declared but never referenced.
+#      3666:   The variable "" is set but never used.
+#      Use -v if using pmake to compile files in subdirectories.
 irix6-o32:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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" \
+       "LIBDIR = ../lib32" \
        "CC = cc" \
-       "CFLAGS = -32 -mips2 -O2 -ansi -DUSE_XSHM -DNO_CONST" \
+       "CPLUSPLUS = CC" \
+       "CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM" \
+       "CCFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
        "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 irix6-o32-dso:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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" \
+       "LIBDIR = ../lib32" \
        "CC = cc" \
-       "CFLAGS = -32 -mips2 -O2 -ansi -DUSE_XSHM -DNO_CONST" \
+       "CPLUSPLUS = CC" \
+       "CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM" \
+       "CCFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666" \
        "MAKELIB = ../bin/mklib.irix6-32" \
-       "APP_LIB_DEPS = -rpath ../lib -lX11 -lXext -lXmu -lXi -lm"
+       "APP_LIB_DEPS = -rpath ../lib32 -lX11 -lXext -lXmu -lXi -lm"
 
-# For IRIX 6: -woff:
-#   1209 - controlling expression is constant
 irix6-n32:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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" \
        "LIBDIR = ../lib32" \
        "CC = cc" \
-       "CFLAGS = -n32 -mips3 -O3 -ansi -woff 1209,1521" \
+       "CPLUSPLUS = CC" \
+       "CFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1521,1552 -DUSE_XSHM" \
+       "CCFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1552" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
        "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 irix6-n32-dso:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
        "GL_LIB = libGL.so" \
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
-       "GLW_LIB = libGLw.a" \
+       "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "LIBDIR = ../lib32" \
        "CC = cc" \
-       "CFLAGS = -n32 -mips3 -O3 -ansi -DUSE_XSHM -woff 1185,1521" \
+       "CPLUSPLUS = CC" \
+       "CFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1521,1552 -DUSE_XSHM" \
+       "CCFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1552" \
        "MAKELIB = ../bin/mklib.irix6-n32" \
        "APP_LIB_DEPS = -rpath ../lib32 -lX11 -lXmu -lXi -lfpe -lm"
 
@@ -404,9 +489,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" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -mabi=n32 -mips3 -O3 -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.irix6-n32" \
        "APP_LIB_DEPS = -rpath ../lib32 -lX11 -lXmu -lXi -lm"
 
@@ -419,11 +507,12 @@ irix6-gcc-n32-sl:
 #   1474 - declaring a void parameter list with a typedef is nonstandard
 #   1552 - variable was set but never used
 irix6-64:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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" \
        "LIBDIR = ../lib64" \
        "CC = cc" \
        "CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM" \
@@ -431,11 +520,12 @@ irix6-64:
        "APP_LIB_DEPS = -lX11 -lXext -lXmu -lXi -lm"
 
 irix6-64-dso:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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" \
        "LIBDIR = ../lib64" \
        "CC = cc" \
        "CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM" \
@@ -448,22 +538,11 @@ linux:
        "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-trace:
-       $(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_XSHM -DPTHREADS -DMESA_TRACE -I/usr/X11R6/include" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.linux" \
        "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
        "GLU_LIB_DEPS = -L../lib -lGL -lm" \
@@ -476,219 +555,199 @@ linux-static:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "CFLAGS = -O3 -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -O3 -funroll-loops -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm -lpthread"
 
-linux-386:
+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 -DUSE_XSHM -DUSE_X86_ASM  -DPTHREADS -I/usr/X11R6/include" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -DMESA_TRACE -I/usr/X11R6/include" \
+       "CCFLAGS = $(CFLAGS)" \
        "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" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/glapi_x86.S X86/vertex.S"
-
-linux-386-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 = -O3 -funroll-loops -ansi -pedantic -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DPTHREADS -I/usr/X11R6/include" \
-       "MAKELIB = ../bin/mklib.ar-ruv" \
-       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm -lpthread" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/glapi_x86.S X86/vertex.S"
+       "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" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "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" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include" \
        "MAKELIB = ../bin/mklib.linux" \
-       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -L/usr/local/glide/lib -lglide2x" \
+       "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 = -lglut -lGLU -lGL"
-
-linux-386-glide:
+       "APP_LIB_DEPS = -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform1.S X86/3dnow_xform2.S \
+               X86/3dnow_xform3.S X86/3dnow_xform4.S \
+               X86/3dnow_normal.S X86/3dnow_vertex.S \
+               X86/sse_xform1.S X86/sse_xform2.S \
+               X86/sse_xform3.S X86/sse_xform4.S \
+               X86/sse_normal.S X86/sse_vertex.S"
+
+linux-x86-static:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
-       "GL_LIB = libGL.so" \
-       "GLU_LIB = libGLU.so" \
-       "GLUT_LIB = libglut.so" \
-       "GLW_LIB = libGLw.so" \
+       "GL_LIB = libGL.a" \
+       "GLU_LIB = libGLU.a" \
+       "GLUT_LIB = libglut.a" \
+       "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
-       "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" \
-       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -L/usr/local/glide/lib -lglide2x -lm -lpthread" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include" \
+       "MAKELIB = ../bin/mklib.ar-ruv" \
+       "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/x86a.S X86/common_x86asm.S X86/glapi_x86.S X86/vertex.S"
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform1.S X86/3dnow_xform2.S \
+               X86/3dnow_xform3.S X86/3dnow_xform4.S \
+               X86/3dnow_normal.S X86/3dnow_vertex.S \
+               X86/sse_xform1.S X86/sse_xform2.S \
+               X86/sse_xform3.S X86/sse_xform4.S \
+               X86/sse_normal.S X86/sse_vertex.S"
 
-linux-386-opt-V2-glide:
+# 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 -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" \
-       "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/x86a.S X86/common_x86asm.S X86/glapi_x86.S X86/vertex.S"
+       "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
+       "CC = gcc"  \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DGGI -DCDECL=" \
+       "CCFLAGS = $(CFLAGS)" \
+       "MAKELIB = ../bin/mklib.ggi" \
+       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lggi -lm"
 
-linux-386-opt-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 -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" \
-       "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/x86a.S X86/common_x86asm.S X86/glapi_x86.S X86/vertex.S"
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc"  \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DUSE_X86_ASM -DGGI -DCDECL=" \
+       "CCFLAGS = $(CFLAGS)" \
+       "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_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S"
 
-linux-3dnow:
+linux-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 -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DPTHREADS -I/usr/X11R6/include" \
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc" \
+       "CPLUSPLUS = g++" \
+       "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" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.linux" \
-       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \
+       "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 = -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/glapi_x86.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" 
+       "APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -lglut -lGLU -lGL"
 
-linux-3dnow-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" \
-       "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 -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" \
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc" \
+       "CPLUSPLUS = g++" \
+       "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" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.linux" \
        "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/x86a.S X86/common_x86asm.S X86/glapi_x86.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 -lglut -lGLU -lGL" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S"
 
-linux-katmai:
+linux-386-opt-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 -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_KATMAI_ASM -DPTHREADS -I/usr/X11R6/include" \
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc" \
+       "CPLUSPLUS = g++" \
+       "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" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.linux" \
-       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \
+       "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/x86a.S X86/common_x86asm.S X86/glapi_x86.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 \
-       X86/katmai_norm_raw.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/vertex_katmai.S"
-
-linux-katmai-glide:
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.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" \
-       "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 -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" \
+       "OSMESA_LIB = libOSMesa.so" \
+       "CC = gcc" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_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" \
        "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/x86a.S X86/common_x86asm.S X86/glapi_x86.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 \
-       X86/katmai_norm_raw.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/vertex_katmai.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 -DUSE_XSHM -DGGI -DCDECL=" \
-       "MAKELIB = ../bin/mklib.ggi" \
-       "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -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 -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/x86a.S X86/common_x86asm.S X86/glapi_x86.S X86/vertex.S"
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform1.S X86/3dnow_xform2.S \
+               X86/3dnow_xform3.S X86/3dnow_xform4.S \
+               X86/3dnow_normal.S X86/3dnow_vertex.S \
+               FX/X86/fx_3dnow_fastpath.S \
+               X86/sse_xform1.S X86/sse_xform2.S \
+               X86/sse_xform3.S X86/sse_xform4.S \
+               X86/sse_normal.S X86/sse_vertex.S"
 
 linux-alpha:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -696,8 +755,11 @@ linux-alpha:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE -DSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.linux" \
        "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
        "GLU_LIB_DEPS = -L../lib -lGL -lm" \
@@ -710,8 +772,11 @@ linux-alpha-static:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -L/usr/X11R6/lib -D_XOPEN_SOURCE -DSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lm"
 
@@ -721,8 +786,11 @@ linux-ppc:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "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" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.linux" \
        "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
        "GLU_LIB_DEPS = -L../lib -lGL -lm" \
@@ -735,8 +803,11 @@ linux-ppc-static:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm"
 
@@ -746,8 +817,11 @@ linux-sparc-static:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -pedantic -funroll-loops -O3 -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXt -lXmu -lXi -lm"
 
@@ -758,8 +832,11 @@ linux-sparc5:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -mv8 -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.linux" \
        "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
        "GLU_LIB_DEPS = -L../lib -lGL -lm" \
@@ -773,14 +850,41 @@ linux-sparc-ultra:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -mv8 -O2 -mtune=ultrasparc -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "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"
 
+# 16-bit/channel Mesa using OSMesa driver
+linux-osmesa16:
+       $(MAKE) $(MFLAGS) -f Makefile.OSMesa16 targets \
+       "OSMESA16_LIB = libOSMesa16.so" \
+       "CC = gcc" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31" \
+       "CCFLAGS = $(CFLAGS)" \
+       "MAKELIB = ../bin/mklib.linux" \
+       "GL_LIB_DEPS = -lm -lpthread" \
+       "APP_LIB_DEPS = -lOSMesa16 -lGL"
+
+# 32-bit/channel Mesa using OSMesa driver
+linux-osmesa32:
+       $(MAKE) $(MFLAGS) -f Makefile.OSMesa16 targets \
+       "OSMESA16_LIB = libOSMesa32.so" \
+       "CC = gcc" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31" \
+       "CCFLAGS = $(CFLAGS)" \
+       "MAKELIB = ../bin/mklib.linux" \
+       "GL_LIB_DEPS = -lm -lpthread" \
+       "APP_LIB_DEPS = -lOSMesa32 -lGL"
+
 # May want to add these CFLAGS for better performance under LynxOS and GCC:
 # -fPIC -O2 -ansi -pedantic -mieee-fp -DUSE_XSHM -funroll-loops
 # -fexpensive-optimizations -fomit-frame-pointer -ffast-math
@@ -791,8 +895,11 @@ lynxos:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O2 -ansi -pedantic -funroll-loops -ffast-math -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/X11/lib -lXext -lXi -lXmu -lX11 -lbsd -lm"
 
@@ -802,8 +909,11 @@ machten-2.2:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -DTENON -D__MACHTEN__ -fstrength-reduce -m68881 -O2" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
        "APP_LIB_DEPS = -L/usr/lib/X11 -lX11 -lm"
 
@@ -813,8 +923,11 @@ machten-4.0:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -DTENON -D__MACHTEN__ -fstrength-reduce -O2" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
        "APP_LIB_DEPS = -L/usr/X11R5/lib -lX11 -lm"
 
@@ -824,8 +937,11 @@ mklinux:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -pedantic -O2" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -lmoto -L/usr/X11/lib -lXmu -lX11 -lm"
 
@@ -835,8 +951,11 @@ netbsd:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O2 -fPIC -DUSE_XSHM -I/usr/X11R6/include -DHZ=100"  \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.netbsd" \
        "APP_LIB_DEPS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
@@ -855,6 +974,7 @@ 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 -DUSE_XSHM -DHZ=100" \
        "MAKELIB = ../bin/mklib.openbsd" \
@@ -865,6 +985,7 @@ openstep:
        "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"
@@ -874,8 +995,11 @@ openstep-win32:
        "DRIVER_SOURCES = OSmesa/osmesa.c" \
        "GL_LIB = libGL.a" \
        "GLU_LIB = libGLU.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -DOPENSTEP -O4" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.openstep"
 
 os2-x11:
@@ -884,11 +1008,16 @@ os2-x11:
        "GLU_LIB  = MesaGLU.a" \
        "GLUT_LIB = glut.a" \
        "GLW_LIB = GLw.a" \
+       "OSMESA_LIB = OSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "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" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ..\\bin\\mklib-emx.cmd " \
        "APP_LIB_DEPS = -Zmt -Zcrtdll -Zexe -L$(X11ROOT)/XFree86/lib -lXt -lX11 -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/glapi_x86.S X86/vertex.S"
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S"
 
 osf1:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -896,6 +1025,7 @@ osf1:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = cc" \
        "CFLAGS = -O0 -std1 -ieee_with_no_inexact -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
@@ -907,6 +1037,7 @@ osf1-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = cc" \
        "CFLAGS = -O0 -std1 -ieee_with_no_inexact -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.osf1" \
@@ -918,8 +1049,11 @@ pgi-cygnus:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = pgcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -fast -cyglibs -Munix -I. -DWIN32 -D__WIN32__ -D_WINDOWS " \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -lX11 -lm"
 
@@ -929,8 +1063,11 @@ pgi-mingw32:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = pgcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -fast -msvcrt -Munix -I. -DWIN32 -D__WIN32__ -D_WINDOWS " \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -lX11 -lm"
 
@@ -941,6 +1078,7 @@ 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" \
@@ -952,8 +1090,11 @@ sco:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -pedantic -O2 -mieee-fp" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/X11/lib -lX11 -lm"
 
@@ -963,8 +1104,11 @@ sco5:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -pedantic -O2 -mieee-fp" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -lXm -lXt -lX11 -lXmu -lXext -lsocket -lx -lm"
 
@@ -974,6 +1118,7 @@ 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 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.solaris" \
@@ -985,8 +1130,11 @@ solaris-x86-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O3 -m486 -fPIC -I/usr/openwin/include -DUSE_XSHM" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.solaris" \
        "APP_LIB_DEPS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
@@ -996,6 +1144,7 @@ sunos4:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = acc" \
        "CFLAGS = -O -DUSE_XSHM -DSUNOS4" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
@@ -1007,6 +1156,7 @@ 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 -DUSE_XSHM -DSUNOS4" \
        "MAKELIB = ld -assert pure-text -o" \
@@ -1018,8 +1168,11 @@ sunos4-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O3 -DUSE_XSHM -DSUNOS4 -I/usr/openwin/include" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
@@ -1029,8 +1182,11 @@ sunos4-gcc-sl:
        "GLU_LIB = libGLU.so.$(VERSION)" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -fPIC -O3 -I/usr/openwin/include -I/usr/include/X11R5 -I/usr/include/X11R5 -DUSE_XSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.sunos4" \
        "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
@@ -1040,8 +1196,11 @@ sunos4-gcc-x11r6-sl:
        "GLU_LIB = libGLU.so.$(VERSION)" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -fPIC -O3 -I/usr/X11R6.3/include -DUSE_XSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.sunos4" \
        "APP_LIB_DEPS = -L/usr/X11R6.3/lib/X11 -lX11 -lXext -lXmu -lXi -lm"
 
@@ -1051,6 +1210,7 @@ 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 -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
@@ -1062,6 +1222,7 @@ 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 -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.sunos5" \
@@ -1073,6 +1234,7 @@ 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 -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
@@ -1084,6 +1246,7 @@ 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 -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.sunos5" \
@@ -1095,8 +1258,11 @@ sunos5-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O3 -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
@@ -1106,8 +1272,11 @@ sunos5-gcc-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -fPIC -O3 -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.sunos5" \
        "APP_LIB_DEPS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
@@ -1117,8 +1286,11 @@ sunos5-x11r6-gcc-sl:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -fPIC -O3 -DUSE_XSHM -DSOLARIS_2_4_BUG" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.sunos5" \
        "APP_LIB_DEPS = -lSM -lICE -lX11 -lXext -lXmu -lXi -lnsl -lsocket -lm"
 
@@ -1151,7 +1323,9 @@ sunos5-gcc-thread:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O3 -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG -D_REENTRANT -DSOLARIS_THREADS" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lthread -lm"
 
@@ -1162,7 +1336,9 @@ sunos5-gcc-pthread:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -O3 -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG -D_REENTRANT -DPTHREADS" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lpthread -lm"
 
@@ -1173,6 +1349,7 @@ 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 -DUSE_XSHM -DSOLARIS_2_4_BUG" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
@@ -1185,6 +1362,7 @@ 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" \
@@ -1196,8 +1374,11 @@ ultrix-gcc:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -pedantic -O2" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -lXmu -lX11 -lXi -lm"
 
@@ -1208,6 +1389,7 @@ 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" \
@@ -1219,6 +1401,7 @@ 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 -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
@@ -1230,6 +1413,7 @@ unixware-shared:
        "GLU_LIB = libGLU" \
        "GLUT_LIB = libglut" \
        "GLW_LIB = libGLw" \
+       "OSMESA_LIB = libOSMesa" \
        "CC = cc" \
        "CFLAGS = -O -I/usr/X/include -KPIC,inline -DUSE_XSHM" \
        "MAKELIB = ../bin/mklib.solaris" \
@@ -1241,7 +1425,9 @@ uwin:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -pedantic -O2 -I/usr/X11/include " \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/X11/lib -lX11 -lm"
 
@@ -1251,8 +1437,11 @@ vistra:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "CFLAGS = -pedantic -O2" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -lX11 -lsocket -lnsl -lgen -lm"
 
@@ -1264,11 +1453,12 @@ vistra:
 # -woff 1521 = "nonstandard preprocessing directive is used"
 # -woff 3496 = "bitwise operator precedence"
 irix-debug:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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" \
        "LIBDIR = ../lib32" \
        "CC = cc" \
        "CFLAGS = -g -n32 -ansi -fullwarn -DUSE_XSHM -DDEBUG -woff 1209,1210,1506,1521,3496" \
@@ -1276,42 +1466,74 @@ irix-debug:
        "APP_LIB_DEPS = -rpath ../lib32 -lX11 -lXext -lXmu -lXi -lfpe -lXext -lXmu -lXi -lm"
 
 DEBUG:
-       pmake $(MFLAGS) -f Makefile.X11 targets \
+       $(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 = cc" \
        "CFLAGS = -g -ansi -prototypes -fullwarn -DUSE_XSHM -DDEBUG" \
        "MAKELIB = ../bin/mklib.ar-rcv" \
        "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" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG" \
+       "CCFLAGS = $(CFLAGS)" \
+       "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 = -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 -Wmissing-prototypes -DUSE_XSHM -DDEBUG -DSVGA -DFX -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM_not -I/usr/include/glide -I/usr/local/glide/include" \
+       "CPLUSPLUS = g++" \
+       "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" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -ltexus -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lvga -lm" \
-       "ASM_SOURCES = X86/x86a.S X86/common_x86asm.S X86/glapi_x86.S X86/vertex.S"
 
-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" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
-       "CFLAGS = -g -ansi -pedantic -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -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" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -O2 -g -ansi -pedantic -Wall -Wmissing-prototypes -fPIC -ffast-math -malign-loops=2 -malign-jumps=2 -malign-functions=2 -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include -DDEBUG -DMESA_DEBUG" \
        "MAKELIB = ../bin/mklib.linux" \
-       "GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -lvga -L/usr/local/glide/lib -lglide2x" \
+       "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 = -lglut -lGLU -lGL"
+       "APP_LIB_DEPS = -lm" \
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform1.S X86/3dnow_xform2.S \
+               X86/3dnow_xform3.S X86/3dnow_xform4.S \
+               X86/3dnow_normal.S X86/3dnow_vertex.S \
+               X86/sse_xform1.S X86/sse_xform2.S \
+               X86/sse_xform3.S X86/sse_xform4.S \
+               X86/sse_normal.S X86/sse_vertex.S"
 
 linux-glide-debug:
        $(MAKE) $(MFLAGS) -f Makefile.X11 targets \
@@ -1319,8 +1541,11 @@ linux-glide-debug:
        "GLU_LIB = libGLU.so" \
        "GLUT_LIB = libglut.so" \
        "GLW_LIB = libGLw.so" \
+       "OSMESA_LIB = libOSMesa.so" \
        "CC = gcc" \
+       "CPLUSPLUS = g++" \
        "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" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.linux" \
        "APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lvga -lm -lpthread"
 
@@ -1331,15 +1556,46 @@ linux-prof:
        "GLU_LIB = libGLU.a" \
        "GLUT_LIB = libglut.a" \
        "GLW_LIB = libGLw.a" \
+       "OSMESA_LIB = libOSMesa.a" \
+       "CC = gcc" \
+       "CPLUSPLUS = g++" \
+       "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_SSE_ASM" \
+       "CCFLAGS = $(CFLAGS)" \
+       "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_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform1.S X86/3dnow_xform2.S \
+               X86/3dnow_xform3.S X86/3dnow_xform4.S \
+               X86/3dnow_normal.S X86/3dnow_vertex.S \
+               FX/X86/fx_3dnow_fastpath.S \
+               X86/sse_xform1.S X86/sse_xform2.S \
+               X86/sse_xform3.S X86/sse_xform4.S \
+               X86/sse_normal.S X86/sse_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 -DUSE_XSHM -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -I/usr/include/glide -I/usr/local/glide/include" \
+       "CPLUSPLUS = g++" \
+       "CFLAGS = -O2 -pg -ansi -pedantic -Wall -DUSE_XSHM -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -I/usr/include/glide -I/usr/local/glide/include" \
+       "CCFLAGS = $(CFLAGS)" \
        "MAKELIB = ../bin/mklib.ar-ruv" \
        "APP_LIB_DEPS = -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/glapi_x86.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"
+       "ASM_SOURCES = X86/common_x86_asm.S X86/glapi_x86.S \
+               X86/x86_xform2.S X86/x86_xform3.S X86/x86_xform4.S \
+               X86/x86_cliptest.S X86/x86_vertex.S \
+               X86/mmx_blend.S \
+               X86/3dnow_xform1.S X86/3dnow_xform2.S \
+               X86/3dnow_xform3.S X86/3dnow_xform4.S \
+               X86/3dnow_normal.S X86/3dnow_vertex.S \
+               FX/X86/fx_3dnow_fastpath.S \
+               X86/sse_xform1.S X86/sse_xform2.S \
+               X86/sse_xform3.S X86/sse_xform4.S \
+               X86/sse_normal.S X86/sse_vertex.S"