added GLUT_CFLAGS to compile GLUT with -fexceptions (bug 726223)
diff --git a/Make-config b/Make-config
index 850a0f1..8501277 100644
--- a/Make-config
+++ b/Make-config
@@ -24,6 +24,7 @@
 # CXX            the C++ compiler (usuall c++ or g++ or CC)
 # CFLAGS         options for C compiler (like -O)
 # CXXFLAGS       options for the C++ compiler (like -O)
+# GLUT_CFLAGS    extra flags for compiling GLUT
 # 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
@@ -89,6 +90,7 @@
 		-O2 -funroll-loops \
 		-fexpensive-optimizations -fomit-frame-pointer -ffast-math \
 		-malign-loops=2 -malign-functions=2" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.ar-ruv" \
 	"WLIBS = $(TOP)/lib/wing32.a -lkernel32 -luser32 -lgdi32"
 
@@ -141,6 +143,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O2 -fPIC -pedantic -I/usr/X11R6/include -DUSE_XSHM -DHZ=100" \
 	"CXXFLAGS = -O2 -fPIC -pedantic" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"APP_LIB_DEPS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
 freebsd-386:
@@ -154,6 +157,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O3 -ffast-math -fPIC -pedantic -I/usr/X11R6/include -DUSE_XSHM -DHZ=100 -DUSE_X86_ASM -DFREEBSD" \
 	"CXXFLAGS = -O3 -ffast-math -fPIC -pedantic -DFREEBSD" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"APP_LIB_DEPS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm" \
 	"ASM_SOURCES = $(X86_SOURCES)"
 
@@ -168,6 +172,7 @@
 	"CPLUSPLUS = g++" \
 	"CFLAGS = -fPIC -O3" \
 	"CXXFLAGS = -fPIC -O3" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = ../bin/mklib.gcc-sl" \
 	"APP_LIB_DEPS = -lX11 -lm"
 
@@ -177,6 +182,7 @@
 	"MESA_LIB = libMesa.so" \
 	"CC = gcc" \
 	"CFLAGS = -fPIC -O3" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.gcc-sl" \
 
 hpux9:
@@ -202,6 +208,7 @@
 	"CXX = g++" \
 	"CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM" \
 	"CXXFLAGS = -ansi -O3 -D_HPUX_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.ar-ruv" \
 	"APP_LIB_DEPS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
 
@@ -227,6 +234,7 @@
 	"CXX = g++" \
 	"CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM" \
 	"CXXFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"APP_LIB_DEPS = -L/usr/lib/X11R5 -lXext -lXmu -lXi -lX11 -lm"
 
 # The hpux10 configs should work for hpux11 as well.
@@ -268,6 +276,7 @@
 	"CXX = g++" \
 	"CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include  -DUSE_XSHM" \
 	"CXXFLAGS = -ansi -O3 -D_HPUX_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.ar-ruv" \
 	"APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
@@ -282,6 +291,7 @@
 	"CXX = g++" \
 	"CFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM" \
 	"CXXFLAGS = -fPIC -ansi -O3 -D_HPUX_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
 
@@ -361,6 +371,7 @@
 	"CXX = g++" \
 	"CFLAGS = -mabi=n32 -mips3 -O3 -DUSE_XSHM" \
 	"CXXFLAGS = -mabi=n32 -mips3 -O3" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"APP_LIB_DEPS = -rpath $(TOP)/lib32 -lX11 -lXmu -lXi -lm"
 
 # For IRIX 6-64: -woff:
@@ -410,6 +421,7 @@
 	"CXX = 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" \
 	"CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -426,6 +438,8 @@
 	"CC = gcc" \
 	"CXX = 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" \
+	"CXXFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -443,6 +457,8 @@
 	"CC = gcc" \
 	"CXX = g++" \
 	"CFLAGS = -mcpu=pentium4 -mfpmath=sse -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" \
+	"CXXFLAGS = -mcpu=pentium4 -mfpmath=sse -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -477,6 +493,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DGGI -DCDECL=" \
 	"CXXFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DCDECL=" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -ggi -lX11 -lXext -lm -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -494,6 +511,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DUSE_X86_ASM -DGGI -DCDECL=" \
 	"CXXFLAGS = -O3 -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DCDECL=" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -ggi -lX11 -lXext -lm -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -511,6 +529,7 @@
 	"CXX = 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" \
 	"CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -L/usr/local/glide/lib -lglide2x" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -526,6 +545,8 @@
 	"CC = gcc" \
 	"CXX = g++" \
 	"CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -malign-loops=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" \
+	"CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-functions=2 -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -L/usr/local/glide/lib -lglide2x -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -544,6 +565,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE -DUSE_XSHM" \
 	"CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -561,6 +583,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -L/usr/X11R6/lib -D_XOPEN_SOURCE -DUSE_XSHM" \
 	"CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.ar-ruv" \
 	"APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lm"
 
@@ -575,6 +598,7 @@
 	"CXX = 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" \
 	"CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -592,6 +616,7 @@
 	"CXX = 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" \
 	"CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.ar-ruv" \
 	"APP_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm"
 
@@ -606,6 +631,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
 	"CXXFLAGS = -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -623,6 +649,7 @@
 	"CXX = g++" \
 	"CFLAGS = -mv8 -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
 	"CXXFLAGS = -mv8 -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -641,6 +668,7 @@
 	"CXX = g++" \
 	"CFLAGS = -mv8 -O2 -mtune=ultrasparc -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM" \
 	"CXXFLAGS = -mv8 -O2 -mtune=ultrasparc -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -655,6 +683,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O3 -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31" \
 	"CXXFLAGS = -O3 -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -lm -lpthread" \
 	"APP_LIB_DEPS = -lOSMesa16 -lGL"
 
@@ -666,6 +695,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O3 -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31" \
 	"CXXFLAGS = -O3 -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -lm -lpthread" \
 	"APP_LIB_DEPS = -lOSMesa32 -lGL"
 
@@ -680,6 +710,7 @@
 	"CXX = g++" \
 	"CFLAGS = -g -std=c99 -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE" \
 	"CXXFLAGS = -g -std=c99 -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm  -Wl,-rpath,$(TOP)/lib" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -lm  -Wl,-rpath,$(TOP)/lib" \
@@ -700,6 +731,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O2 -ansi -pedantic -funroll-loops -ffast-math -DUSE_XSHM" \
 	"CXXFLAGS = -O2 -ansi -pedantic -funroll-loops -ffast-math" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"APP_LIB_DEPS = -L/usr/X11/lib -lXext -lXi -lXmu -lX11 -lbsd -lm"
 
 mklinux:
@@ -713,6 +745,7 @@
 	"CXX = g++" \
 	"CFLAGS = -pedantic -O2" \
 	"CXXFLAGS = -pedantic -O2" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.ar-ruv" \
 	"APP_LIB_DEPS = -lmoto -L/usr/X11/lib -lXmu -lX11 -lm"
 
@@ -727,6 +760,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O2 -fPIC -DUSE_XSHM -I/usr/X11R6/include -DHZ=100"  \
 	"CXXFLAGS = -O2 -fPIC"  \
+	"GLUT_CFLAGS = -fexceptions" \
 	"APP_LIB_DEPS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm"
 
 openbsd:
@@ -763,6 +797,7 @@
 	"CXX = g++" \
 	"CFLAGS = -DOPENSTEP -O4" \
 	"CXXFLAGS = -DOPENSTEP -O4" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.openstep"
 
 osf1:
@@ -815,6 +850,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O3 -m486 -fPIC -I/usr/openwin/include -DUSE_XSHM" \
 	"CXXFLAGS = -O3 -m486 -fPIC" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.solaris" \
 	"APP_LIB_DEPS = -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
@@ -853,6 +889,7 @@
 	"CXX = g++" \
 	"CFLAGS = -O3 -DUSE_XSHM -DSUNOS4 -I/usr/openwin/include" \
 	"CXXFLAGS = -O3 -DSUNOS4 -I/usr/openwin/include" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.ar-ruv" \
 	"APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
@@ -865,8 +902,9 @@
 	"OSMESA_LIB = libOSMesa.so" \
 	"CC = gcc" \
 	"CXX = g++" \
-	"CFLAGS = -fPIC -O3 -I/usr/openwin/include -I/usr/include/X11R5 -I/usr/include/X11R5 -DUSE_XSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
+	"CFLAGS = -fPIC -O3 -I/usr/openwin/include -I/usr/include/X11R5 -I/usr/include/X11R5 -DUSE_XSHM -DSUNOS4" \
 	"CXXFLAGS = -fPIC -O3 -I/usr/openwin/include -DSUNOS4" \
+	"GLUT_CFLAGS = -fexceptions -DSOLARIS_2_4_BUG" \
 	"MAKELIB = $(TOP)/bin/mklib.sunos4" \
 	"APP_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm"
 
@@ -879,8 +917,9 @@
 	"OSMESA_LIB = libOSMesa.so" \
 	"CC = gcc" \
 	"CXX = g++" \
-	"CFLAGS = -fPIC -O3 -I/usr/X11R6.3/include -DUSE_XSHM -DSUNOS4 -DSOLARIS_2_4_BUG" \
+	"CFLAGS = -fPIC -O3 -I/usr/X11R6.3/include -DUSE_XSHM -DSUNOS4" \
 	"CXXFLAGS = -fPIC -O3 -I/usr/X11R6.3/include -DSUNOS4" \
+	"GLUT_CFLAGS = -fexceptions -DSOLARIS_2_4_BUG" \
 	"MAKELIB = $(TOP)/bin/mklib.sunos4" \
 	"APP_LIB_DEPS = -L/usr/X11R6.3/lib/X11 -lX11 -lXext -lXmu -lXi -lm"
 
@@ -893,8 +932,9 @@
 	"OSMESA_LIB = libOSMesa.so" \
 	"CC = cc" \
 	"CXX = c++" \
-	"CFLAGS = -KPIC -Xa -O -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
+	"CFLAGS = -KPIC -Xa -O -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM" \
 	"GL_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -lX11 -lXext -lXmu -lXi -lm" \
+	"GLUT_CFLAGS = -DSOLARIS_2_4_BUG" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -lm" \
 	"GLW_LIB_DEPS = -L$(TOP)/lib -lGL -L/usr/openwin/lib -lXt -lX11" \
@@ -909,8 +949,9 @@
 	"OSMESA_LIB = libOSMesa.so" \
 	"CC = gcc" \
 	"CXX = g++" \
-	"CFLAGS = -O3 -I/usr/openwin/include -DUSE_XSHM -DSOLARIS_2_4_BUG" \
+	"CFLAGS = -O3 -I/usr/openwin/include -DUSE_XSHM" \
 	"CXXFLAGS = -O3 -I/usr/openwin/include" \
+	"GLUT_CFLAGS = -fexceptions -DSOLARIS_2_4_BUG" \
 	"GL_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -lm" \
@@ -928,6 +969,7 @@
 	"CXX = g++" \
 	"CFLAGS = -pedantic -O2" \
 	"CXXFLAGS = -pedantic -O2" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"MAKELIB = $(TOP)/bin/mklib.ar-ruv" \
 	"APP_LIB_DEPS = -lXmu -lX11 -lXi -lm"
 
@@ -987,6 +1029,7 @@
 	"CXX = g++" \
 	"CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG" \
 	"CXXFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG -DMESA_DEBUG" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -1003,6 +1046,8 @@
 	"CC = gcc" \
 	"CXX = g++" \
 	"CFLAGS = -O2 -g -ansi -pedantic -Wall -Wmissing-prototypes -fPIC -ffast-math -malign-loops=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" \
+	"CXXFLAGS = -O2 -g -ansi -pedantic -Wall -Wmissing-prototypes -fPIC -ffast-math -malign-loops=2 -malign-functions=2 -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lm -lpthread" \
 	"GLU_LIB_DEPS = -L$(TOP)/lib -lGL -lm" \
 	"GLUT_LIB_DEPS = -L$(TOP)/lib -lGLU -lGL -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm" \
@@ -1020,5 +1065,6 @@
 	"CXX = 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" \
 	"CXXFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -fPIC -ffast-math -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG" \
+	"GLUT_CFLAGS = -fexceptions" \
 	"APP_LIB_DEPS = -L/usr/local/glide/lib -lglide2x -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lvga -lm -lpthread"
 
diff --git a/src/glut/glx/Makefile.X11 b/src/glut/glx/Makefile.X11
index 0427f3f..0ef132d 100644
--- a/src/glut/glx/Makefile.X11
+++ b/src/glut/glx/Makefile.X11
@@ -82,7 +82,7 @@
 ##### RULES #####
 
 .c.o:
-	$(CC) -c -I$(INCDIR) $(CFLAGS) $<
+	$(CC) -c -I$(INCDIR) $(CFLAGS) $(GLUT_CFLAGS) $<