Added support for OpenGL.
diff --git a/Make.rules.in b/Make.rules.in
index e296a44..c70ea51 100644
--- a/Make.rules.in
+++ b/Make.rules.in
@@ -86,6 +86,7 @@
X_DLLS = \
ddraw \
+ opengl32 \
x11drv
DLLS = \
diff --git a/configure b/configure
index 4e27b0a..cbc2d62 100755
--- a/configure
+++ b/configure
@@ -2916,6 +2916,8 @@
XFILES=""
+OPENGLFILES=""
+
DGA_SRCS=""
DGA2_SRCS=""
@@ -2931,17 +2933,17 @@
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2935: checking for $ac_hdr" >&5
+echo "configure:2937: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 2940 "configure"
+#line 2942 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2945: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2947: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -2970,7 +2972,7 @@
if test "$ac_cv_header_X11_xpm_h" = "yes"
then
echo $ac_n "checking for XpmCreatePixmapFromData in -lXpm""... $ac_c" 1>&6
-echo "configure:2974: checking for XpmCreatePixmapFromData in -lXpm" >&5
+echo "configure:2976: checking for XpmCreatePixmapFromData in -lXpm" >&5
ac_lib_var=`echo Xpm'_'XpmCreatePixmapFromData | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -2978,7 +2980,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lXpm $X_LIBS -lXext -lX11 $X_EXTRA_LIBS $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 2982 "configure"
+#line 2984 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -2989,7 +2991,7 @@
XpmCreatePixmapFromData()
; return 0; }
EOF
-if { (eval echo configure:2993: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2995: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3032,17 +3034,17 @@
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:3036: checking for $ac_hdr" >&5
+echo "configure:3038: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 3041 "configure"
+#line 3043 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3046: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3048: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -3071,7 +3073,7 @@
if test "$ac_cv_header_X11_Xlib_h" = "yes" -a "$ac_cv_header_X11_extensions_XShm_h" = "yes"
then
echo $ac_n "checking for XShmQueryExtension in -lXext""... $ac_c" 1>&6
-echo "configure:3075: checking for XShmQueryExtension in -lXext" >&5
+echo "configure:3077: checking for XShmQueryExtension in -lXext" >&5
ac_lib_var=`echo Xext'_'XShmQueryExtension | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3079,7 +3081,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lXext $X_LIBS -lXext -lX11 $X_EXTRA_LIBS $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3083 "configure"
+#line 3085 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3090,7 +3092,7 @@
XShmQueryExtension()
; return 0; }
EOF
-if { (eval echo configure:3094: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3096: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3118,17 +3120,17 @@
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:3122: checking for $ac_hdr" >&5
+echo "configure:3124: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 3127 "configure"
+#line 3129 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3132: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3134: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -3157,7 +3159,7 @@
if test "$ac_cv_header_X11_Xlib_h" = "yes" -a "$ac_cv_header_X11_extensions_xf86dga_h" = "yes"
then
echo $ac_n "checking for XDGAQueryExtension in -lXxf86dga""... $ac_c" 1>&6
-echo "configure:3161: checking for XDGAQueryExtension in -lXxf86dga" >&5
+echo "configure:3163: checking for XDGAQueryExtension in -lXxf86dga" >&5
ac_lib_var=`echo Xxf86dga'_'XDGAQueryExtension | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3166,7 +3168,7 @@
LIBS="-lXxf86dga $X_LIBS -lXext -lX11 $X_EXTRA_LIBS
$LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3170 "configure"
+#line 3172 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3177,7 +3179,7 @@
XDGAQueryExtension()
; return 0; }
EOF
-if { (eval echo configure:3181: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3183: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3211,7 +3213,7 @@
if test "$ac_cv_lib_Xxf86dga_XDGAQueryExtension" = "no"
then
echo $ac_n "checking for XF86DGAQueryExtension in -lXxf86dga""... $ac_c" 1>&6
-echo "configure:3215: checking for XF86DGAQueryExtension in -lXxf86dga" >&5
+echo "configure:3217: checking for XF86DGAQueryExtension in -lXxf86dga" >&5
ac_lib_var=`echo Xxf86dga'_'XF86DGAQueryExtension | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3219,7 +3221,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lXxf86dga $X_LIBS -lXext -lX11 $X_EXTRA_LIBS $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3223 "configure"
+#line 3225 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3230,7 +3232,7 @@
XF86DGAQueryExtension()
; return 0; }
EOF
-if { (eval echo configure:3234: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3236: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3263,17 +3265,17 @@
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:3267: checking for $ac_hdr" >&5
+echo "configure:3269: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 3272 "configure"
+#line 3274 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3277: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3279: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -3302,7 +3304,7 @@
if test "$ac_cv_header_X11_Xlib_h" = "yes" -a "$ac_cv_header_X11_extensions_xf86vmode_h" = "yes"
then
echo $ac_n "checking for XF86VidModeQueryExtension in -lXxf86vm""... $ac_c" 1>&6
-echo "configure:3306: checking for XF86VidModeQueryExtension in -lXxf86vm" >&5
+echo "configure:3308: checking for XF86VidModeQueryExtension in -lXxf86vm" >&5
ac_lib_var=`echo Xxf86vm'_'XF86VidModeQueryExtension | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3310,7 +3312,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lXxf86vm $X_LIBS -lXext -lX11 $X_EXTRA_LIBS $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3314 "configure"
+#line 3316 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3321,7 +3323,7 @@
XF86VidModeQueryExtension()
; return 0; }
EOF
-if { (eval echo configure:3325: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3327: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3348,21 +3350,21 @@
if test $OPENGL = "yes" -o $OPENGL = "normal"
then
- for ac_hdr in GL/gl.h GL/glx.h
+ for ac_hdr in GL/gl.h GL/glx.h GL/glext.h
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:3356: checking for $ac_hdr" >&5
+echo "configure:3358: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 3361 "configure"
+#line 3363 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3366: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3368: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -3388,72 +3390,72 @@
fi
done
- if test "$ac_cv_header_GL_gl_h" = "yes" -a "$ac_cv_header_GL_glx_h" = "yes"
+ if test "$ac_cv_header_GL_gl_h" = "yes" -a "$ac_cv_header_GL_glx_h" = "yes" -a "$ac_cv_header_GL_glext_h" = "yes"
then
echo $ac_n "checking "for up-to-date OpenGL version"""... $ac_c" 1>&6
-echo "configure:3395: checking "for up-to-date OpenGL version"" >&5
-if eval "test \"`echo '$''{'wine_cv_mesa_version_OK'+set}'`\" = set"; then
+echo "configure:3397: checking "for up-to-date OpenGL version"" >&5
+if eval "test \"`echo '$''{'wine_cv_opengl_version_OK'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 3400 "configure"
+#line 3402 "configure"
#include "confdefs.h"
#include <GL/gl.h>
int main() {
GLenum test = GL_UNSIGNED_SHORT_5_6_5;
; return 0; }
EOF
-if { (eval echo configure:3407: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3409: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
- wine_cv_mesa_version_OK="yes"
+ wine_cv_opengl_version_OK="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
- wine_cv_mesa_version_OK="no"
+ wine_cv_opengl_version_OK="no"
fi
rm -f conftest*
fi
-echo "$ac_t""$wine_cv_mesa_version_OK" 1>&6
+echo "$ac_t""$wine_cv_opengl_version_OK" 1>&6
echo $ac_n "checking "for thread-safe OpenGL version"""... $ac_c" 1>&6
-echo "configure:3424: checking "for thread-safe OpenGL version"" >&5
-if eval "test \"`echo '$''{'wine_cv_mesa_version_threadsafe'+set}'`\" = set"; then
+echo "configure:3426: checking "for thread-safe OpenGL version"" >&5
+if eval "test \"`echo '$''{'wine_cv_opengl_version_threadsafe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
saved_libs=$LIBS
LIBS="$X_LIBS -lGL"
cat > conftest.$ac_ext <<EOF
-#line 3431 "configure"
+#line 3433 "configure"
#include "confdefs.h"
int main() {
pthread_getspecific();
; return 0; }
EOF
-if { (eval echo configure:3438: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3440: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
- wine_cv_mesa_version_threadsafe="yes"
+ wine_cv_opengl_version_threadsafe="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
- wine_cv_mesa_version_threadsafe="no"
+ wine_cv_opengl_version_threadsafe="no"
fi
rm -f conftest*
LIBS=$saved_libs
fi
-echo "$ac_t""$wine_cv_mesa_version_threadsafe" 1>&6
+echo "$ac_t""$wine_cv_opengl_version_threadsafe" 1>&6
- if test "$wine_cv_mesa_version_OK" = "yes" -a \( "$wine_cv_mesa_version_threadsafe" = "no" -o $OPENGL = "yes" \)
+ if test "$wine_cv_opengl_version_OK" = "yes" -a \( "$wine_cv_opengl_version_threadsafe" = "no" -o $OPENGL = "yes" \)
then
echo $ac_n "checking for glXCreateContext in -lGL""... $ac_c" 1>&6
-echo "configure:3457: checking for glXCreateContext in -lGL" >&5
+echo "configure:3459: checking for glXCreateContext in -lGL" >&5
ac_lib_var=`echo GL'_'glXCreateContext | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3461,7 +3463,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lGL $X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3465 "configure"
+#line 3467 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3472,7 +3474,7 @@
glXCreateContext()
; return 0; }
EOF
-if { (eval echo configure:3476: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3478: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3487,11 +3489,7 @@
fi
if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
echo "$ac_t""yes" 1>&6
- cat >> confdefs.h <<\EOF
-#define HAVE_LIBMESAGL 1
-EOF
-
- X_PRE_LIBS="$X_PRE_LIBS -lGL"
+ X_PRE_LIBS="$X_PRE_LIBS -lGL"
MESA_SRCS='$(MESA_SRCS)'
else
@@ -3499,70 +3497,22 @@
fi
- if test "$ac_cv_lib_GL_glXCreateContext" = "no"
+ if test $ac_cv_lib_GL_glXCreateContext = "yes"
then
- echo $ac_n "checking for glXCreateContext in -lMesaGL""... $ac_c" 1>&6
-echo "configure:3506: checking for glXCreateContext in -lMesaGL" >&5
-ac_lib_var=`echo MesaGL'_'glXCreateContext | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- ac_save_LIBS="$LIBS"
-LIBS="-lMesaGL $X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 3514 "configure"
-#include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char glXCreateContext();
-
-int main() {
-glXCreateContext()
-; return 0; }
-EOF
-if { (eval echo configure:3525: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- cat >> confdefs.h <<\EOF
-#define HAVE_LIBMESAGL 1
-EOF
-
- X_PRE_LIBS="$X_PRE_LIBS -lMesaGL"
- MESA_SRCS='$(MESA_SRCS)'
-
-else
- echo "$ac_t""no" 1>&6
-fi
-
- fi
-
- echo $ac_n "checking "for the OpenGL Color Index extension"""... $ac_c" 1>&6
-echo "configure:3554: checking "for the OpenGL Color Index extension"" >&5
+ echo $ac_n "checking "for the OpenGL Color Index extension"""... $ac_c" 1>&6
+echo "configure:3504: checking "for the OpenGL Color Index extension"" >&5
if eval "test \"`echo '$''{'dummy'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 3559 "configure"
+#line 3509 "configure"
#include "confdefs.h"
#include <GL/gl.h>
int main() {
GLenum test = GL_COLOR_INDEX8_EXT;
; return 0; }
EOF
-if { (eval echo configure:3566: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3516: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define HAVE_GL_COLOR_TABLE 1
@@ -3577,54 +3527,8 @@
echo "$ac_t""$dummy" 1>&6
- if test "$ac_cv_lib_GL_glXCreateContext" = "no"
- then
- echo $ac_n "checking for glColorTableEXT in -lMesaGL""... $ac_c" 1>&6
-echo "configure:3584: checking for glColorTableEXT in -lMesaGL" >&5
-ac_lib_var=`echo MesaGL'_'glColorTableEXT | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- ac_save_LIBS="$LIBS"
-LIBS="-lMesaGL $X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 3592 "configure"
-#include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char glColorTableEXT();
-
-int main() {
-glColorTableEXT()
-; return 0; }
-EOF
-if { (eval echo configure:3603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
-else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- cat >> confdefs.h <<\EOF
-#define HAVE_GL_PALETTED_TEXTURE 1
-EOF
-
-else
- echo "$ac_t""no" 1>&6
-fi
-
- else
- echo $ac_n "checking for glColorTableEXT in -lGL""... $ac_c" 1>&6
-echo "configure:3628: checking for glColorTableEXT in -lGL" >&5
+ echo $ac_n "checking for glColorTableEXT in -lGL""... $ac_c" 1>&6
+echo "configure:3532: checking for glColorTableEXT in -lGL" >&5
ac_lib_var=`echo GL'_'glColorTableEXT | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3632,7 +3536,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lGL $X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3636 "configure"
+#line 3540 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3643,7 +3547,7 @@
glColorTableEXT()
; return 0; }
EOF
-if { (eval echo configure:3647: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3666,6 +3570,58 @@
echo "$ac_t""no" 1>&6
fi
+ echo $ac_n "checking for glXGetProcAddressARB in -lGL""... $ac_c" 1>&6
+echo "configure:3575: checking for glXGetProcAddressARB in -lGL" >&5
+ac_lib_var=`echo GL'_'glXGetProcAddressARB | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-lGL $X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 3583 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char glXGetProcAddressARB();
+
+int main() {
+glXGetProcAddressARB()
+; return 0; }
+EOF
+if { (eval echo configure:3594: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ cat >> confdefs.h <<\EOF
+#define HAVE_GLX_GETPROCADDRESS 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+
+ if test $ac_cv_lib_GL_glXGetProcAddressARB = "yes"
+ then
+ cat >> confdefs.h <<\EOF
+#define HAVE_OPENGL 1
+EOF
+
+ OPENGLFILES='$(OPENGLFILES)'
+ fi
fi
fi
fi
@@ -3686,17 +3642,17 @@
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:3690: checking for $ac_hdr" >&5
+echo "configure:3646: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 3695 "configure"
+#line 3651 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3700: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3656: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -3725,7 +3681,7 @@
if test "$ac_cv_header_ncurses_h" = "yes"
then
echo $ac_n "checking for waddch in -lncurses""... $ac_c" 1>&6
-echo "configure:3729: checking for waddch in -lncurses" >&5
+echo "configure:3685: checking for waddch in -lncurses" >&5
ac_lib_var=`echo ncurses'_'waddch | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3733,7 +3689,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lncurses $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3737 "configure"
+#line 3693 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3744,7 +3700,7 @@
waddch()
; return 0; }
EOF
-if { (eval echo configure:3748: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3704: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3775,7 +3731,7 @@
if test "$ac_cv_lib_ncurses_waddch" = "yes"
then
echo $ac_n "checking for resizeterm in -lncurses""... $ac_c" 1>&6
-echo "configure:3779: checking for resizeterm in -lncurses" >&5
+echo "configure:3735: checking for resizeterm in -lncurses" >&5
ac_lib_var=`echo ncurses'_'resizeterm | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3783,7 +3739,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lncurses $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3787 "configure"
+#line 3743 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3794,7 +3750,7 @@
resizeterm()
; return 0; }
EOF
-if { (eval echo configure:3798: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3754: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3818,7 +3774,7 @@
fi
echo $ac_n "checking for getbkgd in -lncurses""... $ac_c" 1>&6
-echo "configure:3822: checking for getbkgd in -lncurses" >&5
+echo "configure:3778: checking for getbkgd in -lncurses" >&5
ac_lib_var=`echo ncurses'_'getbkgd | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3826,7 +3782,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lncurses $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3830 "configure"
+#line 3786 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3837,7 +3793,7 @@
getbkgd()
; return 0; }
EOF
-if { (eval echo configure:3841: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3797: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3865,17 +3821,17 @@
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:3869: checking for $ac_hdr" >&5
+echo "configure:3825: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 3874 "configure"
+#line 3830 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3879: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3835: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -3904,7 +3860,7 @@
if test "$ac_cv_header_curses_h" = "yes"
then
echo $ac_n "checking for waddch in -lcurses""... $ac_c" 1>&6
-echo "configure:3908: checking for waddch in -lcurses" >&5
+echo "configure:3864: checking for waddch in -lcurses" >&5
ac_lib_var=`echo curses'_'waddch | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3912,7 +3868,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lcurses $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3916 "configure"
+#line 3872 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3923,7 +3879,7 @@
waddch()
; return 0; }
EOF
-if { (eval echo configure:3927: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3883: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3953,7 +3909,7 @@
if test "$ac_cv_lib_curses_waddch" = "yes"
then
echo $ac_n "checking for resizeterm in -lcurses""... $ac_c" 1>&6
-echo "configure:3957: checking for resizeterm in -lcurses" >&5
+echo "configure:3913: checking for resizeterm in -lcurses" >&5
ac_lib_var=`echo curses'_'resizeterm | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3961,7 +3917,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lcurses $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 3965 "configure"
+#line 3921 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3972,7 +3928,7 @@
resizeterm()
; return 0; }
EOF
-if { (eval echo configure:3976: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3932: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -3996,7 +3952,7 @@
fi
echo $ac_n "checking for getbkgd in -lcurses""... $ac_c" 1>&6
-echo "configure:4000: checking for getbkgd in -lcurses" >&5
+echo "configure:3956: checking for getbkgd in -lcurses" >&5
ac_lib_var=`echo curses'_'getbkgd | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -4004,7 +3960,7 @@
ac_save_LIBS="$LIBS"
LIBS="-lcurses $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 4008 "configure"
+#line 3964 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4015,7 +3971,7 @@
getbkgd()
; return 0; }
EOF
-if { (eval echo configure:4019: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3975: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4044,12 +4000,12 @@
fi
echo $ac_n "checking "for GNU style IPX support"""... $ac_c" 1>&6
-echo "configure:4048: checking "for GNU style IPX support"" >&5
+echo "configure:4004: checking "for GNU style IPX support"" >&5
if eval "test \"`echo '$''{'ac_cv_c_ipx_gnu'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 4053 "configure"
+#line 4009 "configure"
#include "confdefs.h"
#include <sys/socket.h>
#include <netipx/ipx.h>
@@ -4057,7 +4013,7 @@
((struct sockaddr_ipx *)0)->sipx_family == AF_IPX
; return 0; }
EOF
-if { (eval echo configure:4061: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4017: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_ipx_gnu="yes"
else
@@ -4082,12 +4038,12 @@
if test "$ac_cv_c_ipx_gnu" = "no"
then
echo $ac_n "checking "for linux style IPX support"""... $ac_c" 1>&6
-echo "configure:4086: checking "for linux style IPX support"" >&5
+echo "configure:4042: checking "for linux style IPX support"" >&5
if eval "test \"`echo '$''{'ac_cv_c_ipx_linux'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 4091 "configure"
+#line 4047 "configure"
#include "confdefs.h"
#include <sys/socket.h>
#include <asm/types.h>
@@ -4096,7 +4052,7 @@
((struct sockaddr_ipx *)0)->sipx_family == AF_IPX
; return 0; }
EOF
-if { (eval echo configure:4100: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4056: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_ipx_linux="yes"
else
@@ -4123,17 +4079,17 @@
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:4127: checking for $ac_hdr" >&5
+echo "configure:4083: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 4132 "configure"
+#line 4088 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4137: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4093: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -4161,12 +4117,12 @@
echo $ac_n "checking "for Open Sound System"""... $ac_c" 1>&6
-echo "configure:4165: checking "for Open Sound System"" >&5
+echo "configure:4121: checking "for Open Sound System"" >&5
if eval "test \"`echo '$''{'ac_cv_c_opensoundsystem'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 4170 "configure"
+#line 4126 "configure"
#include "confdefs.h"
#if defined(HAVE_SYS_SOUNDCARD_H)
@@ -4187,7 +4143,7 @@
; return 0; }
EOF
-if { (eval echo configure:4191: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4147: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_opensoundsystem="yes"
else
@@ -4210,12 +4166,12 @@
fi
echo $ac_n "checking "for Open Sound System/MIDI interface"""... $ac_c" 1>&6
-echo "configure:4214: checking "for Open Sound System/MIDI interface"" >&5
+echo "configure:4170: checking "for Open Sound System/MIDI interface"" >&5
if eval "test \"`echo '$''{'ac_cv_c_opensoundsystem_midi'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 4219 "configure"
+#line 4175 "configure"
#include "confdefs.h"
#if defined(HAVE_SYS_SOUNDCARD_H)
@@ -4236,7 +4192,7 @@
; return 0; }
EOF
-if { (eval echo configure:4240: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4196: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_opensoundsystem_midi="yes"
else
@@ -4265,7 +4221,7 @@
then
CFLAGS="$CFLAGS -Wall"
echo $ac_n "checking "for gcc strength-reduce bug"""... $ac_c" 1>&6
-echo "configure:4269: checking "for gcc strength-reduce bug"" >&5
+echo "configure:4225: checking "for gcc strength-reduce bug"" >&5
if eval "test \"`echo '$''{'ac_cv_c_gcc_strength_bug'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4273,7 +4229,7 @@
ac_cv_c_gcc_strength_bug="yes"
else
cat > conftest.$ac_ext <<EOF
-#line 4277 "configure"
+#line 4233 "configure"
#include "confdefs.h"
int main(void) {
@@ -4284,7 +4240,7 @@
exit( Array[1] != -2 );
}
EOF
-if { (eval echo configure:4288: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4244: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
ac_cv_c_gcc_strength_bug="no"
else
@@ -4307,7 +4263,7 @@
echo $ac_n "checking "whether external symbols need an underscore prefix"""... $ac_c" 1>&6
-echo "configure:4311: checking "whether external symbols need an underscore prefix"" >&5
+echo "configure:4267: checking "whether external symbols need an underscore prefix"" >&5
if eval "test \"`echo '$''{'ac_cv_c_extern_prefix'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4319,14 +4275,14 @@
.long 0
EOF
cat > conftest.$ac_ext <<EOF
-#line 4323 "configure"
+#line 4279 "configure"
#include "confdefs.h"
extern int ac_test;
int main() {
if (ac_test) return 1
; return 0; }
EOF
-if { (eval echo configure:4330: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4286: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_c_extern_prefix="yes"
else
@@ -4350,7 +4306,7 @@
echo $ac_n "checking "whether assembler accepts .string"""... $ac_c" 1>&6
-echo "configure:4354: checking "whether assembler accepts .string"" >&5
+echo "configure:4310: checking "whether assembler accepts .string"" >&5
if eval "test \"`echo '$''{'ac_cv_c_asm_string'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4360,14 +4316,14 @@
.string "test"
EOF
cat > conftest.$ac_ext <<EOF
-#line 4364 "configure"
+#line 4320 "configure"
#include "confdefs.h"
int main() {
; return 0; }
EOF
-if { (eval echo configure:4371: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4327: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_c_asm_string="yes"
else
@@ -4394,21 +4350,21 @@
if test "$LIBEXT" = "so"
then
echo $ac_n "checking "whether we can build a Linux dll"""... $ac_c" 1>&6
-echo "configure:4398: checking "whether we can build a Linux dll"" >&5
+echo "configure:4354: checking "whether we can build a Linux dll"" >&5
if eval "test \"`echo '$''{'ac_cv_c_dll_linux'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
saved_cflags=$CFLAGS
CFLAGS="$CFLAGS -fPIC -shared -Wl,-soname,conftest.so.1.0"
cat > conftest.$ac_ext <<EOF
-#line 4405 "configure"
+#line 4361 "configure"
#include "confdefs.h"
int main() {
return 1
; return 0; }
EOF
-if { (eval echo configure:4412: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4368: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_c_dll_linux="yes"
else
@@ -4428,21 +4384,21 @@
LDSHARED="\$(CC) -shared -Wl,-soname,\$(SONAME),-rpath,\$(libdir)"
else
echo $ac_n "checking whether we can build a UnixWare (Solaris) dll""... $ac_c" 1>&6
-echo "configure:4432: checking whether we can build a UnixWare (Solaris) dll" >&5
+echo "configure:4388: checking whether we can build a UnixWare (Solaris) dll" >&5
if eval "test \"`echo '$''{'ac_cv_c_dll_unixware'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
saved_cflags=$CFLAGS
CFLAGS="$CFLAGS -fPIC -Wl,-G,-h,conftest.so.1.0"
cat > conftest.$ac_ext <<EOF
-#line 4439 "configure"
+#line 4395 "configure"
#include "confdefs.h"
int main() {
return 1
; return 0; }
EOF
-if { (eval echo configure:4446: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4402: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_c_dll_unixware="yes"
else
@@ -4462,21 +4418,21 @@
LDSHARED="\$(CC) -Wl,-G,-h,\$(libdir)/\$(SONAME)"
else
echo $ac_n "checking "whether we can build a NetBSD dll"""... $ac_c" 1>&6
-echo "configure:4466: checking "whether we can build a NetBSD dll"" >&5
+echo "configure:4422: checking "whether we can build a NetBSD dll"" >&5
if eval "test \"`echo '$''{'ac_cv_c_dll_netbsd'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
saved_cflags=$CFLAGS
CFLAGS="$CFLAGS -fPIC -Bshareable -Bforcearchive"
cat > conftest.$ac_ext <<EOF
-#line 4473 "configure"
+#line 4429 "configure"
#include "confdefs.h"
int main() {
return 1
; return 0; }
EOF
-if { (eval echo configure:4480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4436: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_c_dll_netbsd="yes"
else
@@ -4513,21 +4469,21 @@
else
DLL_LINK="-L\$(DLLDIR) \$(DLLS:%=-l%) -L\$(TOPOBJDIR) -lwine \$(X_LIBS) \$(XLIB)"
echo $ac_n "checking whether the linker supports --[no]-whole-archive (Linux)""... $ac_c" 1>&6
-echo "configure:4517: checking whether the linker supports --[no]-whole-archive (Linux)" >&5
+echo "configure:4473: checking whether the linker supports --[no]-whole-archive (Linux)" >&5
if eval "test \"`echo '$''{'ac_cv_c_whole_archive'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
saved_cflags=$CFLAGS
CFLAGS="$CFLAGS -Wl,--whole-archive -Wl,--no-whole-archive"
cat > conftest.$ac_ext <<EOF
-#line 4524 "configure"
+#line 4480 "configure"
#include "confdefs.h"
int main() {
return 1
; return 0; }
EOF
-if { (eval echo configure:4531: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4487: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_c_whole_archive="yes"
else
@@ -4547,21 +4503,21 @@
DLL_LINK="-Wl,--whole-archive $DLL_LINK -Wl,--no-whole-archive"
else
echo $ac_n "checking whether the linker supports -z {all,default}extract (Linux)""... $ac_c" 1>&6
-echo "configure:4551: checking whether the linker supports -z {all,default}extract (Linux)" >&5
+echo "configure:4507: checking whether the linker supports -z {all,default}extract (Linux)" >&5
if eval "test \"`echo '$''{'ac_cv_c_allextract'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
saved_cflags=$CFLAGS
CFLAGS="$CFLAGS -Wl,-z,allextract -Wl,-z,defaultextract"
cat > conftest.$ac_ext <<EOF
-#line 4558 "configure"
+#line 4514 "configure"
#include "confdefs.h"
int main() {
return 1
; return 0; }
EOF
-if { (eval echo configure:4565: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4521: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_c_allextract="yes"
else
@@ -4592,7 +4548,7 @@
wine_cv_libc_reentrant=no
echo $ac_n "checking "for reentrant libc: __errno_location"""... $ac_c" 1>&6
-echo "configure:4596: checking "for reentrant libc: __errno_location"" >&5
+echo "configure:4552: checking "for reentrant libc: __errno_location"" >&5
if eval "test \"`echo '$''{'wine_cv_libc_r__errno_location'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4600,14 +4556,14 @@
wine_cv_libc_r__errno_location=yes
else
cat > conftest.$ac_ext <<EOF
-#line 4604 "configure"
+#line 4560 "configure"
#include "confdefs.h"
int myerrno = 0;
char buf[256];
int *__errno_location(){return &myerrno;}
main(){connect(0,buf,255); exit(!myerrno);}
EOF
-if { (eval echo configure:4611: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4567: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
wine_cv_libc_r__errno_location=yes
else
@@ -4632,7 +4588,7 @@
wine_cv_libc_reentrant=__errno_location
fi
echo $ac_n "checking "for reentrant libc: __error"""... $ac_c" 1>&6
-echo "configure:4636: checking "for reentrant libc: __error"" >&5
+echo "configure:4592: checking "for reentrant libc: __error"" >&5
if eval "test \"`echo '$''{'wine_cv_libc_r__error'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4640,14 +4596,14 @@
wine_cv_libc_r__error=yes
else
cat > conftest.$ac_ext <<EOF
-#line 4644 "configure"
+#line 4600 "configure"
#include "confdefs.h"
int myerrno = 0;
char buf[256];
int *__error(){return &myerrno;}
main(){connect(0,buf,255); exit(!myerrno);}
EOF
-if { (eval echo configure:4651: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4607: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
wine_cv_libc_r__error=yes
else
@@ -4672,7 +4628,7 @@
wine_cv_libc_reentrant=__error
fi
echo $ac_n "checking "for reentrant libc: ___errno"""... $ac_c" 1>&6
-echo "configure:4676: checking "for reentrant libc: ___errno"" >&5
+echo "configure:4632: checking "for reentrant libc: ___errno"" >&5
if eval "test \"`echo '$''{'wine_cv_libc_r___errno'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4680,14 +4636,14 @@
wine_cv_libc_r___errno=yes
else
cat > conftest.$ac_ext <<EOF
-#line 4684 "configure"
+#line 4640 "configure"
#include "confdefs.h"
int myerrno = 0;
char buf[256];
int *___errno(){return &myerrno;}
main(){connect(0,buf,255); exit(!myerrno);}
EOF
-if { (eval echo configure:4691: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4647: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
wine_cv_libc_r___errno=yes
else
@@ -4712,7 +4668,7 @@
wine_cv_libc_reentrant=___errno
fi
echo $ac_n "checking "for reentrant libc: __thr_errno"""... $ac_c" 1>&6
-echo "configure:4716: checking "for reentrant libc: __thr_errno"" >&5
+echo "configure:4672: checking "for reentrant libc: __thr_errno"" >&5
if eval "test \"`echo '$''{'wine_cv_libc_r__thr_errno'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4720,14 +4676,14 @@
wine_cv_libc_r__thr_errno=yes
else
cat > conftest.$ac_ext <<EOF
-#line 4724 "configure"
+#line 4680 "configure"
#include "confdefs.h"
int myerrno = 0;
char buf[256];
int *__thr_errno(){return &myerrno;}
main(){connect(0,buf,255); exit(!myerrno);}
EOF
-if { (eval echo configure:4731: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4687: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
wine_cv_libc_r__thr_errno=yes
else
@@ -4763,7 +4719,7 @@
if test "$have_x" = "yes" -a "$wine_cv_libc_reentrant" != "no"
then
echo $ac_n "checking "for reentrant X libraries"""... $ac_c" 1>&6
-echo "configure:4767: checking "for reentrant X libraries"" >&5
+echo "configure:4723: checking "for reentrant X libraries"" >&5
if eval "test \"`echo '$''{'wine_cv_x_reentrant'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -4809,14 +4765,14 @@
echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6
-echo "configure:4813: checking whether byte ordering is bigendian" >&5
+echo "configure:4769: checking whether byte ordering is bigendian" >&5
if eval "test \"`echo '$''{'ac_cv_c_bigendian'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_cv_c_bigendian=unknown
# See if sys/param.h defines the BYTE_ORDER macro.
cat > conftest.$ac_ext <<EOF
-#line 4820 "configure"
+#line 4776 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/param.h>
@@ -4827,11 +4783,11 @@
#endif
; return 0; }
EOF
-if { (eval echo configure:4831: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4787: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
# It does; now see whether it defined to BIG_ENDIAN or not.
cat > conftest.$ac_ext <<EOF
-#line 4835 "configure"
+#line 4791 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/param.h>
@@ -4842,7 +4798,7 @@
#endif
; return 0; }
EOF
-if { (eval echo configure:4846: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4802: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_bigendian=yes
else
@@ -4862,7 +4818,7 @@
{ echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
else
cat > conftest.$ac_ext <<EOF
-#line 4866 "configure"
+#line 4822 "configure"
#include "confdefs.h"
main () {
/* Are we little or big endian? From Harbison&Steele. */
@@ -4875,7 +4831,7 @@
exit (u.c[sizeof (long) - 1] == 1);
}
EOF
-if { (eval echo configure:4879: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4835: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
ac_cv_c_bigendian=no
else
@@ -4903,19 +4859,19 @@
# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
# for constant arguments. Useless!
echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
-echo "configure:4907: checking for working alloca.h" >&5
+echo "configure:4863: checking for working alloca.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 4912 "configure"
+#line 4868 "configure"
#include "confdefs.h"
#include <alloca.h>
int main() {
void *p = alloca(2 * sizeof(int));
; return 0; }
EOF
-if { (eval echo configure:4919: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4875: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_header_alloca_h=yes
else
@@ -4936,12 +4892,12 @@
fi
echo $ac_n "checking for alloca""... $ac_c" 1>&6
-echo "configure:4940: checking for alloca" >&5
+echo "configure:4896: checking for alloca" >&5
if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 4945 "configure"
+#line 4901 "configure"
#include "confdefs.h"
#ifdef __GNUC__
@@ -4969,7 +4925,7 @@
char *p = (char *) alloca(1);
; return 0; }
EOF
-if { (eval echo configure:4973: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4929: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_func_alloca_works=yes
else
@@ -5001,12 +4957,12 @@
echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
-echo "configure:5005: checking whether alloca needs Cray hooks" >&5
+echo "configure:4961: checking whether alloca needs Cray hooks" >&5
if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5010 "configure"
+#line 4966 "configure"
#include "confdefs.h"
#if defined(CRAY) && ! defined(CRAY2)
webecray
@@ -5031,12 +4987,12 @@
if test $ac_cv_os_cray = yes; then
for ac_func in _getb67 GETB67 getb67; do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5035: checking for $ac_func" >&5
+echo "configure:4991: checking for $ac_func" >&5
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5040 "configure"
+#line 4996 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */
@@ -5059,7 +5015,7 @@
; return 0; }
EOF
-if { (eval echo configure:5063: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5019: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
else
@@ -5086,7 +5042,7 @@
fi
echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
-echo "configure:5090: checking stack direction for C alloca" >&5
+echo "configure:5046: checking stack direction for C alloca" >&5
if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -5094,7 +5050,7 @@
ac_cv_c_stack_direction=0
else
cat > conftest.$ac_ext <<EOF
-#line 5098 "configure"
+#line 5054 "configure"
#include "confdefs.h"
find_stack_direction ()
{
@@ -5113,7 +5069,7 @@
exit (find_stack_direction() < 0);
}
EOF
-if { (eval echo configure:5117: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:5073: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
ac_cv_c_stack_direction=1
else
@@ -5165,12 +5121,12 @@
do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5169: checking for $ac_func" >&5
+echo "configure:5125: checking for $ac_func" >&5
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5174 "configure"
+#line 5130 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */
@@ -5193,7 +5149,7 @@
; return 0; }
EOF
-if { (eval echo configure:5197: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5153: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
else
@@ -5270,17 +5226,17 @@
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5274: checking for $ac_hdr" >&5
+echo "configure:5230: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5279 "configure"
+#line 5235 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5284: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5240: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -5307,12 +5263,12 @@
done
echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6
-echo "configure:5311: checking whether stat file-mode macros are broken" >&5
+echo "configure:5267: checking whether stat file-mode macros are broken" >&5
if eval "test \"`echo '$''{'ac_cv_header_stat_broken'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5316 "configure"
+#line 5272 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/stat.h>
@@ -5365,12 +5321,12 @@
echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:5369: checking for working const" >&5
+echo "configure:5325: checking for working const" >&5
if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5374 "configure"
+#line 5330 "configure"
#include "confdefs.h"
int main() {
@@ -5419,7 +5375,7 @@
; return 0; }
EOF
-if { (eval echo configure:5423: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5379: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_const=yes
else
@@ -5440,21 +5396,21 @@
fi
echo $ac_n "checking for inline""... $ac_c" 1>&6
-echo "configure:5444: checking for inline" >&5
+echo "configure:5400: checking for inline" >&5
if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_cv_c_inline=no
for ac_kw in inline __inline__ __inline; do
cat > conftest.$ac_ext <<EOF
-#line 5451 "configure"
+#line 5407 "configure"
#include "confdefs.h"
int main() {
} int $ac_kw foo() {
; return 0; }
EOF
-if { (eval echo configure:5458: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5414: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_inline=$ac_kw; break
else
@@ -5480,12 +5436,12 @@
esac
echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:5484: checking for ANSI C header files" >&5
+echo "configure:5440: checking for ANSI C header files" >&5
if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5489 "configure"
+#line 5445 "configure"
#include "confdefs.h"
#include <stdlib.h>
#include <stdarg.h>
@@ -5493,7 +5449,7 @@
#include <float.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5497: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5453: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -5510,7 +5466,7 @@
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
cat > conftest.$ac_ext <<EOF
-#line 5514 "configure"
+#line 5470 "configure"
#include "confdefs.h"
#include <string.h>
EOF
@@ -5528,7 +5484,7 @@
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
cat > conftest.$ac_ext <<EOF
-#line 5532 "configure"
+#line 5488 "configure"
#include "confdefs.h"
#include <stdlib.h>
EOF
@@ -5549,7 +5505,7 @@
:
else
cat > conftest.$ac_ext <<EOF
-#line 5553 "configure"
+#line 5509 "configure"
#include "confdefs.h"
#include <ctype.h>
#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -5560,7 +5516,7 @@
exit (0); }
EOF
-if { (eval echo configure:5564: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:5520: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
:
else
@@ -5584,12 +5540,12 @@
fi
echo $ac_n "checking for size_t""... $ac_c" 1>&6
-echo "configure:5588: checking for size_t" >&5
+echo "configure:5544: checking for size_t" >&5
if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5593 "configure"
+#line 5549 "configure"
#include "confdefs.h"
#include <sys/types.h>
#if STDC_HEADERS
@@ -5617,7 +5573,7 @@
fi
echo $ac_n "checking size of long long""... $ac_c" 1>&6
-echo "configure:5621: checking size of long long" >&5
+echo "configure:5577: checking size of long long" >&5
if eval "test \"`echo '$''{'ac_cv_sizeof_long_long'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -5625,7 +5581,7 @@
ac_cv_sizeof_long_long=0
else
cat > conftest.$ac_ext <<EOF
-#line 5629 "configure"
+#line 5585 "configure"
#include "confdefs.h"
#include <stdio.h>
main()
@@ -5636,7 +5592,7 @@
exit(0);
}
EOF
-if { (eval echo configure:5640: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:5596: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
ac_cv_sizeof_long_long=`cat conftestval`
else
@@ -5659,12 +5615,12 @@
if test "$ac_cv_header_linux_joystick_h" = "yes"
then
echo $ac_n "checking "whether linux/joystick.h uses the Linux 2.2+ API"""... $ac_c" 1>&6
-echo "configure:5663: checking "whether linux/joystick.h uses the Linux 2.2+ API"" >&5
+echo "configure:5619: checking "whether linux/joystick.h uses the Linux 2.2+ API"" >&5
if eval "test \"`echo '$''{'wine_cv_linux_joystick_22_api'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5668 "configure"
+#line 5624 "configure"
#include "confdefs.h"
#include <sys/ioctl.h>
@@ -5679,7 +5635,7 @@
/*empty*/
; return 0; }
EOF
-if { (eval echo configure:5683: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5639: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_linux_joystick_22_api=yes
else
@@ -5706,12 +5662,12 @@
if test "$ac_cv_header_sys_vfs_h" = "yes"
then
echo $ac_n "checking "whether sys/vfs.h defines statfs"""... $ac_c" 1>&6
-echo "configure:5710: checking "whether sys/vfs.h defines statfs"" >&5
+echo "configure:5666: checking "whether sys/vfs.h defines statfs"" >&5
if eval "test \"`echo '$''{'wine_cv_sys_vfs_has_statfs'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5715 "configure"
+#line 5671 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5728,7 +5684,7 @@
; return 0; }
EOF
-if { (eval echo configure:5732: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5688: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_sys_vfs_has_statfs=yes
else
@@ -5755,12 +5711,12 @@
if test "$ac_cv_header_sys_statfs_h" = "yes"
then
echo $ac_n "checking "whether sys/statfs.h defines statfs"""... $ac_c" 1>&6
-echo "configure:5759: checking "whether sys/statfs.h defines statfs"" >&5
+echo "configure:5715: checking "whether sys/statfs.h defines statfs"" >&5
if eval "test \"`echo '$''{'wine_cv_sys_statfs_has_statfs'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5764 "configure"
+#line 5720 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5775,7 +5731,7 @@
; return 0; }
EOF
-if { (eval echo configure:5779: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5735: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_sys_statfs_has_statfs=yes
else
@@ -5802,12 +5758,12 @@
if test "$ac_cv_header_sys_mount_h" = "yes"
then
echo $ac_n "checking "whether sys/mount.h defines statfs"""... $ac_c" 1>&6
-echo "configure:5806: checking "whether sys/mount.h defines statfs"" >&5
+echo "configure:5762: checking "whether sys/mount.h defines statfs"" >&5
if eval "test \"`echo '$''{'wine_cv_sys_mount_has_statfs'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5811 "configure"
+#line 5767 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5822,7 +5778,7 @@
; return 0; }
EOF
-if { (eval echo configure:5826: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5782: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_sys_mount_has_statfs=yes
else
@@ -5848,7 +5804,7 @@
echo $ac_n "checking "for statfs.f_bfree"""... $ac_c" 1>&6
-echo "configure:5852: checking "for statfs.f_bfree"" >&5
+echo "configure:5808: checking "for statfs.f_bfree"" >&5
if eval "test \"`echo '$''{'wine_cv_statfs_bfree'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -5857,7 +5813,7 @@
wine_cv_statfs_bfree=no
else
cat > conftest.$ac_ext <<EOF
-#line 5861 "configure"
+#line 5817 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5884,7 +5840,7 @@
; return 0; }
EOF
-if { (eval echo configure:5888: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5844: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_statfs_bfree=yes
else
@@ -5908,7 +5864,7 @@
fi
echo $ac_n "checking "for statfs.f_bavail"""... $ac_c" 1>&6
-echo "configure:5912: checking "for statfs.f_bavail"" >&5
+echo "configure:5868: checking "for statfs.f_bavail"" >&5
if eval "test \"`echo '$''{'wine_cv_statfs_bavail'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -5917,7 +5873,7 @@
wine_cv_statfs_bavail=no
else
cat > conftest.$ac_ext <<EOF
-#line 5921 "configure"
+#line 5877 "configure"
#include "confdefs.h"
#include <sys/types.h>
@@ -5944,7 +5900,7 @@
; return 0; }
EOF
-if { (eval echo configure:5948: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5904: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
wine_cv_statfs_bavail=yes
else
@@ -5969,12 +5925,12 @@
echo $ac_n "checking "for msg_accrights in struct msghdr"""... $ac_c" 1>&6
-echo "configure:5973: checking "for msg_accrights in struct msghdr"" >&5
+echo "configure:5929: checking "for msg_accrights in struct msghdr"" >&5
if eval "test \"`echo '$''{'ac_cv_c_msg_accrights'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 5978 "configure"
+#line 5934 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/socket.h>
@@ -5982,7 +5938,7 @@
struct msghdr hdr; hdr.msg_accrights=0
; return 0; }
EOF
-if { (eval echo configure:5986: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5942: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_msg_accrights="yes"
else
@@ -6005,12 +5961,12 @@
echo $ac_n "checking "for sun_len in struct sockaddr_un"""... $ac_c" 1>&6
-echo "configure:6009: checking "for sun_len in struct sockaddr_un"" >&5
+echo "configure:5965: checking "for sun_len in struct sockaddr_un"" >&5
if eval "test \"`echo '$''{'ac_cv_c_sun_len'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 6014 "configure"
+#line 5970 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/socket.h>
@@ -6019,7 +5975,7 @@
static struct sockaddr_un addr; addr.sun_len = 1
; return 0; }
EOF
-if { (eval echo configure:6023: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5979: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_sun_len="yes"
else
@@ -6042,12 +5998,12 @@
echo $ac_n "checking "whether we need to define __i386__"""... $ac_c" 1>&6
-echo "configure:6046: checking "whether we need to define __i386__"" >&5
+echo "configure:6002: checking "whether we need to define __i386__"" >&5
if eval "test \"`echo '$''{'ac_cv_cpp_def_i386'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 6051 "configure"
+#line 6007 "configure"
#include "confdefs.h"
#if (defined(i386) || defined(__i386)) && !defined(__i386__)
yes
@@ -6227,6 +6183,7 @@
dlls/oledlg/Makefile
dlls/olepro32/Makefile
dlls/olesvr/Makefile
+dlls/opengl32/Makefile
dlls/psapi/Makefile
dlls/rasapi32/Makefile
dlls/richedit/Makefile
@@ -6366,6 +6323,7 @@
s%@XLIB@%$XLIB%g
s%@X_DLLS@%$X_DLLS%g
s%@XFILES@%$XFILES%g
+s%@OPENGLFILES@%$OPENGLFILES%g
s%@DGA_SRCS@%$DGA_SRCS%g
s%@DGA2_SRCS@%$DGA2_SRCS%g
s%@MESA_SRCS@%$MESA_SRCS%g
@@ -6458,6 +6416,7 @@
dlls/oledlg/Makefile
dlls/olepro32/Makefile
dlls/olesvr/Makefile
+dlls/opengl32/Makefile
dlls/psapi/Makefile
dlls/rasapi32/Makefile
dlls/richedit/Makefile
@@ -6760,14 +6719,14 @@
echo "*** reentrant version of libc."
fi
-if test "$wine_cv_mesa_version_OK" = "no"
+if test "$wine_cv_opengl_version_OK" = "no"
then
echo
echo "*** Warning: old Mesa headers detected. Wine will be built without Direct3D"
echo "*** support. Consider upgrading your Mesa libraries (http://www.mesa3d.org/)."
fi
-if test "$wine_cv_mesa_version_threadsafe" = "yes" -a $OPENGL = "normal"
+if test "$wine_cv_opengl_version_threadsafe" = "yes" -a $OPENGL = "normal"
then
echo
echo "*** Warning: the OpenGL version you have installed relies on libpthread for"
@@ -6776,7 +6735,7 @@
echo "*** start configure with '--enable-opengl' to force OpenGL support."
fi
-if test "$wine_cv_mesa_version_threadsafe" = "yes" -a $OPENGL = "yes"
+if test "$wine_cv_opengl_version_threadsafe" = "yes" -a $OPENGL = "yes"
then
echo
echo "*** Warning: you explicitely linked in a thread-safe OpenGL version. If you"
diff --git a/configure.in b/configure.in
index 7d0f8f9..5ac3f73 100644
--- a/configure.in
+++ b/configure.in
@@ -126,6 +126,8 @@
X_DLLS=""
AC_SUBST(XFILES)
XFILES=""
+AC_SUBST(OPENGLFILES)
+OPENGLFILES=""
AC_SUBST(DGA_SRCS)
DGA_SRCS=""
AC_SUBST(DGA2_SRCS)
@@ -195,64 +197,58 @@
AC_CHECK_LIB(Xxf86vm,XF86VidModeQueryExtension,AC_DEFINE(HAVE_LIBXXF86VM) X_PRE_LIBS="$X_PRE_LIBS -lXxf86vm",,$X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
fi
- dnl Check for the presence of Mesa
+ dnl Check for the presence of OpenGL
if test $OPENGL = "yes" -o $OPENGL = "normal"
then
- AC_CHECK_HEADERS(GL/gl.h GL/glx.h)
- if test "$ac_cv_header_GL_gl_h" = "yes" -a "$ac_cv_header_GL_glx_h" = "yes"
+ AC_CHECK_HEADERS(GL/gl.h GL/glx.h GL/glext.h)
+ if test "$ac_cv_header_GL_gl_h" = "yes" -a "$ac_cv_header_GL_glx_h" = "yes" -a "$ac_cv_header_GL_glext_h" = "yes"
then
dnl Check for some problems due to old Mesa versions
- AC_CACHE_CHECK("for up-to-date OpenGL version", wine_cv_mesa_version_OK,
+ AC_CACHE_CHECK("for up-to-date OpenGL version", wine_cv_opengl_version_OK,
AC_TRY_COMPILE(
[#include <GL/gl.h>],
[GLenum test = GL_UNSIGNED_SHORT_5_6_5;],
- [wine_cv_mesa_version_OK="yes"],
- [wine_cv_mesa_version_OK="no"]
+ [wine_cv_opengl_version_OK="yes"],
+ [wine_cv_opengl_version_OK="no"]
)
)
dnl Check for the thread-safety of the OpenGL library
AC_CACHE_CHECK("for thread-safe OpenGL version",
- wine_cv_mesa_version_threadsafe,
+ wine_cv_opengl_version_threadsafe,
[saved_libs=$LIBS
LIBS="$X_LIBS -lGL"
AC_TRY_LINK([],[pthread_getspecific();],
- [wine_cv_mesa_version_threadsafe="yes"],
- [wine_cv_mesa_version_threadsafe="no"])
+ [wine_cv_opengl_version_threadsafe="yes"],
+ [wine_cv_opengl_version_threadsafe="no"])
LIBS=$saved_libs]
)
- if test "$wine_cv_mesa_version_OK" = "yes" -a \( "$wine_cv_mesa_version_threadsafe" = "no" -o $OPENGL = "yes" \)
+ if test "$wine_cv_opengl_version_OK" = "yes" -a \( "$wine_cv_opengl_version_threadsafe" = "no" -o $OPENGL = "yes" \)
then
dnl Check for the presense of the library
AC_CHECK_LIB(GL,glXCreateContext,
- AC_DEFINE(HAVE_LIBMESAGL)
X_PRE_LIBS="$X_PRE_LIBS -lGL"
MESA_SRCS='$(MESA_SRCS)'
,,
$X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS)
- if test "$ac_cv_lib_GL_glXCreateContext" = "no"
+ if test $ac_cv_lib_GL_glXCreateContext = "yes"
then
- AC_CHECK_LIB(MesaGL,glXCreateContext,
- AC_DEFINE(HAVE_LIBMESAGL)
- X_PRE_LIBS="$X_PRE_LIBS -lMesaGL"
- MESA_SRCS='$(MESA_SRCS)'
- ,,
- $X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS)
- fi
+ dnl Check for the Color Table and Paletted Texture extensions
+ AC_CACHE_CHECK("for the OpenGL Color Index extension",dummy,
+ AC_TRY_COMPILE([#include <GL/gl.h>],
+ [GLenum test = GL_COLOR_INDEX8_EXT;],
+ [AC_DEFINE(HAVE_GL_COLOR_TABLE)],))
- dnl Check for the Color Table and Paletted Texture extensions
- AC_CACHE_CHECK("for the OpenGL Color Index extension",dummy,
- AC_TRY_COMPILE([#include <GL/gl.h>],
- [GLenum test = GL_COLOR_INDEX8_EXT;],
- [AC_DEFINE(HAVE_GL_COLOR_TABLE)],))
+ AC_CHECK_LIB(GL,glColorTableEXT,AC_DEFINE(HAVE_GL_PALETTED_TEXTURE),,$X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS)
+ AC_CHECK_LIB(GL,glXGetProcAddressARB,AC_DEFINE(HAVE_GLX_GETPROCADDRESS),,$X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS)
- if test "$ac_cv_lib_GL_glXCreateContext" = "no"
- then
- AC_CHECK_LIB(MesaGL,glColorTableEXT,AC_DEFINE(HAVE_GL_PALETTED_TEXTURE),,$X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS)
- else
- AC_CHECK_LIB(GL,glColorTableEXT,AC_DEFINE(HAVE_GL_PALETTED_TEXTURE),,$X_LIBS -lXext -lX11 -lm $X_EXTRA_LIBS)
+ if test $ac_cv_lib_GL_glXGetProcAddressARB = "yes"
+ then
+ AC_DEFINE(HAVE_OPENGL)
+ OPENGLFILES='$(OPENGLFILES)'
+ fi
fi
fi
fi
@@ -994,6 +990,7 @@
dlls/oledlg/Makefile
dlls/olepro32/Makefile
dlls/olesvr/Makefile
+dlls/opengl32/Makefile
dlls/psapi/Makefile
dlls/rasapi32/Makefile
dlls/richedit/Makefile
@@ -1108,14 +1105,14 @@
echo "*** reentrant version of libc."
fi
-if test "$wine_cv_mesa_version_OK" = "no"
+if test "$wine_cv_opengl_version_OK" = "no"
then
echo
echo "*** Warning: old Mesa headers detected. Wine will be built without Direct3D"
echo "*** support. Consider upgrading your Mesa libraries (http://www.mesa3d.org/)."
fi
-if test "$wine_cv_mesa_version_threadsafe" = "yes" -a $OPENGL = "normal"
+if test "$wine_cv_opengl_version_threadsafe" = "yes" -a $OPENGL = "normal"
then
echo
echo "*** Warning: the OpenGL version you have installed relies on libpthread for"
@@ -1124,7 +1121,7 @@
echo "*** start configure with '--enable-opengl' to force OpenGL support."
fi
-if test "$wine_cv_mesa_version_threadsafe" = "yes" -a $OPENGL = "yes"
+if test "$wine_cv_opengl_version_threadsafe" = "yes" -a $OPENGL = "yes"
then
echo
echo "*** Warning: you explicitely linked in a thread-safe OpenGL version. If you"
diff --git a/dlls/Makefile.in b/dlls/Makefile.in
index c9ccbdf..8806449 100644
--- a/dlls/Makefile.in
+++ b/dlls/Makefile.in
@@ -3,8 +3,12 @@
SRCDIR = @srcdir@
VPATH = @srcdir@
+OPENGLFILES= \
+ opengl32/libopengl32.@LIBEXT@
+
XFILES = \
ddraw/libddraw.@LIBEXT@ \
+ @OPENGLFILES@ \
x11drv/libx11drv.@LIBEXT@
DLLFILES = \
@@ -118,6 +122,7 @@
oledlg \
olepro32 \
olesvr \
+ opengl32 \
psapi \
rasapi32 \
richedit \
@@ -246,6 +251,9 @@
libolesvr32.@LIBEXT@ libolesvr.@LIBEXT@: olesvr/libolesvr32.@LIBEXT@
$(RM) $@ && $(LN_S) olesvr/libolesvr32.@LIBEXT@ $@
+libopengl32.@LIBEXT@: opengl32/libopengl32.@LIBEXT@
+ $(RM) $@ && $(LN_S) opengl32/libopengl32.@LIBEXT@ $@
+
libpsapi.@LIBEXT@: psapi/libpsapi.@LIBEXT@
$(RM) $@ && $(LN_S) psapi/libpsapi.@LIBEXT@ $@
@@ -325,6 +333,7 @@
oleaut32/liboleaut32.so: libole32.so libcomctl32.so
olecli/libolecli32.so: libolesvr32.so libole32.so
olepro32/libolepro32.so: liboleaut32.so libole32.so
+opengl32/libopengl32.so: libx11drv.so libgdi32.so
shell32/libshell32.so: libole32.so
urlmon/liburlmon.so: libole32.so
version/libversion.so: liblz32.so
diff --git a/dlls/ddraw/d3dviewport.c b/dlls/ddraw/d3dviewport.c
index 15c8ee3..df060c05 100644
--- a/dlls/ddraw/d3dviewport.c
+++ b/dlls/ddraw/d3dviewport.c
@@ -14,10 +14,14 @@
#include "x11drv.h"
#include "d3d_private.h"
+#include "mesa_private.h"
DEFAULT_DEBUG_CHANNEL(ddraw)
-#ifdef HAVE_MESAGL
+#ifdef HAVE_OPENGL
+
+#define D3DVPRIVATE(x) mesa_d3dv_private*dvpriv=((mesa_d3dv_private*)x->private)
+#define D3DLPRIVATE(x) mesa_d3dl_private*dlpriv=((mesa_d3dl_private*)x->private)
static ICOM_VTABLE(IDirect3DViewport2) viewport2_vtable;
@@ -44,6 +48,7 @@
IDirect3DViewport2Impl* vp;
vp = HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(IDirect3DViewport2Impl));
+ vp->private = HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(mesa_d3dv_private));
vp->ref = 1;
ICOM_VTBL(vp) = &viewport2_vtable;
vp->d3d.d3d2 = d3d2;
@@ -54,7 +59,7 @@
vp->lights = NULL;
- vp->nextlight = GL_LIGHT0;
+ ((mesa_d3dv_private *) vp->private)->nextlight = GL_LIGHT0;
return (LPDIRECT3DVIEWPORT2)vp;
}
@@ -64,6 +69,7 @@
IDirect3DViewport2Impl* vp;
vp = HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(IDirect3DViewport2Impl));
+ vp->private = HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(mesa_d3dv_private));
vp->ref = 1;
ICOM_VTBL(vp) = &viewport2_vtable;
vp->d3d.d3d1 = d3d1;
@@ -74,7 +80,7 @@
vp->lights = NULL;
- vp->nextlight = GL_LIGHT0;
+ ((mesa_d3dv_private *) vp->private)->nextlight = GL_LIGHT0;
return (LPDIRECT3DVIEWPORT) vp;
}
@@ -83,7 +89,7 @@
* IDirect3DViewport2 methods
*/
-static HRESULT WINAPI IDirect3DViewport2Impl_QueryInterface(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_QueryInterface(LPDIRECT3DVIEWPORT2 iface,
REFIID riid,
LPVOID* ppvObj)
{
@@ -96,7 +102,7 @@
-static ULONG WINAPI IDirect3DViewport2Impl_AddRef(LPDIRECT3DVIEWPORT2 iface)
+ULONG WINAPI IDirect3DViewport2Impl_AddRef(LPDIRECT3DVIEWPORT2 iface)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
TRACE("(%p)->()incrementing from %lu.\n", This, This->ref );
@@ -106,7 +112,7 @@
-static ULONG WINAPI IDirect3DViewport2Impl_Release(LPDIRECT3DVIEWPORT2 iface)
+ULONG WINAPI IDirect3DViewport2Impl_Release(LPDIRECT3DVIEWPORT2 iface)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
FIXME("(%p)->() decrementing from %lu.\n", This, This->ref );
@@ -120,7 +126,7 @@
}
/*** IDirect3DViewport methods ***/
-static HRESULT WINAPI IDirect3DViewport2Impl_Initialize(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_Initialize(LPDIRECT3DVIEWPORT2 iface,
LPDIRECT3D d3d)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
@@ -129,7 +135,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_GetViewport(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_GetViewport(LPDIRECT3DVIEWPORT2 iface,
LPD3DVIEWPORT lpvp)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
@@ -143,7 +149,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_SetViewport(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_SetViewport(LPDIRECT3DVIEWPORT2 iface,
LPD3DVIEWPORT lpvp)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
@@ -167,7 +173,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_TransformVertices(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_TransformVertices(LPDIRECT3DVIEWPORT2 iface,
DWORD dwVertexCount,
LPD3DTRANSFORMDATA lpData,
DWORD dwFlags,
@@ -180,7 +186,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_LightElements(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_LightElements(LPDIRECT3DVIEWPORT2 iface,
DWORD dwElementCount,
LPD3DLIGHTDATA lpData)
{
@@ -190,7 +196,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_SetBackground(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_SetBackground(LPDIRECT3DVIEWPORT2 iface,
D3DMATERIALHANDLE hMat)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
@@ -199,7 +205,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_GetBackground(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_GetBackground(LPDIRECT3DVIEWPORT2 iface,
LPD3DMATERIALHANDLE lphMat,
LPBOOL lpValid)
{
@@ -209,7 +215,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_SetBackgroundDepth(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_SetBackgroundDepth(LPDIRECT3DVIEWPORT2 iface,
LPDIRECTDRAWSURFACE lpDDSurface)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
@@ -218,7 +224,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_GetBackgroundDepth(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_GetBackgroundDepth(LPDIRECT3DVIEWPORT2 iface,
LPDIRECTDRAWSURFACE* lplpDDSurface,
LPBOOL lpValid)
{
@@ -228,7 +234,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_Clear(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_Clear(LPDIRECT3DVIEWPORT2 iface,
DWORD dwCount,
LPD3DRECT lpRects,
DWORD dwFlags)
@@ -257,7 +263,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_AddLight(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_AddLight(LPDIRECT3DVIEWPORT2 iface,
LPDIRECT3DLIGHT lpLight)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
@@ -270,6 +276,9 @@
/* If active, activate the light */
if (This->device.active_device1 != NULL) {
+ D3DVPRIVATE(This);
+ D3DLPRIVATE(ilpLight);
+
/* Get the rendering context */
if (This->use_d3d2)
This->device.active_device2->set_context(This->device.active_device2);
@@ -277,14 +286,14 @@
This->device.active_device1->set_context(This->device.active_device1);
/* Activate the light */
- ilpLight->light_num = This->nextlight++;
+ dlpriv->light_num = dvpriv->nextlight++;
ilpLight->activate(ilpLight);
}
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_DeleteLight(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_DeleteLight(LPDIRECT3DVIEWPORT2 iface,
LPDIRECT3DLIGHT lpLight)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
@@ -293,7 +302,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_NextLight(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_NextLight(LPDIRECT3DVIEWPORT2 iface,
LPDIRECT3DLIGHT lpLight,
LPDIRECT3DLIGHT* lplpLight,
DWORD dwFlags)
@@ -305,7 +314,7 @@
}
/*** IDirect3DViewport2 methods ***/
-static HRESULT WINAPI IDirect3DViewport2Impl_GetViewport2(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_GetViewport2(LPDIRECT3DVIEWPORT2 iface,
LPD3DVIEWPORT2 lpViewport2)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
@@ -319,7 +328,7 @@
return DD_OK;
}
-static HRESULT WINAPI IDirect3DViewport2Impl_SetViewport2(LPDIRECT3DVIEWPORT2 iface,
+HRESULT WINAPI IDirect3DViewport2Impl_SetViewport2(LPDIRECT3DVIEWPORT2 iface,
LPD3DVIEWPORT2 lpViewport2)
{
ICOM_THIS(IDirect3DViewport2Impl,iface);
@@ -372,7 +381,7 @@
IDirect3DViewport2Impl_SetViewport2
};
-#else /* HAVE_MESAGL */
+#else /* HAVE_OPENGL */
LPDIRECT3DVIEWPORT d3dviewport_create(IDirect3DImpl* d3d1) {
ERR("Should not be called...\n");
@@ -384,4 +393,4 @@
return NULL;
}
-#endif /* HAVE_MESAGL */
+#endif /* HAVE_OPENGL */
diff --git a/dlls/ddraw/ddraw/dga.c b/dlls/ddraw/ddraw/dga.c
index f2866e4..d8dcf41 100644
--- a/dlls/ddraw/ddraw/dga.c
+++ b/dlls/ddraw/ddraw/dga.c
@@ -345,7 +345,7 @@
DDSCAPS_FRONTBUFFER | DDSCAPS_LOCALVIDMEM | DDSCAPS_NONLOCALVIDMEM | DDSCAPS_OFFSCREENPLAIN |
/*DDSCAPS_OVERLAY |*/ DDSCAPS_PALETTE | DDSCAPS_PRIMARYSURFACE | DDSCAPS_SYSTEMMEMORY |
DDSCAPS_VIDEOMEMORY | DDSCAPS_VISIBLE;
-#ifdef HAVE_MESAGL
+#ifdef HAVE_OPENGL
caps->dwCaps |= DDCAPS_3D | DDCAPS_ZBLTS;
caps->dwCaps2 |= DDCAPS2_NO2DDURING3DSCENE;
caps->ddsCaps.dwCaps |= DDSCAPS_3DDEVICE | DDSCAPS_MIPMAP | DDSCAPS_TEXTURE | DDSCAPS_ZBUFFER;
diff --git a/dlls/ddraw/ddraw/x11.c b/dlls/ddraw/ddraw/x11.c
index a6c5d2a..0789e99 100644
--- a/dlls/ddraw/ddraw/x11.c
+++ b/dlls/ddraw/ddraw/x11.c
@@ -553,7 +553,7 @@
DDSCAPS_FRONTBUFFER | DDSCAPS_LOCALVIDMEM | DDSCAPS_NONLOCALVIDMEM | DDSCAPS_OFFSCREENPLAIN |
/*DDSCAPS_OVERLAY |*/ DDSCAPS_PALETTE | DDSCAPS_PRIMARYSURFACE | DDSCAPS_SYSTEMMEMORY |
DDSCAPS_VIDEOMEMORY | DDSCAPS_VISIBLE;
-#ifdef HAVE_MESAGL
+#ifdef HAVE_OPENGL
caps->dwCaps |= DDCAPS_3D | DDCAPS_ZBLTS;
caps->dwCaps2 |= DDCAPS2_NO2DDURING3DSCENE;
caps->ddsCaps.dwCaps |= DDSCAPS_3DDEVICE | DDSCAPS_MIPMAP | DDSCAPS_TEXTURE | DDSCAPS_ZBUFFER;
@@ -650,7 +650,7 @@
return S_OK;
}
-#ifdef HAVE_MESAGL
+#ifdef HAVE_OPENGL
if ( IsEqualGUID( &IID_IDirect3D, refiid ) )
return create_direct3d(obj,This);
if ( IsEqualGUID( &IID_IDirect3D2, refiid ) )
diff --git a/dlls/ddraw/dsurface/x11.c b/dlls/ddraw/dsurface/x11.c
index 072a3d3..f21e83f 100644
--- a/dlls/ddraw/dsurface/x11.c
+++ b/dlls/ddraw/dsurface/x11.c
@@ -17,7 +17,7 @@
#include "debugtools.h"
#include "x11_private.h"
-#ifdef HAVE_MESAGL
+#ifdef HAVE_OPENGL
/* for d3d texture stuff */
# include "mesa_private.h"
#endif
@@ -59,7 +59,7 @@
TRACE(" Creating IDirectDrawSurface interface (%p)\n", *obj);
return S_OK;
}
-#ifdef HAVE_MESAGL
+#ifdef HAVE_OPENGL
if ( IsEqualGUID( &IID_IDirect3DTexture2, refiid ) ) {
/* Texture interface */
*obj = d3dtexture2_create(This);
@@ -74,7 +74,7 @@
TRACE(" Creating IDirect3DTexture interface (%p)\n", *obj);
return S_OK;
}
-#endif /* HAVE_MESAGL */
+#endif /* HAVE_OPENGL */
FIXME("(%p):interface for IID %s NOT found!\n",This,debugstr_guid(refiid));
return OLE_E_ENUM_NOMORE;
}
diff --git a/dlls/ddraw/mesa_private.h b/dlls/ddraw/mesa_private.h
index 54b542d..c30d673 100644
--- a/dlls/ddraw/mesa_private.h
+++ b/dlls/ddraw/mesa_private.h
@@ -40,14 +40,6 @@
GLenum nextlight;
} mesa_d3dv_private;
-#ifdef USE_OSMESA
-# define LEAVE_GL() ;
-# define ENTER_GL() ;
-#else
-# define LEAVE_GL() LeaveCriticalSection( &X11DRV_CritSection )
-# define ENTER_GL() EnterCriticalSection( &X11DRV_CritSection )
-#endif
-
/* Matrix copy WITH transposition */
#define conv_mat2(mat,gl_mat) \
{ \
diff --git a/dlls/opengl32/.cvsignore b/dlls/opengl32/.cvsignore
new file mode 100644
index 0000000..bb5bba0
--- /dev/null
+++ b/dlls/opengl32/.cvsignore
@@ -0,0 +1,3 @@
+*.spec.c
+Makefile
+libopengl32.so.1.0
diff --git a/dlls/opengl32/Makefile.in b/dlls/opengl32/Makefile.in
new file mode 100644
index 0000000..9c22e9c
--- /dev/null
+++ b/dlls/opengl32/Makefile.in
@@ -0,0 +1,20 @@
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR = @srcdir@
+VPATH = @srcdir@
+MODULE = opengl32
+SOVERSION = 1.0
+IMPORTS = \
+ x11drv \
+ gdi32
+
+SPEC_SRCS = opengl32.spec
+
+C_SRCS = \
+ wgl.c \
+ opengl_norm.c \
+ opengl_ext.c
+
+@MAKE_DLL_RULES@
+
+### Dependencies:
diff --git a/dlls/opengl32/make_opengl_ext b/dlls/opengl32/make_opengl_ext
new file mode 100755
index 0000000..16a9548
--- /dev/null
+++ b/dlls/opengl32/make_opengl_ext
@@ -0,0 +1,145 @@
+#!/usr/bin/perl -w
+
+print "
+/* Auto-generated file... Do not edit ! */
+
+#include \"config.h\"
+#include \"wine_gl.h\"
+
+#include \"opengl_ext.h\"
+
+";
+
+#
+# First, create a hash-table with all function defined in opengl32.spec
+#
+%opengl_std = ();
+open(SPEC, "dlls/opengl32/opengl32.spec") || die "Could not open spec file";
+foreach (<SPEC>) {
+ if (($_ =~ /@/) && ($_ !~ /wgl/)) {
+ ($name) = ($_ =~ /stdcall (\w*)\(/);
+ $opengl_std{$name} = 1;
+ }
+}
+close(SPEC);
+
+#
+# Now, the functions from the include file
+#
+%opengl_ext = ();
+open(INC, "/home/ulmer/OpenGL/glext_proto.h") || die "Could not open GL/glext.h";
+while ($line = <INC>) {
+ if ($line =~ /extern.*APIENTRY/) {
+ # Start of a function declaration
+ ($ret, $name, $args) = ($line =~ /extern (\w*) APIENTRY *(\w*) *\((.*)\)/);
+
+ # Now, remove all function already defined in opengl32.spec
+ if ($opengl_std{$name}) {
+ # Do nothing as we already have these functions
+ } else {
+ # Now, get the typedef name (the line after)
+ ($typedef_name) = (<INC> =~ /\(APIENTRY *\* *(\w*) *\)/);
+
+ # After that, parse the arguments
+ @args = split /,/, $args;
+ $args_ref = [];
+ foreach (@args) {
+ push @$args_ref, $_;
+ }
+ $opengl_ext{$name} = [ $ret, $typedef_name, $args_ref ];
+ }
+ }
+}
+close(INC);
+
+#
+# After that, generate the file itself....
+#
+print "/* These will be filled during a wglGetProcAddress call */\n";
+$num = 0;
+foreach $name (sort keys(%opengl_ext)) {
+ $ref = $opengl_ext{$name};
+ $arg_ref = $$ref[2];
+ @larg = @$arg_ref;
+
+ print "$$ref[0] (*func_$name)(";
+ $farg = shift @larg;
+ print "$farg";
+ foreach (@larg) {
+ print ", $_";
+ }
+ print ") = (void *) 0xdeadbeef;\n";
+ $num++;
+}
+print "\n";
+
+print "/* The function prototypes */\n";
+foreach $name (sort keys(%opengl_ext)) {
+ $ref = $opengl_ext{$name};
+ $arg_ref = $$ref[2];
+ @larg = @$arg_ref;
+ print "$$ref[0] WINAPI wine_$name(";
+
+ $farg = shift @larg;
+ print "$farg";
+ foreach (@larg) {
+ print ", $_";
+ }
+ print ") ;\n";
+}
+print "\n";
+
+
+print "/* The table giving the correspondance between names and functions */\n";
+print "int extension_registry_size = $num;\n";
+print "OpenGL_extension extension_registry[] = {\n";
+foreach $name (sort keys(%opengl_ext)) {
+ $num--;
+ print " { \"$name\", (void *) wine_$name, (void **) (&func_$name) }";
+ if ($num) {
+ print ",";
+ }
+ print "\n";
+}
+print "};\n";
+print "\n";
+
+print "/* Now, the function declarations */\n";
+foreach $name (sort keys(%opengl_ext)) {
+ $ref = $opengl_ext{$name};
+ $arg_ref = $$ref[2];
+ print "$$ref[0] WINAPI wine_$name(";
+
+ $farg = shift @$arg_ref;
+ $num = 0;
+ if ($farg !~ /void/) {
+ print "$farg arg_0";
+ $num++;
+ foreach (@$arg_ref) {
+ print ", $_ arg_$num";
+ $num++;
+ }
+ }
+ print ") {\n";
+ if ($$ref[0] !~ /void/) {
+ print " $$ref[0] ret;\n"
+ }
+ print " ENTER_GL();\n";
+ print " ";
+ if ($$ref[0] !~ /void/) {
+ print " ret = ";
+ }
+ print "func_$name(";
+ if ($num > 0) {
+ print "arg_0";
+ for ($i = 1; $i < $num; $i++) {
+ print ", arg_$i";
+ }
+ }
+ print ");\n";
+ print " LEAVE_GL();\n";
+ if ($$ref[0] !~ /void/) {
+ print " return ret;\n"
+ }
+ print "}\n\n";
+}
diff --git a/dlls/opengl32/make_opengl_norm b/dlls/opengl32/make_opengl_norm
new file mode 100755
index 0000000..322e5c2
--- /dev/null
+++ b/dlls/opengl32/make_opengl_norm
@@ -0,0 +1,91 @@
+#!/usr/bin/perl -w
+
+print "
+/* Auto-generated file... Do not edit ! */
+
+#include \"config.h\"
+#include \"wine_gl.h\"
+
+
+";
+
+#
+# Now, the functions from the include file
+#
+open(INC, "/usr/X11R6/include/GL/gl.h") || die "Could not open GL/gl.h";
+while ($line = <INC>) {
+ if ($line =~ /GLAPI.*GLAPIENTRY/) {
+ # Start of a function declaration
+ ($ret, $name, $args) = ($line =~ /GLAPI (.*) GLAPIENTRY *(.*)\((.*)/);
+
+ # Remove all extensions except the multitexture one (see OpenGL ABI)
+ if (($name !~ /(MESA|PGI|ARB|EXT)/) ||
+ ($name =~ /MultiTexCoord/) ||
+ ($name =~ /ActiveTextureARB/)) {
+ print "$ret WINAPI wine_$name(";
+ @rargs = ();
+ @names = ();
+
+ # Now, get the parameters
+ while (1) {
+ @args = split /,|\)/, $args;
+
+ foreach (@args) {
+ if ($_ =~ /[a-z,A-Z]/) {
+ ($a) = ($_ =~ /^\s*(.*)\s*$/);
+ if ($a =~ /\*\*/) {
+ ($var) = ($a =~ /\*\*(\w*)/);
+ } elsif ($a =~ /\*/) {
+ ($var) = ($a =~ /\*(\w*)/);
+ } else {
+ ($var) = ($a =~ /\s(\w*)/);
+ }
+ @rargs = (@rargs, $a);
+ if ($var !~ /void/) {
+ @names = (@names, $var);
+ }
+ }
+ }
+
+ if ($args !~ /\)/) {
+ $args = <INC>;
+ } else {
+ last;
+ }
+ }
+
+ print shift @rargs;
+ foreach (@rargs) {
+ print ", $_";
+ }
+ print ") {\n";
+ if ($ret !~ /void/) {
+ print " $ret ret;\n";
+ }
+ print " ENTER_GL();\n";
+ if ($ret !~ /void/) {
+ print " ret = ";
+ } else {
+ print " ";
+ }
+ print "$name(";
+
+ $farg = shift @names;
+ if ($farg) {
+ print "$farg";
+
+ foreach (@names) {
+ print ", $_";
+ }
+ }
+ print ");\n";
+ print " LEAVE_GL();\n";
+ if ($ret !~ /void/) {
+ print " return ret;\n";
+ }
+ print "}\n\n";
+ }
+ }
+}
+
+close(INC);
diff --git a/dlls/opengl32/make_opengl_spec b/dlls/opengl32/make_opengl_spec
new file mode 100755
index 0000000..5858a99
--- /dev/null
+++ b/dlls/opengl32/make_opengl_spec
@@ -0,0 +1,86 @@
+#!/usr/bin/perl -w
+
+#
+# First, the basics and the wgl functions
+#
+print "
+name opengl32
+type win32
+
+@ stdcall wglCreateContext(long) wglCreateContext
+@ stdcall wglCreateLayerContext(long long) wglCreateLayerContext
+@ stdcall wglCopyContext(long long long) wglCopyContext
+@ stdcall wglDeleteContext(long) wglDeleteContext
+@ stdcall wglDescribeLayerPlane(long long long long ptr) wglDescribeLayerPlane
+@ stdcall wglGetCurrentContext() wglGetCurrentContext
+@ stdcall wglGetCurrentDC() wglGetCurrentDC
+@ stdcall wglGetLayerPaletteEntries(long long long long ptr) wglGetLayerPaletteEntries
+@ stdcall wglGetProcAddress(str) wglGetProcAddress
+@ stdcall wglMakeCurrent(long long) wglMakeCurrent
+@ stdcall wglRealizeLayerPalette(long long long) wglRealizeLayerPalette
+@ stdcall wglSetLayerPaletteEntries(long long long long ptr) wglSetLayerPaletteEntries
+@ stdcall wglShareLists(long long) wglShareLists
+@ stdcall wglSwapLayerBuffers(long long) wglSwapLayerBuffers
+@ stdcall wglUseFontBitmaps(long long long long) wglUseFontBitmaps
+@ stdcall wglUseFontOutlines(long long long long long long long) wglUseFontOutlines
+@ stub glGetLevelParameterfv
+@ stub glGetLevelParameteriv
+@ stub wglUseFontBitmapsA
+@ stub wglUseFontOutlinesA
+@ forward wglChoosePixelFormat GDI32.ChoosePixelFormat
+@ forward wglDescribePixelFormat GDI32.DescribePixelFormat
+@ forward wglGetPixelFormat GDI32.GetPixelFormat
+@ forward wglSetPixelFormat GDI32.SetPixelFormat
+@ forward wglSwapBuffers GDI32.SwapBuffers
+";
+
+#
+# Now, the functions from the include file
+#
+open(INC, "/usr/X11R6/include/GL/gl.h") || die "Could not open GL/gl.h";
+
+while ($line = <INC>) {
+ if ($line =~ /GLAPI.*GLAPIENTRY/) {
+ # Start of a function declaration
+ ($name, $args) = ($line =~ /GLAPIENTRY *(.*)\((.*)/);
+
+ # Remove all extensions except the multitexture one (see OpenGL ABI)
+ if (($name !~ /(MESA|PGI|ARB|EXT)/) ||
+ ($name =~ /MultiTexCoord/) ||
+ ($name =~ /ActiveTextureARB/)) {
+ print "@ stdcall $name(";
+
+ # Now, get the parameters
+ while (1) {
+ @args = split /,/, $args;
+
+ foreach (@args) {
+ if ($_ =~ /\)/) {
+ ($_) = ($_ =~ /(.*)\)/);
+ }
+
+ if ($_ =~ /\*/) {
+ print "ptr ";
+ } elsif ($_ =~ /[a-zA-Z]/) {
+ ($type) = ($_ =~ /^ *(.*) +.*/);
+ if ($type =~ /double/) {
+ print "double ";
+ } elsif ($type !~ /void/) {
+ print "long ";
+ }
+ }
+ }
+
+ if ($args !~ /\)/) {
+ $args = <INC>;
+ } else {
+ last;
+ }
+ }
+
+ print ") wine_$name\n";
+ }
+ }
+}
+
+close(INC);
diff --git a/dlls/opengl32/opengl32.spec b/dlls/opengl32/opengl32.spec
new file mode 100644
index 0000000..f28f7bc
--- /dev/null
+++ b/dlls/opengl32/opengl32.spec
@@ -0,0 +1,437 @@
+
+name opengl32
+type win32
+
+@ stdcall wglCreateContext(long) wglCreateContext
+@ stdcall wglCreateLayerContext(long long) wglCreateLayerContext
+@ stdcall wglCopyContext(long long long) wglCopyContext
+@ stdcall wglDeleteContext(long) wglDeleteContext
+@ stdcall wglDescribeLayerPlane(long long long long ptr) wglDescribeLayerPlane
+@ stdcall wglGetCurrentContext() wglGetCurrentContext
+@ stdcall wglGetCurrentDC() wglGetCurrentDC
+@ stdcall wglGetLayerPaletteEntries(long long long long ptr) wglGetLayerPaletteEntries
+@ stdcall wglGetProcAddress(str) wglGetProcAddress
+@ stdcall wglMakeCurrent(long long) wglMakeCurrent
+@ stdcall wglRealizeLayerPalette(long long long) wglRealizeLayerPalette
+@ stdcall wglSetLayerPaletteEntries(long long long long ptr) wglSetLayerPaletteEntries
+@ stdcall wglShareLists(long long) wglShareLists
+@ stdcall wglSwapLayerBuffers(long long) wglSwapLayerBuffers
+@ stdcall wglUseFontBitmaps(long long long long) wglUseFontBitmaps
+@ stdcall wglUseFontOutlines(long long long long long long long) wglUseFontOutlines
+@ stub glGetLevelParameterfv
+@ stub glGetLevelParameteriv
+@ stub wglUseFontBitmapsA
+@ stub wglUseFontOutlinesA
+@ forward wglChoosePixelFormat GDI32.ChoosePixelFormat
+@ forward wglDescribePixelFormat GDI32.DescribePixelFormat
+@ forward wglGetPixelFormat GDI32.GetPixelFormat
+@ forward wglSetPixelFormat GDI32.SetPixelFormat
+@ forward wglSwapBuffers GDI32.SwapBuffers
+@ stdcall glClearIndex(long ) wine_glClearIndex
+@ stdcall glClearColor(long long long long ) wine_glClearColor
+@ stdcall glClear(long ) wine_glClear
+@ stdcall glIndexMask(long ) wine_glIndexMask
+@ stdcall glColorMask(long long long long ) wine_glColorMask
+@ stdcall glAlphaFunc(long long ) wine_glAlphaFunc
+@ stdcall glBlendFunc(long long ) wine_glBlendFunc
+@ stdcall glLogicOp(long ) wine_glLogicOp
+@ stdcall glCullFace(long ) wine_glCullFace
+@ stdcall glFrontFace(long ) wine_glFrontFace
+@ stdcall glPointSize(long ) wine_glPointSize
+@ stdcall glLineWidth(long ) wine_glLineWidth
+@ stdcall glLineStipple(long long ) wine_glLineStipple
+@ stdcall glPolygonMode(long long ) wine_glPolygonMode
+@ stdcall glPolygonOffset(long long ) wine_glPolygonOffset
+@ stdcall glPolygonStipple(ptr ) wine_glPolygonStipple
+@ stdcall glGetPolygonStipple(ptr ) wine_glGetPolygonStipple
+@ stdcall glEdgeFlag(long ) wine_glEdgeFlag
+@ stdcall glEdgeFlagv(ptr ) wine_glEdgeFlagv
+@ stdcall glScissor(long long long long ) wine_glScissor
+@ stdcall glClipPlane(long ptr ) wine_glClipPlane
+@ stdcall glGetClipPlane(long ptr ) wine_glGetClipPlane
+@ stdcall glDrawBuffer(long ) wine_glDrawBuffer
+@ stdcall glReadBuffer(long ) wine_glReadBuffer
+@ stdcall glEnable(long ) wine_glEnable
+@ stdcall glDisable(long ) wine_glDisable
+@ stdcall glIsEnabled(long ) wine_glIsEnabled
+@ stdcall glEnableClientState(long ) wine_glEnableClientState
+@ stdcall glDisableClientState(long ) wine_glDisableClientState
+@ stdcall glGetBooleanv(long ptr ) wine_glGetBooleanv
+@ stdcall glGetDoublev(long ptr ) wine_glGetDoublev
+@ stdcall glGetFloatv(long ptr ) wine_glGetFloatv
+@ stdcall glGetIntegerv(long ptr ) wine_glGetIntegerv
+@ stdcall glPushAttrib(long ) wine_glPushAttrib
+@ stdcall glPopAttrib() wine_glPopAttrib
+@ stdcall glPushClientAttrib(long ) wine_glPushClientAttrib
+@ stdcall glPopClientAttrib() wine_glPopClientAttrib
+@ stdcall glRenderMode(long ) wine_glRenderMode
+@ stdcall glGetError() wine_glGetError
+@ stdcall glGetString(long ) wine_glGetString
+@ stdcall glFinish() wine_glFinish
+@ stdcall glFlush() wine_glFlush
+@ stdcall glHint(long long ) wine_glHint
+@ stdcall glClearDepth(long ) wine_glClearDepth
+@ stdcall glDepthFunc(long ) wine_glDepthFunc
+@ stdcall glDepthMask(long ) wine_glDepthMask
+@ stdcall glDepthRange(long long ) wine_glDepthRange
+@ stdcall glClearAccum(long long long long ) wine_glClearAccum
+@ stdcall glAccum(long long ) wine_glAccum
+@ stdcall glMatrixMode(long ) wine_glMatrixMode
+@ stdcall glOrtho(double double double double double double ) wine_glOrtho
+@ stdcall glFrustum(double double double double double double ) wine_glFrustum
+@ stdcall glViewport(long long long long ) wine_glViewport
+@ stdcall glPushMatrix() wine_glPushMatrix
+@ stdcall glPopMatrix() wine_glPopMatrix
+@ stdcall glLoadIdentity() wine_glLoadIdentity
+@ stdcall glLoadMatrixd(ptr ) wine_glLoadMatrixd
+@ stdcall glLoadMatrixf(ptr ) wine_glLoadMatrixf
+@ stdcall glMultMatrixd(ptr ) wine_glMultMatrixd
+@ stdcall glMultMatrixf(ptr ) wine_glMultMatrixf
+@ stdcall glRotated(double double double double ) wine_glRotated
+@ stdcall glRotatef(long long long long ) wine_glRotatef
+@ stdcall glScaled(double double double ) wine_glScaled
+@ stdcall glScalef(long long long ) wine_glScalef
+@ stdcall glTranslated(double double double ) wine_glTranslated
+@ stdcall glTranslatef(long long long ) wine_glTranslatef
+@ stdcall glIsList(long ) wine_glIsList
+@ stdcall glDeleteLists(long long ) wine_glDeleteLists
+@ stdcall glGenLists(long ) wine_glGenLists
+@ stdcall glNewList(long long ) wine_glNewList
+@ stdcall glEndList() wine_glEndList
+@ stdcall glCallList(long ) wine_glCallList
+@ stdcall glCallLists(long long ptr ) wine_glCallLists
+@ stdcall glListBase(long ) wine_glListBase
+@ stdcall glBegin(long ) wine_glBegin
+@ stdcall glEnd() wine_glEnd
+@ stdcall glVertex2d(double double ) wine_glVertex2d
+@ stdcall glVertex2f(long long ) wine_glVertex2f
+@ stdcall glVertex2i(long long ) wine_glVertex2i
+@ stdcall glVertex2s(long long ) wine_glVertex2s
+@ stdcall glVertex3d(double double double ) wine_glVertex3d
+@ stdcall glVertex3f(long long long ) wine_glVertex3f
+@ stdcall glVertex3i(long long long ) wine_glVertex3i
+@ stdcall glVertex3s(long long long ) wine_glVertex3s
+@ stdcall glVertex4d(double double double double ) wine_glVertex4d
+@ stdcall glVertex4f(long long long long ) wine_glVertex4f
+@ stdcall glVertex4i(long long long long ) wine_glVertex4i
+@ stdcall glVertex4s(long long long long ) wine_glVertex4s
+@ stdcall glVertex2dv(ptr ) wine_glVertex2dv
+@ stdcall glVertex2fv(ptr ) wine_glVertex2fv
+@ stdcall glVertex2iv(ptr ) wine_glVertex2iv
+@ stdcall glVertex2sv(ptr ) wine_glVertex2sv
+@ stdcall glVertex3dv(ptr ) wine_glVertex3dv
+@ stdcall glVertex3fv(ptr ) wine_glVertex3fv
+@ stdcall glVertex3iv(ptr ) wine_glVertex3iv
+@ stdcall glVertex3sv(ptr ) wine_glVertex3sv
+@ stdcall glVertex4dv(ptr ) wine_glVertex4dv
+@ stdcall glVertex4fv(ptr ) wine_glVertex4fv
+@ stdcall glVertex4iv(ptr ) wine_glVertex4iv
+@ stdcall glVertex4sv(ptr ) wine_glVertex4sv
+@ stdcall glNormal3b(long long long ) wine_glNormal3b
+@ stdcall glNormal3d(double double double ) wine_glNormal3d
+@ stdcall glNormal3f(long long long ) wine_glNormal3f
+@ stdcall glNormal3i(long long long ) wine_glNormal3i
+@ stdcall glNormal3s(long long long ) wine_glNormal3s
+@ stdcall glNormal3bv(ptr ) wine_glNormal3bv
+@ stdcall glNormal3dv(ptr ) wine_glNormal3dv
+@ stdcall glNormal3fv(ptr ) wine_glNormal3fv
+@ stdcall glNormal3iv(ptr ) wine_glNormal3iv
+@ stdcall glNormal3sv(ptr ) wine_glNormal3sv
+@ stdcall glIndexd(double ) wine_glIndexd
+@ stdcall glIndexf(long ) wine_glIndexf
+@ stdcall glIndexi(long ) wine_glIndexi
+@ stdcall glIndexs(long ) wine_glIndexs
+@ stdcall glIndexub(long ) wine_glIndexub
+@ stdcall glIndexdv(ptr ) wine_glIndexdv
+@ stdcall glIndexfv(ptr ) wine_glIndexfv
+@ stdcall glIndexiv(ptr ) wine_glIndexiv
+@ stdcall glIndexsv(ptr ) wine_glIndexsv
+@ stdcall glIndexubv(ptr ) wine_glIndexubv
+@ stdcall glColor3b(long long long ) wine_glColor3b
+@ stdcall glColor3d(double double double ) wine_glColor3d
+@ stdcall glColor3f(long long long ) wine_glColor3f
+@ stdcall glColor3i(long long long ) wine_glColor3i
+@ stdcall glColor3s(long long long ) wine_glColor3s
+@ stdcall glColor3ub(long long long ) wine_glColor3ub
+@ stdcall glColor3ui(long long long ) wine_glColor3ui
+@ stdcall glColor3us(long long long ) wine_glColor3us
+@ stdcall glColor4b(long long long long ) wine_glColor4b
+@ stdcall glColor4d(double double double double ) wine_glColor4d
+@ stdcall glColor4f(long long long long ) wine_glColor4f
+@ stdcall glColor4i(long long long long ) wine_glColor4i
+@ stdcall glColor4s(long long long long ) wine_glColor4s
+@ stdcall glColor4ub(long long long long ) wine_glColor4ub
+@ stdcall glColor4ui(long long long long ) wine_glColor4ui
+@ stdcall glColor4us(long long long long ) wine_glColor4us
+@ stdcall glColor3bv(ptr ) wine_glColor3bv
+@ stdcall glColor3dv(ptr ) wine_glColor3dv
+@ stdcall glColor3fv(ptr ) wine_glColor3fv
+@ stdcall glColor3iv(ptr ) wine_glColor3iv
+@ stdcall glColor3sv(ptr ) wine_glColor3sv
+@ stdcall glColor3ubv(ptr ) wine_glColor3ubv
+@ stdcall glColor3uiv(ptr ) wine_glColor3uiv
+@ stdcall glColor3usv(ptr ) wine_glColor3usv
+@ stdcall glColor4bv(ptr ) wine_glColor4bv
+@ stdcall glColor4dv(ptr ) wine_glColor4dv
+@ stdcall glColor4fv(ptr ) wine_glColor4fv
+@ stdcall glColor4iv(ptr ) wine_glColor4iv
+@ stdcall glColor4sv(ptr ) wine_glColor4sv
+@ stdcall glColor4ubv(ptr ) wine_glColor4ubv
+@ stdcall glColor4uiv(ptr ) wine_glColor4uiv
+@ stdcall glColor4usv(ptr ) wine_glColor4usv
+@ stdcall glTexCoord1d(double ) wine_glTexCoord1d
+@ stdcall glTexCoord1f(long ) wine_glTexCoord1f
+@ stdcall glTexCoord1i(long ) wine_glTexCoord1i
+@ stdcall glTexCoord1s(long ) wine_glTexCoord1s
+@ stdcall glTexCoord2d(double double ) wine_glTexCoord2d
+@ stdcall glTexCoord2f(long long ) wine_glTexCoord2f
+@ stdcall glTexCoord2i(long long ) wine_glTexCoord2i
+@ stdcall glTexCoord2s(long long ) wine_glTexCoord2s
+@ stdcall glTexCoord3d(double double double ) wine_glTexCoord3d
+@ stdcall glTexCoord3f(long long long ) wine_glTexCoord3f
+@ stdcall glTexCoord3i(long long long ) wine_glTexCoord3i
+@ stdcall glTexCoord3s(long long long ) wine_glTexCoord3s
+@ stdcall glTexCoord4d(double double double double ) wine_glTexCoord4d
+@ stdcall glTexCoord4f(long long long long ) wine_glTexCoord4f
+@ stdcall glTexCoord4i(long long long long ) wine_glTexCoord4i
+@ stdcall glTexCoord4s(long long long long ) wine_glTexCoord4s
+@ stdcall glTexCoord1dv(ptr ) wine_glTexCoord1dv
+@ stdcall glTexCoord1fv(ptr ) wine_glTexCoord1fv
+@ stdcall glTexCoord1iv(ptr ) wine_glTexCoord1iv
+@ stdcall glTexCoord1sv(ptr ) wine_glTexCoord1sv
+@ stdcall glTexCoord2dv(ptr ) wine_glTexCoord2dv
+@ stdcall glTexCoord2fv(ptr ) wine_glTexCoord2fv
+@ stdcall glTexCoord2iv(ptr ) wine_glTexCoord2iv
+@ stdcall glTexCoord2sv(ptr ) wine_glTexCoord2sv
+@ stdcall glTexCoord3dv(ptr ) wine_glTexCoord3dv
+@ stdcall glTexCoord3fv(ptr ) wine_glTexCoord3fv
+@ stdcall glTexCoord3iv(ptr ) wine_glTexCoord3iv
+@ stdcall glTexCoord3sv(ptr ) wine_glTexCoord3sv
+@ stdcall glTexCoord4dv(ptr ) wine_glTexCoord4dv
+@ stdcall glTexCoord4fv(ptr ) wine_glTexCoord4fv
+@ stdcall glTexCoord4iv(ptr ) wine_glTexCoord4iv
+@ stdcall glTexCoord4sv(ptr ) wine_glTexCoord4sv
+@ stdcall glRasterPos2d(double double ) wine_glRasterPos2d
+@ stdcall glRasterPos2f(long long ) wine_glRasterPos2f
+@ stdcall glRasterPos2i(long long ) wine_glRasterPos2i
+@ stdcall glRasterPos2s(long long ) wine_glRasterPos2s
+@ stdcall glRasterPos3d(double double double ) wine_glRasterPos3d
+@ stdcall glRasterPos3f(long long long ) wine_glRasterPos3f
+@ stdcall glRasterPos3i(long long long ) wine_glRasterPos3i
+@ stdcall glRasterPos3s(long long long ) wine_glRasterPos3s
+@ stdcall glRasterPos4d(double double double double ) wine_glRasterPos4d
+@ stdcall glRasterPos4f(long long long long ) wine_glRasterPos4f
+@ stdcall glRasterPos4i(long long long long ) wine_glRasterPos4i
+@ stdcall glRasterPos4s(long long long long ) wine_glRasterPos4s
+@ stdcall glRasterPos2dv(ptr ) wine_glRasterPos2dv
+@ stdcall glRasterPos2fv(ptr ) wine_glRasterPos2fv
+@ stdcall glRasterPos2iv(ptr ) wine_glRasterPos2iv
+@ stdcall glRasterPos2sv(ptr ) wine_glRasterPos2sv
+@ stdcall glRasterPos3dv(ptr ) wine_glRasterPos3dv
+@ stdcall glRasterPos3fv(ptr ) wine_glRasterPos3fv
+@ stdcall glRasterPos3iv(ptr ) wine_glRasterPos3iv
+@ stdcall glRasterPos3sv(ptr ) wine_glRasterPos3sv
+@ stdcall glRasterPos4dv(ptr ) wine_glRasterPos4dv
+@ stdcall glRasterPos4fv(ptr ) wine_glRasterPos4fv
+@ stdcall glRasterPos4iv(ptr ) wine_glRasterPos4iv
+@ stdcall glRasterPos4sv(ptr ) wine_glRasterPos4sv
+@ stdcall glRectd(double double double double ) wine_glRectd
+@ stdcall glRectf(long long long long ) wine_glRectf
+@ stdcall glRecti(long long long long ) wine_glRecti
+@ stdcall glRects(long long long long ) wine_glRects
+@ stdcall glRectdv(ptr ptr ) wine_glRectdv
+@ stdcall glRectfv(ptr ptr ) wine_glRectfv
+@ stdcall glRectiv(ptr ptr ) wine_glRectiv
+@ stdcall glRectsv(ptr ptr ) wine_glRectsv
+@ stdcall glVertexPointer(long long long ptr ) wine_glVertexPointer
+@ stdcall glNormalPointer(long long ptr ) wine_glNormalPointer
+@ stdcall glColorPointer(long long long ptr ) wine_glColorPointer
+@ stdcall glIndexPointer(long long ptr ) wine_glIndexPointer
+@ stdcall glTexCoordPointer(long long long ptr ) wine_glTexCoordPointer
+@ stdcall glEdgeFlagPointer(long ptr ) wine_glEdgeFlagPointer
+@ stdcall glGetPointerv(long ptr ) wine_glGetPointerv
+@ stdcall glArrayElement(long ) wine_glArrayElement
+@ stdcall glDrawArrays(long long long ) wine_glDrawArrays
+@ stdcall glDrawElements(long long long ptr ) wine_glDrawElements
+@ stdcall glInterleavedArrays(long long ptr ) wine_glInterleavedArrays
+@ stdcall glShadeModel(long ) wine_glShadeModel
+@ stdcall glLightf(long long long ) wine_glLightf
+@ stdcall glLighti(long long long ) wine_glLighti
+@ stdcall glLightfv(long long ptr ) wine_glLightfv
+@ stdcall glLightiv(long long ptr ) wine_glLightiv
+@ stdcall glGetLightfv(long long ptr ) wine_glGetLightfv
+@ stdcall glGetLightiv(long long ptr ) wine_glGetLightiv
+@ stdcall glLightModelf(long long ) wine_glLightModelf
+@ stdcall glLightModeli(long long ) wine_glLightModeli
+@ stdcall glLightModelfv(long ptr ) wine_glLightModelfv
+@ stdcall glLightModeliv(long ptr ) wine_glLightModeliv
+@ stdcall glMaterialf(long long long ) wine_glMaterialf
+@ stdcall glMateriali(long long long ) wine_glMateriali
+@ stdcall glMaterialfv(long long ptr ) wine_glMaterialfv
+@ stdcall glMaterialiv(long long ptr ) wine_glMaterialiv
+@ stdcall glGetMaterialfv(long long ptr ) wine_glGetMaterialfv
+@ stdcall glGetMaterialiv(long long ptr ) wine_glGetMaterialiv
+@ stdcall glColorMaterial(long long ) wine_glColorMaterial
+@ stdcall glPixelZoom(long long ) wine_glPixelZoom
+@ stdcall glPixelStoref(long long ) wine_glPixelStoref
+@ stdcall glPixelStorei(long long ) wine_glPixelStorei
+@ stdcall glPixelTransferf(long long ) wine_glPixelTransferf
+@ stdcall glPixelTransferi(long long ) wine_glPixelTransferi
+@ stdcall glPixelMapfv(long long ptr ) wine_glPixelMapfv
+@ stdcall glPixelMapuiv(long long ptr ) wine_glPixelMapuiv
+@ stdcall glPixelMapusv(long long ptr ) wine_glPixelMapusv
+@ stdcall glGetPixelMapfv(long ptr ) wine_glGetPixelMapfv
+@ stdcall glGetPixelMapuiv(long ptr ) wine_glGetPixelMapuiv
+@ stdcall glGetPixelMapusv(long ptr ) wine_glGetPixelMapusv
+@ stdcall glBitmap(long long long long long long ptr ) wine_glBitmap
+@ stdcall glReadPixels(long long long long long long ptr ) wine_glReadPixels
+@ stdcall glDrawPixels(long long long long ptr ) wine_glDrawPixels
+@ stdcall glCopyPixels(long long long long long ) wine_glCopyPixels
+@ stdcall glStencilFunc(long long long ) wine_glStencilFunc
+@ stdcall glStencilMask(long ) wine_glStencilMask
+@ stdcall glStencilOp(long long long ) wine_glStencilOp
+@ stdcall glClearStencil(long ) wine_glClearStencil
+@ stdcall glTexGend(long long double ) wine_glTexGend
+@ stdcall glTexGenf(long long long ) wine_glTexGenf
+@ stdcall glTexGeni(long long long ) wine_glTexGeni
+@ stdcall glTexGendv(long long ptr ) wine_glTexGendv
+@ stdcall glTexGenfv(long long ptr ) wine_glTexGenfv
+@ stdcall glTexGeniv(long long ptr ) wine_glTexGeniv
+@ stdcall glGetTexGendv(long long ptr ) wine_glGetTexGendv
+@ stdcall glGetTexGenfv(long long ptr ) wine_glGetTexGenfv
+@ stdcall glGetTexGeniv(long long ptr ) wine_glGetTexGeniv
+@ stdcall glTexEnvf(long long long ) wine_glTexEnvf
+@ stdcall glTexEnvi(long long long ) wine_glTexEnvi
+@ stdcall glTexEnvfv(long long ptr ) wine_glTexEnvfv
+@ stdcall glTexEnviv(long long ptr ) wine_glTexEnviv
+@ stdcall glGetTexEnvfv(long long ptr ) wine_glGetTexEnvfv
+@ stdcall glGetTexEnviv(long long ptr ) wine_glGetTexEnviv
+@ stdcall glTexParameterf(long long long ) wine_glTexParameterf
+@ stdcall glTexParameteri(long long long ) wine_glTexParameteri
+@ stdcall glTexParameterfv(long long ptr ) wine_glTexParameterfv
+@ stdcall glTexParameteriv(long long ptr ) wine_glTexParameteriv
+@ stdcall glGetTexParameterfv(long long ptr ) wine_glGetTexParameterfv
+@ stdcall glGetTexParameteriv(long long ptr ) wine_glGetTexParameteriv
+@ stdcall glGetTexLevelParameterfv(long long long ptr ) wine_glGetTexLevelParameterfv
+@ stdcall glGetTexLevelParameteriv(long long long ptr ) wine_glGetTexLevelParameteriv
+@ stdcall glTexImage1D(long long long long long long long ptr ) wine_glTexImage1D
+@ stdcall glTexImage2D(long long long long long long long long ptr ) wine_glTexImage2D
+@ stdcall glGetTexImage(long long long long ptr ) wine_glGetTexImage
+@ stdcall glGenTextures(long ptr ) wine_glGenTextures
+@ stdcall glDeleteTextures(long ptr ) wine_glDeleteTextures
+@ stdcall glBindTexture(long long ) wine_glBindTexture
+@ stdcall glPrioritizeTextures(long ptr ptr ) wine_glPrioritizeTextures
+@ stdcall glAreTexturesResident(long ptr ptr ) wine_glAreTexturesResident
+@ stdcall glIsTexture(long ) wine_glIsTexture
+@ stdcall glTexSubImage1D(long long long long long long ptr ) wine_glTexSubImage1D
+@ stdcall glTexSubImage2D(long long long long long long long long ptr ) wine_glTexSubImage2D
+@ stdcall glCopyTexImage1D(long long long long long long long ) wine_glCopyTexImage1D
+@ stdcall glCopyTexImage2D(long long long long long long long long ) wine_glCopyTexImage2D
+@ stdcall glCopyTexSubImage1D(long long long long long long ) wine_glCopyTexSubImage1D
+@ stdcall glCopyTexSubImage2D(long long long long long long long long ) wine_glCopyTexSubImage2D
+@ stdcall glMap1d(long double double long long ptr ) wine_glMap1d
+@ stdcall glMap1f(long long long long long ptr ) wine_glMap1f
+@ stdcall glMap2d(long double double long long double double long long ptr ) wine_glMap2d
+@ stdcall glMap2f(long long long long long long long long long ptr ) wine_glMap2f
+@ stdcall glGetMapdv(long long ptr ) wine_glGetMapdv
+@ stdcall glGetMapfv(long long ptr ) wine_glGetMapfv
+@ stdcall glGetMapiv(long long ptr ) wine_glGetMapiv
+@ stdcall glEvalCoord1d(double ) wine_glEvalCoord1d
+@ stdcall glEvalCoord1f(long ) wine_glEvalCoord1f
+@ stdcall glEvalCoord1dv(ptr ) wine_glEvalCoord1dv
+@ stdcall glEvalCoord1fv(ptr ) wine_glEvalCoord1fv
+@ stdcall glEvalCoord2d(double double ) wine_glEvalCoord2d
+@ stdcall glEvalCoord2f(long long ) wine_glEvalCoord2f
+@ stdcall glEvalCoord2dv(ptr ) wine_glEvalCoord2dv
+@ stdcall glEvalCoord2fv(ptr ) wine_glEvalCoord2fv
+@ stdcall glMapGrid1d(long double double ) wine_glMapGrid1d
+@ stdcall glMapGrid1f(long long long ) wine_glMapGrid1f
+@ stdcall glMapGrid2d(long double double long double double ) wine_glMapGrid2d
+@ stdcall glMapGrid2f(long long long long long long ) wine_glMapGrid2f
+@ stdcall glEvalPoint1(long ) wine_glEvalPoint1
+@ stdcall glEvalPoint2(long long ) wine_glEvalPoint2
+@ stdcall glEvalMesh1(long long long ) wine_glEvalMesh1
+@ stdcall glEvalMesh2(long long long long long ) wine_glEvalMesh2
+@ stdcall glFogf(long long ) wine_glFogf
+@ stdcall glFogi(long long ) wine_glFogi
+@ stdcall glFogfv(long ptr ) wine_glFogfv
+@ stdcall glFogiv(long ptr ) wine_glFogiv
+@ stdcall glFeedbackBuffer(long long ptr ) wine_glFeedbackBuffer
+@ stdcall glPassThrough(long ) wine_glPassThrough
+@ stdcall glSelectBuffer(long ptr ) wine_glSelectBuffer
+@ stdcall glInitNames() wine_glInitNames
+@ stdcall glLoadName(long ) wine_glLoadName
+@ stdcall glPushName(long ) wine_glPushName
+@ stdcall glPopName() wine_glPopName
+@ stdcall glDrawRangeElements(long long long long long ptr ) wine_glDrawRangeElements
+@ stdcall glTexImage3D(long long long long long long long long long ptr ) wine_glTexImage3D
+@ stdcall glTexSubImage3D(long long long long long long long long long long ptr ) wine_glTexSubImage3D
+@ stdcall glCopyTexSubImage3D(long long long long long long long long long ) wine_glCopyTexSubImage3D
+@ stdcall glColorTable(long long long long long ptr ) wine_glColorTable
+@ stdcall glColorSubTable(long long long long long ptr ) wine_glColorSubTable
+@ stdcall glColorTableParameteriv(long long ptr ) wine_glColorTableParameteriv
+@ stdcall glColorTableParameterfv(long long ptr ) wine_glColorTableParameterfv
+@ stdcall glCopyColorSubTable(long long long long long ) wine_glCopyColorSubTable
+@ stdcall glCopyColorTable(long long long long long ) wine_glCopyColorTable
+@ stdcall glGetColorTable(long long long ptr ) wine_glGetColorTable
+@ stdcall glGetColorTableParameterfv(long long ptr ) wine_glGetColorTableParameterfv
+@ stdcall glGetColorTableParameteriv(long long ptr ) wine_glGetColorTableParameteriv
+@ stdcall glBlendEquation(long ) wine_glBlendEquation
+@ stdcall glBlendColor(long long long long ) wine_glBlendColor
+@ stdcall glHistogram(long long long long ) wine_glHistogram
+@ stdcall glResetHistogram(long ) wine_glResetHistogram
+@ stdcall glGetHistogram(long long long long ptr ) wine_glGetHistogram
+@ stdcall glGetHistogramParameterfv(long long ptr ) wine_glGetHistogramParameterfv
+@ stdcall glGetHistogramParameteriv(long long ptr ) wine_glGetHistogramParameteriv
+@ stdcall glMinmax(long long long ) wine_glMinmax
+@ stdcall glResetMinmax(long ) wine_glResetMinmax
+@ stdcall glGetMinmax(long long long long ptr ) wine_glGetMinmax
+@ stdcall glGetMinmaxParameterfv(long long ptr ) wine_glGetMinmaxParameterfv
+@ stdcall glGetMinmaxParameteriv(long long ptr ) wine_glGetMinmaxParameteriv
+@ stdcall glConvolutionFilter1D(long long long long long ptr ) wine_glConvolutionFilter1D
+@ stdcall glConvolutionFilter2D(long long long long long long ptr ) wine_glConvolutionFilter2D
+@ stdcall glConvolutionParameterf(long long long ) wine_glConvolutionParameterf
+@ stdcall glConvolutionParameterfv(long long ptr ) wine_glConvolutionParameterfv
+@ stdcall glConvolutionParameteri(long long long ) wine_glConvolutionParameteri
+@ stdcall glConvolutionParameteriv(long long ptr ) wine_glConvolutionParameteriv
+@ stdcall glCopyConvolutionFilter1D(long long long long long ) wine_glCopyConvolutionFilter1D
+@ stdcall glCopyConvolutionFilter2D(long long long long long long ) wine_glCopyConvolutionFilter2D
+@ stdcall glGetConvolutionFilter(long long long ptr ) wine_glGetConvolutionFilter
+@ stdcall glGetConvolutionParameterfv(long long ptr ) wine_glGetConvolutionParameterfv
+@ stdcall glGetConvolutionParameteriv(long long ptr ) wine_glGetConvolutionParameteriv
+@ stdcall glSeparableFilter2D(long long long long long long ptr ptr ) wine_glSeparableFilter2D
+@ stdcall glGetSeparableFilter(long long long ptr ptr ptr ) wine_glGetSeparableFilter
+@ stdcall glActiveTextureARB(long ) wine_glActiveTextureARB
+@ stdcall glClientActiveTextureARB(long ) wine_glClientActiveTextureARB
+@ stdcall glMultiTexCoord1dARB(long double ) wine_glMultiTexCoord1dARB
+@ stdcall glMultiTexCoord1dvARB(long ptr ) wine_glMultiTexCoord1dvARB
+@ stdcall glMultiTexCoord1fARB(long long ) wine_glMultiTexCoord1fARB
+@ stdcall glMultiTexCoord1fvARB(long ptr ) wine_glMultiTexCoord1fvARB
+@ stdcall glMultiTexCoord1iARB(long long ) wine_glMultiTexCoord1iARB
+@ stdcall glMultiTexCoord1ivARB(long ptr ) wine_glMultiTexCoord1ivARB
+@ stdcall glMultiTexCoord1sARB(long long ) wine_glMultiTexCoord1sARB
+@ stdcall glMultiTexCoord1svARB(long ptr ) wine_glMultiTexCoord1svARB
+@ stdcall glMultiTexCoord2dARB(long double double ) wine_glMultiTexCoord2dARB
+@ stdcall glMultiTexCoord2dvARB(long ptr ) wine_glMultiTexCoord2dvARB
+@ stdcall glMultiTexCoord2fARB(long long long ) wine_glMultiTexCoord2fARB
+@ stdcall glMultiTexCoord2fvARB(long ptr ) wine_glMultiTexCoord2fvARB
+@ stdcall glMultiTexCoord2iARB(long long long ) wine_glMultiTexCoord2iARB
+@ stdcall glMultiTexCoord2ivARB(long ptr ) wine_glMultiTexCoord2ivARB
+@ stdcall glMultiTexCoord2sARB(long long long ) wine_glMultiTexCoord2sARB
+@ stdcall glMultiTexCoord2svARB(long ptr ) wine_glMultiTexCoord2svARB
+@ stdcall glMultiTexCoord3dARB(long double double double ) wine_glMultiTexCoord3dARB
+@ stdcall glMultiTexCoord3dvARB(long ptr ) wine_glMultiTexCoord3dvARB
+@ stdcall glMultiTexCoord3fARB(long long long long ) wine_glMultiTexCoord3fARB
+@ stdcall glMultiTexCoord3fvARB(long ptr ) wine_glMultiTexCoord3fvARB
+@ stdcall glMultiTexCoord3iARB(long long long long ) wine_glMultiTexCoord3iARB
+@ stdcall glMultiTexCoord3ivARB(long ptr ) wine_glMultiTexCoord3ivARB
+@ stdcall glMultiTexCoord3sARB(long long long long ) wine_glMultiTexCoord3sARB
+@ stdcall glMultiTexCoord3svARB(long ptr ) wine_glMultiTexCoord3svARB
+@ stdcall glMultiTexCoord4dARB(long double double double double ) wine_glMultiTexCoord4dARB
+@ stdcall glMultiTexCoord4dvARB(long ptr ) wine_glMultiTexCoord4dvARB
+@ stdcall glMultiTexCoord4fARB(long long long long long ) wine_glMultiTexCoord4fARB
+@ stdcall glMultiTexCoord4fvARB(long ptr ) wine_glMultiTexCoord4fvARB
+@ stdcall glMultiTexCoord4iARB(long long long long long ) wine_glMultiTexCoord4iARB
+@ stdcall glMultiTexCoord4ivARB(long ptr ) wine_glMultiTexCoord4ivARB
+@ stdcall glMultiTexCoord4sARB(long long long long long ) wine_glMultiTexCoord4sARB
+@ stdcall glMultiTexCoord4svARB(long ptr ) wine_glMultiTexCoord4svARB
diff --git a/dlls/opengl32/opengl_ext.c b/dlls/opengl32/opengl_ext.c
new file mode 100644
index 0000000..ac1ee7f
--- /dev/null
+++ b/dlls/opengl32/opengl_ext.c
@@ -0,0 +1,2924 @@
+
+/* Auto-generated file... Do not edit ! */
+
+#include "config.h"
+#include "wine_gl.h"
+
+#include "opengl_ext.h"
+
+/* These will be filled during a wglGetProcAddress call */
+void (*func_glApplyTextureEXT)(GLenum) = (void *) 0xdeadbeef;
+GLboolean (*func_glAreTexturesResidentEXT)(GLsizei, const GLuint *, GLboolean *) = (void *) 0xdeadbeef;
+void (*func_glArrayElementEXT)(GLint) = (void *) 0xdeadbeef;
+void (*func_glBindTextureEXT)(GLenum, GLuint) = (void *) 0xdeadbeef;
+void (*func_glBinormal3b)(GLbyte, GLbyte, GLbyte) = (void *) 0xdeadbeef;
+void (*func_glBinormal3bv)(const GLbyte *) = (void *) 0xdeadbeef;
+void (*func_glBinormal3d)(GLdouble, GLdouble, GLdouble) = (void *) 0xdeadbeef;
+void (*func_glBinormal3dv)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glBinormal3f)(GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glBinormal3fv)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glBinormal3i)(GLint, GLint, GLint) = (void *) 0xdeadbeef;
+void (*func_glBinormal3iv)(const GLint *) = (void *) 0xdeadbeef;
+void (*func_glBinormal3s)(GLshort, GLshort, GLshort) = (void *) 0xdeadbeef;
+void (*func_glBinormal3sv)(const GLshort *) = (void *) 0xdeadbeef;
+void (*func_glBinormalPointerEXT)(GLenum, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glBlendColorEXT)(GLclampf, GLclampf, GLclampf, GLclampf) = (void *) 0xdeadbeef;
+void (*func_glBlendEquationEXT)(GLenum) = (void *) 0xdeadbeef;
+void (*func_glBlendFuncSeparateEXT)(GLenum, GLenum, GLenum, GLenum) = (void *) 0xdeadbeef;
+void (*func_glColor3fVertex3fSUN)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glColor3fVertex3fvSUN)(const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glColor4fNormal3fVertex3fSUN)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glColor4fNormal3fVertex3fvSUN)(const GLfloat *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glColor4ubVertex2fSUN)(GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glColor4ubVertex2fvSUN)(const GLubyte *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glColor4ubVertex3fSUN)(GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glColor4ubVertex3fvSUN)(const GLubyte *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glColorPointerEXT)(GLint, GLenum, GLsizei, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glColorPointerListIBM)(GLint, GLenum, GLint, const GLvoid* *, GLint) = (void *) 0xdeadbeef;
+void (*func_glColorPointervINTEL)(GLint, GLenum, const GLvoid* *) = (void *) 0xdeadbeef;
+void (*func_glColorSubTableEXT)(GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glColorTableEXT)(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glColorTableParameterfvSGI)(GLenum, GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glColorTableParameterivSGI)(GLenum, GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glColorTableSGI)(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glCombinerInputNV)(GLenum, GLenum, GLenum, GLenum, GLenum, GLenum) = (void *) 0xdeadbeef;
+void (*func_glCombinerOutputNV)(GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLboolean, GLboolean, GLboolean) = (void *) 0xdeadbeef;
+void (*func_glCombinerParameterfNV)(GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glCombinerParameterfvNV)(GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glCombinerParameteriNV)(GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glCombinerParameterivNV)(GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glCompressedTexImage1DARB)(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glCompressedTexImage2DARB)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glCompressedTexImage3DARB)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glCompressedTexSubImage1DARB)(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glCompressedTexSubImage2DARB)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glCompressedTexSubImage3DARB)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glConvolutionFilter1DEXT)(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glConvolutionFilter2DEXT)(GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glConvolutionParameterfEXT)(GLenum, GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glConvolutionParameterfvEXT)(GLenum, GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glConvolutionParameteriEXT)(GLenum, GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glConvolutionParameterivEXT)(GLenum, GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glCopyColorSubTableEXT)(GLenum, GLsizei, GLint, GLint, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glCopyColorTableSGI)(GLenum, GLenum, GLint, GLint, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glCopyConvolutionFilter1DEXT)(GLenum, GLenum, GLint, GLint, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glCopyConvolutionFilter2DEXT)(GLenum, GLenum, GLint, GLint, GLsizei, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glCopyTexImage1DEXT)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint) = (void *) 0xdeadbeef;
+void (*func_glCopyTexImage2DEXT)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint) = (void *) 0xdeadbeef;
+void (*func_glCopyTexSubImage1DEXT)(GLenum, GLint, GLint, GLint, GLint, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glCopyTexSubImage2DEXT)(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glCopyTexSubImage3DEXT)(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glCullParameterdvEXT)(GLenum, GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glCullParameterfvEXT)(GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glDeleteTexturesEXT)(GLsizei, const GLuint *) = (void *) 0xdeadbeef;
+void (*func_glDetailTexFuncSGIS)(GLenum, GLsizei, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glDrawArraysEXT)(GLenum, GLint, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glDrawRangeElementsEXT)(GLenum, GLuint, GLuint, GLsizei, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glEdgeFlagPointerEXT)(GLsizei, GLsizei, const GLboolean *) = (void *) 0xdeadbeef;
+void (*func_glEdgeFlagPointerListIBM)(GLint, const GLboolean* *, GLint) = (void *) 0xdeadbeef;
+void (*func_glFinalCombinerInputNV)(GLenum, GLenum, GLenum, GLenum) = (void *) 0xdeadbeef;
+void (*func_glFinishTextureSUNX)(void) = (void *) 0xdeadbeef;
+void (*func_glFlushRasterSGIX)(void) = (void *) 0xdeadbeef;
+void (*func_glFlushVertexArrayRangeNV)(void) = (void *) 0xdeadbeef;
+void (*func_glFogCoordPointerEXT)(GLenum, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glFogCoordPointerListIBM)(GLenum, GLint, const GLvoid* *, GLint) = (void *) 0xdeadbeef;
+void (*func_glFogCoorddEXT)(GLdouble) = (void *) 0xdeadbeef;
+void (*func_glFogCoorddvEXT)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glFogCoordfEXT)(GLfloat) = (void *) 0xdeadbeef;
+void (*func_glFogCoordfvEXT)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glFogFuncSGIS)(GLsizei, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glFragmentColorMaterialSGIX)(GLenum, GLenum) = (void *) 0xdeadbeef;
+void (*func_glFragmentLightModelfSGIX)(GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glFragmentLightModelfvSGIX)(GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glFragmentLightModeliSGIX)(GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glFragmentLightModelivSGIX)(GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glFragmentLightfSGIX)(GLenum, GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glFragmentLightfvSGIX)(GLenum, GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glFragmentLightiSGIX)(GLenum, GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glFragmentLightivSGIX)(GLenum, GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glFragmentMaterialfSGIX)(GLenum, GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glFragmentMaterialfvSGIX)(GLenum, GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glFragmentMaterialiSGIX)(GLenum, GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glFragmentMaterialivSGIX)(GLenum, GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glFrameZoomSGIX)(GLint) = (void *) 0xdeadbeef;
+void (*func_glGenTexturesEXT)(GLsizei, GLuint *) = (void *) 0xdeadbeef;
+void (*func_glGetColorTableEXT)(GLenum, GLenum, GLenum, GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glGetColorTableParameterfvEXT)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetColorTableParameterfvSGI)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetColorTableParameterivEXT)(GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetColorTableParameterivSGI)(GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetColorTableSGI)(GLenum, GLenum, GLenum, GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glGetCombinerInputParameterfvNV)(GLenum, GLenum, GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetCombinerInputParameterivNV)(GLenum, GLenum, GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetCombinerOutputParameterfvNV)(GLenum, GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetCombinerOutputParameterivNV)(GLenum, GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetCompressedTexImageARB)(GLenum, GLint, void *) = (void *) 0xdeadbeef;
+void (*func_glGetConvolutionFilterEXT)(GLenum, GLenum, GLenum, GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glGetConvolutionParameterfvEXT)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetConvolutionParameterivEXT)(GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetDetailTexFuncSGIS)(GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetFinalCombinerInputParameterfvNV)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetFinalCombinerInputParameterivNV)(GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetFogFuncSGIS)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetFragmentLightfvSGIX)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetFragmentLightivSGIX)(GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetFragmentMaterialfvSGIX)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetFragmentMaterialivSGIX)(GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetHistogramEXT)(GLenum, GLboolean, GLenum, GLenum, GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glGetHistogramParameterfvEXT)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetHistogramParameterivEXT)(GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetImageTransformParameterfvHP)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetImageTransformParameterivHP)(GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+GLint (*func_glGetInstrumentsSGIX)(void) = (void *) 0xdeadbeef;
+void (*func_glGetListParameterfvSGIX)(GLuint, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetListParameterivSGIX)(GLuint, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetMinmaxEXT)(GLenum, GLboolean, GLenum, GLenum, GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glGetMinmaxParameterfvEXT)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetMinmaxParameterivEXT)(GLenum, GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetPixelTexGenParameterfvSGIS)(GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetPixelTexGenParameterivSGIS)(GLenum, GLint *) = (void *) 0xdeadbeef;
+void (*func_glGetPointervEXT)(GLenum, GLvoid* *) = (void *) 0xdeadbeef;
+void (*func_glGetSeparableFilterEXT)(GLenum, GLenum, GLenum, GLvoid *, GLvoid *, GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glGetSharpenTexFuncSGIS)(GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGetTexFilterFuncSGIS)(GLenum, GLenum, GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glGlobalAlphaFactorbSUN)(GLbyte) = (void *) 0xdeadbeef;
+void (*func_glGlobalAlphaFactordSUN)(GLdouble) = (void *) 0xdeadbeef;
+void (*func_glGlobalAlphaFactorfSUN)(GLfloat) = (void *) 0xdeadbeef;
+void (*func_glGlobalAlphaFactoriSUN)(GLint) = (void *) 0xdeadbeef;
+void (*func_glGlobalAlphaFactorsSUN)(GLshort) = (void *) 0xdeadbeef;
+void (*func_glGlobalAlphaFactorubSUN)(GLubyte) = (void *) 0xdeadbeef;
+void (*func_glGlobalAlphaFactoruiSUN)(GLuint) = (void *) 0xdeadbeef;
+void (*func_glGlobalAlphaFactorusSUN)(GLushort) = (void *) 0xdeadbeef;
+void (*func_glHintPGI)(GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glHistogramEXT)(GLenum, GLsizei, GLenum, GLboolean) = (void *) 0xdeadbeef;
+void (*func_glImageTransformParameterfHP)(GLenum, GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glImageTransformParameterfvHP)(GLenum, GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glImageTransformParameteriHP)(GLenum, GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glImageTransformParameterivHP)(GLenum, GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glIndexFuncEXT)(GLenum, GLclampf) = (void *) 0xdeadbeef;
+void (*func_glIndexMaterialEXT)(GLenum, GLenum) = (void *) 0xdeadbeef;
+void (*func_glIndexPointerEXT)(GLenum, GLsizei, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glIndexPointerListIBM)(GLenum, GLint, const GLvoid* *, GLint) = (void *) 0xdeadbeef;
+void (*func_glInstrumentsBufferSGIX)(GLsizei, GLint *) = (void *) 0xdeadbeef;
+GLboolean (*func_glIsTextureEXT)(GLuint) = (void *) 0xdeadbeef;
+void (*func_glLightEnviSGIX)(GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glListParameterfSGIX)(GLuint, GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glListParameterfvSGIX)(GLuint, GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glListParameteriSGIX)(GLuint, GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glListParameterivSGIX)(GLuint, GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glLoadTransposeMatrixdARB)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glLoadTransposeMatrixfARB)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glLockArraysEXT)(GLint, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glMinmaxEXT)(GLenum, GLenum, GLboolean) = (void *) 0xdeadbeef;
+void (*func_glMultTransposeMatrixdARB)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glMultTransposeMatrixfARB)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glMultiDrawArraysEXT)(GLenum, GLint *, GLsizei *, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glMultiDrawElementsEXT)(GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei) = (void *) 0xdeadbeef;
+void (*func_glMultiModeDrawArraysIBM)(GLenum, const GLint *, const GLsizei *, GLsizei, GLint) = (void *) 0xdeadbeef;
+void (*func_glMultiModeDrawElementsIBM)(const GLenum *, const GLsizei *, GLenum, const GLvoid* *, GLsizei, GLint) = (void *) 0xdeadbeef;
+void (*func_glNormal3fVertex3fSUN)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glNormal3fVertex3fvSUN)(const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glNormalPointerEXT)(GLenum, GLsizei, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glNormalPointerListIBM)(GLenum, GLint, const GLvoid* *, GLint) = (void *) 0xdeadbeef;
+void (*func_glNormalPointervINTEL)(GLenum, const GLvoid* *) = (void *) 0xdeadbeef;
+void (*func_glPixelTexGenParameterfSGIS)(GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glPixelTexGenParameterfvSGIS)(GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glPixelTexGenParameteriSGIS)(GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glPixelTexGenParameterivSGIS)(GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glPixelTexGenSGIX)(GLenum) = (void *) 0xdeadbeef;
+void (*func_glPixelTransformParameterfEXT)(GLenum, GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glPixelTransformParameterfvEXT)(GLenum, GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glPixelTransformParameteriEXT)(GLenum, GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glPixelTransformParameterivEXT)(GLenum, GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glPointParameterfEXT)(GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glPointParameterfSGIS)(GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glPointParameterfvEXT)(GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glPointParameterfvSGIS)(GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+GLint (*func_glPollInstrumentsSGIX)(GLint *) = (void *) 0xdeadbeef;
+void (*func_glPolygonOffsetEXT)(GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glPrioritizeTexturesEXT)(GLsizei, const GLuint *, const GLclampf *) = (void *) 0xdeadbeef;
+void (*func_glReadInstrumentsSGIX)(GLint) = (void *) 0xdeadbeef;
+void (*func_glReferencePlaneSGIX)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodePointer)(GLenum, GLsizei, const GLvoid* *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeubSUN)(GLubyte) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeubvSUN)(const GLubyte *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiColor3fVertex3fSUN)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiColor3fVertex3fvSUN)(const GLenum *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiColor4fNormal3fVertex3fSUN)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiColor4fNormal3fVertex3fvSUN)(const GLenum *, const GLfloat *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiColor4ubVertex3fSUN)(GLenum, GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiColor4ubVertex3fvSUN)(const GLenum *, const GLubyte *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiNormal3fVertex3fSUN)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiNormal3fVertex3fvSUN)(const GLenum *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiSUN)(GLuint) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN)(const GLenum *, const GLfloat *, const GLfloat *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN)(const GLenum *, const GLfloat *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiTexCoord2fVertex3fSUN)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiTexCoord2fVertex3fvSUN)(const GLenum *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiVertex3fSUN)(GLenum, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuiVertex3fvSUN)(const GLenum *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeuivSUN)(const GLuint *) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeusSUN)(GLushort) = (void *) 0xdeadbeef;
+void (*func_glReplacementCodeusvSUN)(const GLushort *) = (void *) 0xdeadbeef;
+void (*func_glResetHistogramEXT)(GLenum) = (void *) 0xdeadbeef;
+void (*func_glResetMinmaxEXT)(GLenum) = (void *) 0xdeadbeef;
+void (*func_glResizeBuffersMESA)(void) = (void *) 0xdeadbeef;
+void (*func_glSampleCoverageARB)(GLclampf, GLboolean) = (void *) 0xdeadbeef;
+void (*func_glSampleMaskEXT)(GLclampf, GLboolean) = (void *) 0xdeadbeef;
+void (*func_glSampleMaskSGIS)(GLclampf, GLboolean) = (void *) 0xdeadbeef;
+void (*func_glSamplePassARB)(GLenum) = (void *) 0xdeadbeef;
+void (*func_glSamplePatternEXT)(GLenum) = (void *) 0xdeadbeef;
+void (*func_glSamplePatternSGIS)(GLenum) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3bEXT)(GLbyte, GLbyte, GLbyte) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3bvEXT)(const GLbyte *) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3dEXT)(GLdouble, GLdouble, GLdouble) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3dvEXT)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3fEXT)(GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3fvEXT)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3iEXT)(GLint, GLint, GLint) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3ivEXT)(const GLint *) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3sEXT)(GLshort, GLshort, GLshort) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3svEXT)(const GLshort *) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3ubEXT)(GLubyte, GLubyte, GLubyte) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3ubvEXT)(const GLubyte *) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3uiEXT)(GLuint, GLuint, GLuint) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3uivEXT)(const GLuint *) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3usEXT)(GLushort, GLushort, GLushort) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColor3usvEXT)(const GLushort *) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColorPointerEXT)(GLint, GLenum, GLsizei, GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glSecondaryColorPointerListIBM)(GLint, GLenum, GLint, const GLvoid* *, GLint) = (void *) 0xdeadbeef;
+void (*func_glSeparableFilter2DEXT)(GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glSharpenTexFuncSGIS)(GLenum, GLsizei, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glSpriteParameterfSGIX)(GLenum, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glSpriteParameterfvSGIX)(GLenum, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glSpriteParameteriSGIX)(GLenum, GLint) = (void *) 0xdeadbeef;
+void (*func_glSpriteParameterivSGIX)(GLenum, const GLint *) = (void *) 0xdeadbeef;
+void (*func_glStartInstrumentsSGIX)(void) = (void *) 0xdeadbeef;
+void (*func_glStopInstrumentsSGIX)(GLint) = (void *) 0xdeadbeef;
+void (*func_glTagSampleBufferSGIX)(void) = (void *) 0xdeadbeef;
+void (*func_glTangent3b)(GLbyte, GLbyte, GLbyte) = (void *) 0xdeadbeef;
+void (*func_glTangent3bv)(const GLbyte *) = (void *) 0xdeadbeef;
+void (*func_glTangent3d)(GLdouble, GLdouble, GLdouble) = (void *) 0xdeadbeef;
+void (*func_glTangent3dv)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glTangent3f)(GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glTangent3fv)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glTangent3i)(GLint, GLint, GLint) = (void *) 0xdeadbeef;
+void (*func_glTangent3iv)(const GLint *) = (void *) 0xdeadbeef;
+void (*func_glTangent3s)(GLshort, GLshort, GLshort) = (void *) 0xdeadbeef;
+void (*func_glTangent3sv)(const GLshort *) = (void *) 0xdeadbeef;
+void (*func_glTangentPointerEXT)(GLenum, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glTbufferMask3DFX)(GLuint) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fColor3fVertex3fSUN)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fColor3fVertex3fvSUN)(const GLfloat *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fColor4fNormal3fVertex3fSUN)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fColor4fNormal3fVertex3fvSUN)(const GLfloat *, const GLfloat *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fColor4ubVertex3fSUN)(GLfloat, GLfloat, GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fColor4ubVertex3fvSUN)(const GLfloat *, const GLubyte *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fNormal3fVertex3fSUN)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fNormal3fVertex3fvSUN)(const GLfloat *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fVertex3fSUN)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glTexCoord2fVertex3fvSUN)(const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glTexCoord4fColor4fNormal3fVertex4fSUN)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glTexCoord4fColor4fNormal3fVertex4fvSUN)(const GLfloat *, const GLfloat *, const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glTexCoord4fVertex4fSUN)(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glTexCoord4fVertex4fvSUN)(const GLfloat *, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glTexCoordPointerEXT)(GLint, GLenum, GLsizei, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glTexCoordPointerListIBM)(GLint, GLenum, GLint, const GLvoid* *, GLint) = (void *) 0xdeadbeef;
+void (*func_glTexCoordPointervINTEL)(GLint, GLenum, const GLvoid* *) = (void *) 0xdeadbeef;
+void (*func_glTexFilterFuncSGIS)(GLenum, GLenum, GLsizei, const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glTexImage3DEXT)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glTexImage4DSGIS)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glTexSubImage1DEXT)(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glTexSubImage2DEXT)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glTexSubImage3DEXT)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glTexSubImage4DSGIS)(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glTextureLightEXT)(GLenum) = (void *) 0xdeadbeef;
+void (*func_glTextureMaterialEXT)(GLenum, GLenum) = (void *) 0xdeadbeef;
+void (*func_glTextureNormalEXT)(GLenum) = (void *) 0xdeadbeef;
+void (*func_glUnlockArraysEXT)(void) = (void *) 0xdeadbeef;
+void (*func_glVertexArrayRangeNV)(GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glVertexPointerEXT)(GLint, GLenum, GLsizei, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glVertexPointerListIBM)(GLint, GLenum, GLint, const GLvoid* *, GLint) = (void *) 0xdeadbeef;
+void (*func_glVertexPointervINTEL)(GLint, GLenum, const GLvoid* *) = (void *) 0xdeadbeef;
+void (*func_glVertexWeightPointerEXT)(GLsizei, GLenum, GLsizei, const GLvoid *) = (void *) 0xdeadbeef;
+void (*func_glVertexWeightfEXT)(GLfloat) = (void *) 0xdeadbeef;
+void (*func_glVertexWeightfvEXT)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos2dMESA)(GLdouble, GLdouble) = (void *) 0xdeadbeef;
+void (*func_glWindowPos2dvMESA)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos2fMESA)(GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glWindowPos2fvMESA)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos2iMESA)(GLint, GLint) = (void *) 0xdeadbeef;
+void (*func_glWindowPos2ivMESA)(const GLint *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos2sMESA)(GLshort, GLshort) = (void *) 0xdeadbeef;
+void (*func_glWindowPos2svMESA)(const GLshort *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos3dMESA)(GLdouble, GLdouble, GLdouble) = (void *) 0xdeadbeef;
+void (*func_glWindowPos3dvMESA)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos3fMESA)(GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glWindowPos3fvMESA)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos3iMESA)(GLint, GLint, GLint) = (void *) 0xdeadbeef;
+void (*func_glWindowPos3ivMESA)(const GLint *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos3sMESA)(GLshort, GLshort, GLshort) = (void *) 0xdeadbeef;
+void (*func_glWindowPos3svMESA)(const GLshort *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos4dMESA)(GLdouble, GLdouble, GLdouble, GLdouble) = (void *) 0xdeadbeef;
+void (*func_glWindowPos4dvMESA)(const GLdouble *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos4fMESA)(GLfloat, GLfloat, GLfloat, GLfloat) = (void *) 0xdeadbeef;
+void (*func_glWindowPos4fvMESA)(const GLfloat *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos4iMESA)(GLint, GLint, GLint, GLint) = (void *) 0xdeadbeef;
+void (*func_glWindowPos4ivMESA)(const GLint *) = (void *) 0xdeadbeef;
+void (*func_glWindowPos4sMESA)(GLshort, GLshort, GLshort, GLshort) = (void *) 0xdeadbeef;
+void (*func_glWindowPos4svMESA)(const GLshort *) = (void *) 0xdeadbeef;
+
+/* The function prototypes */
+void WINAPI wine_glApplyTextureEXT(GLenum) ;
+GLboolean WINAPI wine_glAreTexturesResidentEXT(GLsizei, const GLuint *, GLboolean *) ;
+void WINAPI wine_glArrayElementEXT(GLint) ;
+void WINAPI wine_glBindTextureEXT(GLenum, GLuint) ;
+void WINAPI wine_glBinormal3b(GLbyte, GLbyte, GLbyte) ;
+void WINAPI wine_glBinormal3bv(const GLbyte *) ;
+void WINAPI wine_glBinormal3d(GLdouble, GLdouble, GLdouble) ;
+void WINAPI wine_glBinormal3dv(const GLdouble *) ;
+void WINAPI wine_glBinormal3f(GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glBinormal3fv(const GLfloat *) ;
+void WINAPI wine_glBinormal3i(GLint, GLint, GLint) ;
+void WINAPI wine_glBinormal3iv(const GLint *) ;
+void WINAPI wine_glBinormal3s(GLshort, GLshort, GLshort) ;
+void WINAPI wine_glBinormal3sv(const GLshort *) ;
+void WINAPI wine_glBinormalPointerEXT(GLenum, GLsizei, const GLvoid *) ;
+void WINAPI wine_glBlendColorEXT(GLclampf, GLclampf, GLclampf, GLclampf) ;
+void WINAPI wine_glBlendEquationEXT(GLenum) ;
+void WINAPI wine_glBlendFuncSeparateEXT(GLenum, GLenum, GLenum, GLenum) ;
+void WINAPI wine_glColor3fVertex3fSUN(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glColor3fVertex3fvSUN(const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glColor4fNormal3fVertex3fSUN(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glColor4fNormal3fVertex3fvSUN(const GLfloat *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glColor4ubVertex2fSUN(GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat) ;
+void WINAPI wine_glColor4ubVertex2fvSUN(const GLubyte *, const GLfloat *) ;
+void WINAPI wine_glColor4ubVertex3fSUN(GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glColor4ubVertex3fvSUN(const GLubyte *, const GLfloat *) ;
+void WINAPI wine_glColorPointerEXT(GLint, GLenum, GLsizei, GLsizei, const GLvoid *) ;
+void WINAPI wine_glColorPointerListIBM(GLint, GLenum, GLint, const GLvoid* *, GLint) ;
+void WINAPI wine_glColorPointervINTEL(GLint, GLenum, const GLvoid* *) ;
+void WINAPI wine_glColorSubTableEXT(GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glColorTableEXT(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glColorTableParameterfvSGI(GLenum, GLenum, const GLfloat *) ;
+void WINAPI wine_glColorTableParameterivSGI(GLenum, GLenum, const GLint *) ;
+void WINAPI wine_glColorTableSGI(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glCombinerInputNV(GLenum, GLenum, GLenum, GLenum, GLenum, GLenum) ;
+void WINAPI wine_glCombinerOutputNV(GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLboolean, GLboolean, GLboolean) ;
+void WINAPI wine_glCombinerParameterfNV(GLenum, GLfloat) ;
+void WINAPI wine_glCombinerParameterfvNV(GLenum, const GLfloat *) ;
+void WINAPI wine_glCombinerParameteriNV(GLenum, GLint) ;
+void WINAPI wine_glCombinerParameterivNV(GLenum, const GLint *) ;
+void WINAPI wine_glCompressedTexImage1DARB(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *) ;
+void WINAPI wine_glCompressedTexImage2DARB(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *) ;
+void WINAPI wine_glCompressedTexImage3DARB(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *) ;
+void WINAPI wine_glCompressedTexSubImage1DARB(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid *) ;
+void WINAPI wine_glCompressedTexSubImage2DARB(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *) ;
+void WINAPI wine_glCompressedTexSubImage3DARB(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *) ;
+void WINAPI wine_glConvolutionFilter1DEXT(GLenum, GLenum, GLsizei, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glConvolutionFilter2DEXT(GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glConvolutionParameterfEXT(GLenum, GLenum, GLfloat) ;
+void WINAPI wine_glConvolutionParameterfvEXT(GLenum, GLenum, const GLfloat *) ;
+void WINAPI wine_glConvolutionParameteriEXT(GLenum, GLenum, GLint) ;
+void WINAPI wine_glConvolutionParameterivEXT(GLenum, GLenum, const GLint *) ;
+void WINAPI wine_glCopyColorSubTableEXT(GLenum, GLsizei, GLint, GLint, GLsizei) ;
+void WINAPI wine_glCopyColorTableSGI(GLenum, GLenum, GLint, GLint, GLsizei) ;
+void WINAPI wine_glCopyConvolutionFilter1DEXT(GLenum, GLenum, GLint, GLint, GLsizei) ;
+void WINAPI wine_glCopyConvolutionFilter2DEXT(GLenum, GLenum, GLint, GLint, GLsizei, GLsizei) ;
+void WINAPI wine_glCopyTexImage1DEXT(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint) ;
+void WINAPI wine_glCopyTexImage2DEXT(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint) ;
+void WINAPI wine_glCopyTexSubImage1DEXT(GLenum, GLint, GLint, GLint, GLint, GLsizei) ;
+void WINAPI wine_glCopyTexSubImage2DEXT(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ;
+void WINAPI wine_glCopyTexSubImage3DEXT(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ;
+void WINAPI wine_glCullParameterdvEXT(GLenum, GLdouble *) ;
+void WINAPI wine_glCullParameterfvEXT(GLenum, GLfloat *) ;
+void WINAPI wine_glDeleteTexturesEXT(GLsizei, const GLuint *) ;
+void WINAPI wine_glDetailTexFuncSGIS(GLenum, GLsizei, const GLfloat *) ;
+void WINAPI wine_glDrawArraysEXT(GLenum, GLint, GLsizei) ;
+void WINAPI wine_glDrawRangeElementsEXT(GLenum, GLuint, GLuint, GLsizei, GLenum, const GLvoid *) ;
+void WINAPI wine_glEdgeFlagPointerEXT(GLsizei, GLsizei, const GLboolean *) ;
+void WINAPI wine_glEdgeFlagPointerListIBM(GLint, const GLboolean* *, GLint) ;
+void WINAPI wine_glFinalCombinerInputNV(GLenum, GLenum, GLenum, GLenum) ;
+void WINAPI wine_glFinishTextureSUNX(void) ;
+void WINAPI wine_glFlushRasterSGIX(void) ;
+void WINAPI wine_glFlushVertexArrayRangeNV(void) ;
+void WINAPI wine_glFogCoordPointerEXT(GLenum, GLsizei, const GLvoid *) ;
+void WINAPI wine_glFogCoordPointerListIBM(GLenum, GLint, const GLvoid* *, GLint) ;
+void WINAPI wine_glFogCoorddEXT(GLdouble) ;
+void WINAPI wine_glFogCoorddvEXT(const GLdouble *) ;
+void WINAPI wine_glFogCoordfEXT(GLfloat) ;
+void WINAPI wine_glFogCoordfvEXT(const GLfloat *) ;
+void WINAPI wine_glFogFuncSGIS(GLsizei, const GLfloat *) ;
+void WINAPI wine_glFragmentColorMaterialSGIX(GLenum, GLenum) ;
+void WINAPI wine_glFragmentLightModelfSGIX(GLenum, GLfloat) ;
+void WINAPI wine_glFragmentLightModelfvSGIX(GLenum, const GLfloat *) ;
+void WINAPI wine_glFragmentLightModeliSGIX(GLenum, GLint) ;
+void WINAPI wine_glFragmentLightModelivSGIX(GLenum, const GLint *) ;
+void WINAPI wine_glFragmentLightfSGIX(GLenum, GLenum, GLfloat) ;
+void WINAPI wine_glFragmentLightfvSGIX(GLenum, GLenum, const GLfloat *) ;
+void WINAPI wine_glFragmentLightiSGIX(GLenum, GLenum, GLint) ;
+void WINAPI wine_glFragmentLightivSGIX(GLenum, GLenum, const GLint *) ;
+void WINAPI wine_glFragmentMaterialfSGIX(GLenum, GLenum, GLfloat) ;
+void WINAPI wine_glFragmentMaterialfvSGIX(GLenum, GLenum, const GLfloat *) ;
+void WINAPI wine_glFragmentMaterialiSGIX(GLenum, GLenum, GLint) ;
+void WINAPI wine_glFragmentMaterialivSGIX(GLenum, GLenum, const GLint *) ;
+void WINAPI wine_glFrameZoomSGIX(GLint) ;
+void WINAPI wine_glGenTexturesEXT(GLsizei, GLuint *) ;
+void WINAPI wine_glGetColorTableEXT(GLenum, GLenum, GLenum, GLvoid *) ;
+void WINAPI wine_glGetColorTableParameterfvEXT(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetColorTableParameterfvSGI(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetColorTableParameterivEXT(GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetColorTableParameterivSGI(GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetColorTableSGI(GLenum, GLenum, GLenum, GLvoid *) ;
+void WINAPI wine_glGetCombinerInputParameterfvNV(GLenum, GLenum, GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetCombinerInputParameterivNV(GLenum, GLenum, GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetCombinerOutputParameterfvNV(GLenum, GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetCombinerOutputParameterivNV(GLenum, GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetCompressedTexImageARB(GLenum, GLint, void *) ;
+void WINAPI wine_glGetConvolutionFilterEXT(GLenum, GLenum, GLenum, GLvoid *) ;
+void WINAPI wine_glGetConvolutionParameterfvEXT(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetConvolutionParameterivEXT(GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetDetailTexFuncSGIS(GLenum, GLfloat *) ;
+void WINAPI wine_glGetFinalCombinerInputParameterfvNV(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetFinalCombinerInputParameterivNV(GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetFogFuncSGIS(const GLfloat *) ;
+void WINAPI wine_glGetFragmentLightfvSGIX(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetFragmentLightivSGIX(GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetFragmentMaterialfvSGIX(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetFragmentMaterialivSGIX(GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetHistogramEXT(GLenum, GLboolean, GLenum, GLenum, GLvoid *) ;
+void WINAPI wine_glGetHistogramParameterfvEXT(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetHistogramParameterivEXT(GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetImageTransformParameterfvHP(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetImageTransformParameterivHP(GLenum, GLenum, GLint *) ;
+GLint WINAPI wine_glGetInstrumentsSGIX(void) ;
+void WINAPI wine_glGetListParameterfvSGIX(GLuint, GLenum, GLfloat *) ;
+void WINAPI wine_glGetListParameterivSGIX(GLuint, GLenum, GLint *) ;
+void WINAPI wine_glGetMinmaxEXT(GLenum, GLboolean, GLenum, GLenum, GLvoid *) ;
+void WINAPI wine_glGetMinmaxParameterfvEXT(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGetMinmaxParameterivEXT(GLenum, GLenum, GLint *) ;
+void WINAPI wine_glGetPixelTexGenParameterfvSGIS(GLenum, GLfloat *) ;
+void WINAPI wine_glGetPixelTexGenParameterivSGIS(GLenum, GLint *) ;
+void WINAPI wine_glGetPointervEXT(GLenum, GLvoid* *) ;
+void WINAPI wine_glGetSeparableFilterEXT(GLenum, GLenum, GLenum, GLvoid *, GLvoid *, GLvoid *) ;
+void WINAPI wine_glGetSharpenTexFuncSGIS(GLenum, GLfloat *) ;
+void WINAPI wine_glGetTexFilterFuncSGIS(GLenum, GLenum, GLfloat *) ;
+void WINAPI wine_glGlobalAlphaFactorbSUN(GLbyte) ;
+void WINAPI wine_glGlobalAlphaFactordSUN(GLdouble) ;
+void WINAPI wine_glGlobalAlphaFactorfSUN(GLfloat) ;
+void WINAPI wine_glGlobalAlphaFactoriSUN(GLint) ;
+void WINAPI wine_glGlobalAlphaFactorsSUN(GLshort) ;
+void WINAPI wine_glGlobalAlphaFactorubSUN(GLubyte) ;
+void WINAPI wine_glGlobalAlphaFactoruiSUN(GLuint) ;
+void WINAPI wine_glGlobalAlphaFactorusSUN(GLushort) ;
+void WINAPI wine_glHintPGI(GLenum, GLint) ;
+void WINAPI wine_glHistogramEXT(GLenum, GLsizei, GLenum, GLboolean) ;
+void WINAPI wine_glImageTransformParameterfHP(GLenum, GLenum, GLfloat) ;
+void WINAPI wine_glImageTransformParameterfvHP(GLenum, GLenum, const GLfloat *) ;
+void WINAPI wine_glImageTransformParameteriHP(GLenum, GLenum, GLint) ;
+void WINAPI wine_glImageTransformParameterivHP(GLenum, GLenum, const GLint *) ;
+void WINAPI wine_glIndexFuncEXT(GLenum, GLclampf) ;
+void WINAPI wine_glIndexMaterialEXT(GLenum, GLenum) ;
+void WINAPI wine_glIndexPointerEXT(GLenum, GLsizei, GLsizei, const GLvoid *) ;
+void WINAPI wine_glIndexPointerListIBM(GLenum, GLint, const GLvoid* *, GLint) ;
+void WINAPI wine_glInstrumentsBufferSGIX(GLsizei, GLint *) ;
+GLboolean WINAPI wine_glIsTextureEXT(GLuint) ;
+void WINAPI wine_glLightEnviSGIX(GLenum, GLint) ;
+void WINAPI wine_glListParameterfSGIX(GLuint, GLenum, GLfloat) ;
+void WINAPI wine_glListParameterfvSGIX(GLuint, GLenum, const GLfloat *) ;
+void WINAPI wine_glListParameteriSGIX(GLuint, GLenum, GLint) ;
+void WINAPI wine_glListParameterivSGIX(GLuint, GLenum, const GLint *) ;
+void WINAPI wine_glLoadTransposeMatrixdARB(const GLdouble *) ;
+void WINAPI wine_glLoadTransposeMatrixfARB(const GLfloat *) ;
+void WINAPI wine_glLockArraysEXT(GLint, GLsizei) ;
+void WINAPI wine_glMinmaxEXT(GLenum, GLenum, GLboolean) ;
+void WINAPI wine_glMultTransposeMatrixdARB(const GLdouble *) ;
+void WINAPI wine_glMultTransposeMatrixfARB(const GLfloat *) ;
+void WINAPI wine_glMultiDrawArraysEXT(GLenum, GLint *, GLsizei *, GLsizei) ;
+void WINAPI wine_glMultiDrawElementsEXT(GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei) ;
+void WINAPI wine_glMultiModeDrawArraysIBM(GLenum, const GLint *, const GLsizei *, GLsizei, GLint) ;
+void WINAPI wine_glMultiModeDrawElementsIBM(const GLenum *, const GLsizei *, GLenum, const GLvoid* *, GLsizei, GLint) ;
+void WINAPI wine_glNormal3fVertex3fSUN(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glNormal3fVertex3fvSUN(const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glNormalPointerEXT(GLenum, GLsizei, GLsizei, const GLvoid *) ;
+void WINAPI wine_glNormalPointerListIBM(GLenum, GLint, const GLvoid* *, GLint) ;
+void WINAPI wine_glNormalPointervINTEL(GLenum, const GLvoid* *) ;
+void WINAPI wine_glPixelTexGenParameterfSGIS(GLenum, GLfloat) ;
+void WINAPI wine_glPixelTexGenParameterfvSGIS(GLenum, const GLfloat *) ;
+void WINAPI wine_glPixelTexGenParameteriSGIS(GLenum, GLint) ;
+void WINAPI wine_glPixelTexGenParameterivSGIS(GLenum, const GLint *) ;
+void WINAPI wine_glPixelTexGenSGIX(GLenum) ;
+void WINAPI wine_glPixelTransformParameterfEXT(GLenum, GLenum, GLfloat) ;
+void WINAPI wine_glPixelTransformParameterfvEXT(GLenum, GLenum, const GLfloat *) ;
+void WINAPI wine_glPixelTransformParameteriEXT(GLenum, GLenum, GLint) ;
+void WINAPI wine_glPixelTransformParameterivEXT(GLenum, GLenum, const GLint *) ;
+void WINAPI wine_glPointParameterfEXT(GLenum, GLfloat) ;
+void WINAPI wine_glPointParameterfSGIS(GLenum, GLfloat) ;
+void WINAPI wine_glPointParameterfvEXT(GLenum, const GLfloat *) ;
+void WINAPI wine_glPointParameterfvSGIS(GLenum, const GLfloat *) ;
+GLint WINAPI wine_glPollInstrumentsSGIX(GLint *) ;
+void WINAPI wine_glPolygonOffsetEXT(GLfloat, GLfloat) ;
+void WINAPI wine_glPrioritizeTexturesEXT(GLsizei, const GLuint *, const GLclampf *) ;
+void WINAPI wine_glReadInstrumentsSGIX(GLint) ;
+void WINAPI wine_glReferencePlaneSGIX(const GLdouble *) ;
+void WINAPI wine_glReplacementCodePointer(GLenum, GLsizei, const GLvoid* *) ;
+void WINAPI wine_glReplacementCodeubSUN(GLubyte) ;
+void WINAPI wine_glReplacementCodeubvSUN(const GLubyte *) ;
+void WINAPI wine_glReplacementCodeuiColor3fVertex3fSUN(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glReplacementCodeuiColor3fVertex3fvSUN(const GLenum *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glReplacementCodeuiColor4fNormal3fVertex3fSUN(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glReplacementCodeuiColor4fNormal3fVertex3fvSUN(const GLenum *, const GLfloat *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glReplacementCodeuiColor4ubVertex3fSUN(GLenum, GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glReplacementCodeuiColor4ubVertex3fvSUN(const GLenum *, const GLubyte *, const GLfloat *) ;
+void WINAPI wine_glReplacementCodeuiNormal3fVertex3fSUN(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glReplacementCodeuiNormal3fVertex3fvSUN(const GLenum *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glReplacementCodeuiSUN(GLuint) ;
+void WINAPI wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(const GLenum *, const GLfloat *, const GLfloat *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(const GLenum *, const GLfloat *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glReplacementCodeuiTexCoord2fVertex3fSUN(GLenum, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glReplacementCodeuiTexCoord2fVertex3fvSUN(const GLenum *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glReplacementCodeuiVertex3fSUN(GLenum, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glReplacementCodeuiVertex3fvSUN(const GLenum *, const GLfloat *) ;
+void WINAPI wine_glReplacementCodeuivSUN(const GLuint *) ;
+void WINAPI wine_glReplacementCodeusSUN(GLushort) ;
+void WINAPI wine_glReplacementCodeusvSUN(const GLushort *) ;
+void WINAPI wine_glResetHistogramEXT(GLenum) ;
+void WINAPI wine_glResetMinmaxEXT(GLenum) ;
+void WINAPI wine_glResizeBuffersMESA(void) ;
+void WINAPI wine_glSampleCoverageARB(GLclampf, GLboolean) ;
+void WINAPI wine_glSampleMaskEXT(GLclampf, GLboolean) ;
+void WINAPI wine_glSampleMaskSGIS(GLclampf, GLboolean) ;
+void WINAPI wine_glSamplePassARB(GLenum) ;
+void WINAPI wine_glSamplePatternEXT(GLenum) ;
+void WINAPI wine_glSamplePatternSGIS(GLenum) ;
+void WINAPI wine_glSecondaryColor3bEXT(GLbyte, GLbyte, GLbyte) ;
+void WINAPI wine_glSecondaryColor3bvEXT(const GLbyte *) ;
+void WINAPI wine_glSecondaryColor3dEXT(GLdouble, GLdouble, GLdouble) ;
+void WINAPI wine_glSecondaryColor3dvEXT(const GLdouble *) ;
+void WINAPI wine_glSecondaryColor3fEXT(GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glSecondaryColor3fvEXT(const GLfloat *) ;
+void WINAPI wine_glSecondaryColor3iEXT(GLint, GLint, GLint) ;
+void WINAPI wine_glSecondaryColor3ivEXT(const GLint *) ;
+void WINAPI wine_glSecondaryColor3sEXT(GLshort, GLshort, GLshort) ;
+void WINAPI wine_glSecondaryColor3svEXT(const GLshort *) ;
+void WINAPI wine_glSecondaryColor3ubEXT(GLubyte, GLubyte, GLubyte) ;
+void WINAPI wine_glSecondaryColor3ubvEXT(const GLubyte *) ;
+void WINAPI wine_glSecondaryColor3uiEXT(GLuint, GLuint, GLuint) ;
+void WINAPI wine_glSecondaryColor3uivEXT(const GLuint *) ;
+void WINAPI wine_glSecondaryColor3usEXT(GLushort, GLushort, GLushort) ;
+void WINAPI wine_glSecondaryColor3usvEXT(const GLushort *) ;
+void WINAPI wine_glSecondaryColorPointerEXT(GLint, GLenum, GLsizei, GLvoid *) ;
+void WINAPI wine_glSecondaryColorPointerListIBM(GLint, GLenum, GLint, const GLvoid* *, GLint) ;
+void WINAPI wine_glSeparableFilter2DEXT(GLenum, GLenum, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *, const GLvoid *) ;
+void WINAPI wine_glSharpenTexFuncSGIS(GLenum, GLsizei, const GLfloat *) ;
+void WINAPI wine_glSpriteParameterfSGIX(GLenum, GLfloat) ;
+void WINAPI wine_glSpriteParameterfvSGIX(GLenum, const GLfloat *) ;
+void WINAPI wine_glSpriteParameteriSGIX(GLenum, GLint) ;
+void WINAPI wine_glSpriteParameterivSGIX(GLenum, const GLint *) ;
+void WINAPI wine_glStartInstrumentsSGIX(void) ;
+void WINAPI wine_glStopInstrumentsSGIX(GLint) ;
+void WINAPI wine_glTagSampleBufferSGIX(void) ;
+void WINAPI wine_glTangent3b(GLbyte, GLbyte, GLbyte) ;
+void WINAPI wine_glTangent3bv(const GLbyte *) ;
+void WINAPI wine_glTangent3d(GLdouble, GLdouble, GLdouble) ;
+void WINAPI wine_glTangent3dv(const GLdouble *) ;
+void WINAPI wine_glTangent3f(GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glTangent3fv(const GLfloat *) ;
+void WINAPI wine_glTangent3i(GLint, GLint, GLint) ;
+void WINAPI wine_glTangent3iv(const GLint *) ;
+void WINAPI wine_glTangent3s(GLshort, GLshort, GLshort) ;
+void WINAPI wine_glTangent3sv(const GLshort *) ;
+void WINAPI wine_glTangentPointerEXT(GLenum, GLsizei, const GLvoid *) ;
+void WINAPI wine_glTbufferMask3DFX(GLuint) ;
+void WINAPI wine_glTexCoord2fColor3fVertex3fSUN(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glTexCoord2fColor3fVertex3fvSUN(const GLfloat *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glTexCoord2fColor4fNormal3fVertex3fSUN(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glTexCoord2fColor4fNormal3fVertex3fvSUN(const GLfloat *, const GLfloat *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glTexCoord2fColor4ubVertex3fSUN(GLfloat, GLfloat, GLubyte, GLubyte, GLubyte, GLubyte, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glTexCoord2fColor4ubVertex3fvSUN(const GLfloat *, const GLubyte *, const GLfloat *) ;
+void WINAPI wine_glTexCoord2fNormal3fVertex3fSUN(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glTexCoord2fNormal3fVertex3fvSUN(const GLfloat *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glTexCoord2fVertex3fSUN(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glTexCoord2fVertex3fvSUN(const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glTexCoord4fColor4fNormal3fVertex4fSUN(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glTexCoord4fColor4fNormal3fVertex4fvSUN(const GLfloat *, const GLfloat *, const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glTexCoord4fVertex4fSUN(GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glTexCoord4fVertex4fvSUN(const GLfloat *, const GLfloat *) ;
+void WINAPI wine_glTexCoordPointerEXT(GLint, GLenum, GLsizei, GLsizei, const GLvoid *) ;
+void WINAPI wine_glTexCoordPointerListIBM(GLint, GLenum, GLint, const GLvoid* *, GLint) ;
+void WINAPI wine_glTexCoordPointervINTEL(GLint, GLenum, const GLvoid* *) ;
+void WINAPI wine_glTexFilterFuncSGIS(GLenum, GLenum, GLsizei, const GLfloat *) ;
+void WINAPI wine_glTexImage3DEXT(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glTexImage4DSGIS(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glTexSubImage1DEXT(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glTexSubImage2DEXT(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glTexSubImage3DEXT(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glTexSubImage4DSGIS(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *) ;
+void WINAPI wine_glTextureLightEXT(GLenum) ;
+void WINAPI wine_glTextureMaterialEXT(GLenum, GLenum) ;
+void WINAPI wine_glTextureNormalEXT(GLenum) ;
+void WINAPI wine_glUnlockArraysEXT(void) ;
+void WINAPI wine_glVertexArrayRangeNV(GLsizei, const GLvoid *) ;
+void WINAPI wine_glVertexPointerEXT(GLint, GLenum, GLsizei, GLsizei, const GLvoid *) ;
+void WINAPI wine_glVertexPointerListIBM(GLint, GLenum, GLint, const GLvoid* *, GLint) ;
+void WINAPI wine_glVertexPointervINTEL(GLint, GLenum, const GLvoid* *) ;
+void WINAPI wine_glVertexWeightPointerEXT(GLsizei, GLenum, GLsizei, const GLvoid *) ;
+void WINAPI wine_glVertexWeightfEXT(GLfloat) ;
+void WINAPI wine_glVertexWeightfvEXT(const GLfloat *) ;
+void WINAPI wine_glWindowPos2dMESA(GLdouble, GLdouble) ;
+void WINAPI wine_glWindowPos2dvMESA(const GLdouble *) ;
+void WINAPI wine_glWindowPos2fMESA(GLfloat, GLfloat) ;
+void WINAPI wine_glWindowPos2fvMESA(const GLfloat *) ;
+void WINAPI wine_glWindowPos2iMESA(GLint, GLint) ;
+void WINAPI wine_glWindowPos2ivMESA(const GLint *) ;
+void WINAPI wine_glWindowPos2sMESA(GLshort, GLshort) ;
+void WINAPI wine_glWindowPos2svMESA(const GLshort *) ;
+void WINAPI wine_glWindowPos3dMESA(GLdouble, GLdouble, GLdouble) ;
+void WINAPI wine_glWindowPos3dvMESA(const GLdouble *) ;
+void WINAPI wine_glWindowPos3fMESA(GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glWindowPos3fvMESA(const GLfloat *) ;
+void WINAPI wine_glWindowPos3iMESA(GLint, GLint, GLint) ;
+void WINAPI wine_glWindowPos3ivMESA(const GLint *) ;
+void WINAPI wine_glWindowPos3sMESA(GLshort, GLshort, GLshort) ;
+void WINAPI wine_glWindowPos3svMESA(const GLshort *) ;
+void WINAPI wine_glWindowPos4dMESA(GLdouble, GLdouble, GLdouble, GLdouble) ;
+void WINAPI wine_glWindowPos4dvMESA(const GLdouble *) ;
+void WINAPI wine_glWindowPos4fMESA(GLfloat, GLfloat, GLfloat, GLfloat) ;
+void WINAPI wine_glWindowPos4fvMESA(const GLfloat *) ;
+void WINAPI wine_glWindowPos4iMESA(GLint, GLint, GLint, GLint) ;
+void WINAPI wine_glWindowPos4ivMESA(const GLint *) ;
+void WINAPI wine_glWindowPos4sMESA(GLshort, GLshort, GLshort, GLshort) ;
+void WINAPI wine_glWindowPos4svMESA(const GLshort *) ;
+
+/* The table giving the correspondance between names and functions */
+int extension_registry_size = 322;
+OpenGL_extension extension_registry[] = {
+ { "glApplyTextureEXT", (void *) wine_glApplyTextureEXT, (void **) (&func_glApplyTextureEXT) },
+ { "glAreTexturesResidentEXT", (void *) wine_glAreTexturesResidentEXT, (void **) (&func_glAreTexturesResidentEXT) },
+ { "glArrayElementEXT", (void *) wine_glArrayElementEXT, (void **) (&func_glArrayElementEXT) },
+ { "glBindTextureEXT", (void *) wine_glBindTextureEXT, (void **) (&func_glBindTextureEXT) },
+ { "glBinormal3b", (void *) wine_glBinormal3b, (void **) (&func_glBinormal3b) },
+ { "glBinormal3bv", (void *) wine_glBinormal3bv, (void **) (&func_glBinormal3bv) },
+ { "glBinormal3d", (void *) wine_glBinormal3d, (void **) (&func_glBinormal3d) },
+ { "glBinormal3dv", (void *) wine_glBinormal3dv, (void **) (&func_glBinormal3dv) },
+ { "glBinormal3f", (void *) wine_glBinormal3f, (void **) (&func_glBinormal3f) },
+ { "glBinormal3fv", (void *) wine_glBinormal3fv, (void **) (&func_glBinormal3fv) },
+ { "glBinormal3i", (void *) wine_glBinormal3i, (void **) (&func_glBinormal3i) },
+ { "glBinormal3iv", (void *) wine_glBinormal3iv, (void **) (&func_glBinormal3iv) },
+ { "glBinormal3s", (void *) wine_glBinormal3s, (void **) (&func_glBinormal3s) },
+ { "glBinormal3sv", (void *) wine_glBinormal3sv, (void **) (&func_glBinormal3sv) },
+ { "glBinormalPointerEXT", (void *) wine_glBinormalPointerEXT, (void **) (&func_glBinormalPointerEXT) },
+ { "glBlendColorEXT", (void *) wine_glBlendColorEXT, (void **) (&func_glBlendColorEXT) },
+ { "glBlendEquationEXT", (void *) wine_glBlendEquationEXT, (void **) (&func_glBlendEquationEXT) },
+ { "glBlendFuncSeparateEXT", (void *) wine_glBlendFuncSeparateEXT, (void **) (&func_glBlendFuncSeparateEXT) },
+ { "glColor3fVertex3fSUN", (void *) wine_glColor3fVertex3fSUN, (void **) (&func_glColor3fVertex3fSUN) },
+ { "glColor3fVertex3fvSUN", (void *) wine_glColor3fVertex3fvSUN, (void **) (&func_glColor3fVertex3fvSUN) },
+ { "glColor4fNormal3fVertex3fSUN", (void *) wine_glColor4fNormal3fVertex3fSUN, (void **) (&func_glColor4fNormal3fVertex3fSUN) },
+ { "glColor4fNormal3fVertex3fvSUN", (void *) wine_glColor4fNormal3fVertex3fvSUN, (void **) (&func_glColor4fNormal3fVertex3fvSUN) },
+ { "glColor4ubVertex2fSUN", (void *) wine_glColor4ubVertex2fSUN, (void **) (&func_glColor4ubVertex2fSUN) },
+ { "glColor4ubVertex2fvSUN", (void *) wine_glColor4ubVertex2fvSUN, (void **) (&func_glColor4ubVertex2fvSUN) },
+ { "glColor4ubVertex3fSUN", (void *) wine_glColor4ubVertex3fSUN, (void **) (&func_glColor4ubVertex3fSUN) },
+ { "glColor4ubVertex3fvSUN", (void *) wine_glColor4ubVertex3fvSUN, (void **) (&func_glColor4ubVertex3fvSUN) },
+ { "glColorPointerEXT", (void *) wine_glColorPointerEXT, (void **) (&func_glColorPointerEXT) },
+ { "glColorPointerListIBM", (void *) wine_glColorPointerListIBM, (void **) (&func_glColorPointerListIBM) },
+ { "glColorPointervINTEL", (void *) wine_glColorPointervINTEL, (void **) (&func_glColorPointervINTEL) },
+ { "glColorSubTableEXT", (void *) wine_glColorSubTableEXT, (void **) (&func_glColorSubTableEXT) },
+ { "glColorTableEXT", (void *) wine_glColorTableEXT, (void **) (&func_glColorTableEXT) },
+ { "glColorTableParameterfvSGI", (void *) wine_glColorTableParameterfvSGI, (void **) (&func_glColorTableParameterfvSGI) },
+ { "glColorTableParameterivSGI", (void *) wine_glColorTableParameterivSGI, (void **) (&func_glColorTableParameterivSGI) },
+ { "glColorTableSGI", (void *) wine_glColorTableSGI, (void **) (&func_glColorTableSGI) },
+ { "glCombinerInputNV", (void *) wine_glCombinerInputNV, (void **) (&func_glCombinerInputNV) },
+ { "glCombinerOutputNV", (void *) wine_glCombinerOutputNV, (void **) (&func_glCombinerOutputNV) },
+ { "glCombinerParameterfNV", (void *) wine_glCombinerParameterfNV, (void **) (&func_glCombinerParameterfNV) },
+ { "glCombinerParameterfvNV", (void *) wine_glCombinerParameterfvNV, (void **) (&func_glCombinerParameterfvNV) },
+ { "glCombinerParameteriNV", (void *) wine_glCombinerParameteriNV, (void **) (&func_glCombinerParameteriNV) },
+ { "glCombinerParameterivNV", (void *) wine_glCombinerParameterivNV, (void **) (&func_glCombinerParameterivNV) },
+ { "glCompressedTexImage1DARB", (void *) wine_glCompressedTexImage1DARB, (void **) (&func_glCompressedTexImage1DARB) },
+ { "glCompressedTexImage2DARB", (void *) wine_glCompressedTexImage2DARB, (void **) (&func_glCompressedTexImage2DARB) },
+ { "glCompressedTexImage3DARB", (void *) wine_glCompressedTexImage3DARB, (void **) (&func_glCompressedTexImage3DARB) },
+ { "glCompressedTexSubImage1DARB", (void *) wine_glCompressedTexSubImage1DARB, (void **) (&func_glCompressedTexSubImage1DARB) },
+ { "glCompressedTexSubImage2DARB", (void *) wine_glCompressedTexSubImage2DARB, (void **) (&func_glCompressedTexSubImage2DARB) },
+ { "glCompressedTexSubImage3DARB", (void *) wine_glCompressedTexSubImage3DARB, (void **) (&func_glCompressedTexSubImage3DARB) },
+ { "glConvolutionFilter1DEXT", (void *) wine_glConvolutionFilter1DEXT, (void **) (&func_glConvolutionFilter1DEXT) },
+ { "glConvolutionFilter2DEXT", (void *) wine_glConvolutionFilter2DEXT, (void **) (&func_glConvolutionFilter2DEXT) },
+ { "glConvolutionParameterfEXT", (void *) wine_glConvolutionParameterfEXT, (void **) (&func_glConvolutionParameterfEXT) },
+ { "glConvolutionParameterfvEXT", (void *) wine_glConvolutionParameterfvEXT, (void **) (&func_glConvolutionParameterfvEXT) },
+ { "glConvolutionParameteriEXT", (void *) wine_glConvolutionParameteriEXT, (void **) (&func_glConvolutionParameteriEXT) },
+ { "glConvolutionParameterivEXT", (void *) wine_glConvolutionParameterivEXT, (void **) (&func_glConvolutionParameterivEXT) },
+ { "glCopyColorSubTableEXT", (void *) wine_glCopyColorSubTableEXT, (void **) (&func_glCopyColorSubTableEXT) },
+ { "glCopyColorTableSGI", (void *) wine_glCopyColorTableSGI, (void **) (&func_glCopyColorTableSGI) },
+ { "glCopyConvolutionFilter1DEXT", (void *) wine_glCopyConvolutionFilter1DEXT, (void **) (&func_glCopyConvolutionFilter1DEXT) },
+ { "glCopyConvolutionFilter2DEXT", (void *) wine_glCopyConvolutionFilter2DEXT, (void **) (&func_glCopyConvolutionFilter2DEXT) },
+ { "glCopyTexImage1DEXT", (void *) wine_glCopyTexImage1DEXT, (void **) (&func_glCopyTexImage1DEXT) },
+ { "glCopyTexImage2DEXT", (void *) wine_glCopyTexImage2DEXT, (void **) (&func_glCopyTexImage2DEXT) },
+ { "glCopyTexSubImage1DEXT", (void *) wine_glCopyTexSubImage1DEXT, (void **) (&func_glCopyTexSubImage1DEXT) },
+ { "glCopyTexSubImage2DEXT", (void *) wine_glCopyTexSubImage2DEXT, (void **) (&func_glCopyTexSubImage2DEXT) },
+ { "glCopyTexSubImage3DEXT", (void *) wine_glCopyTexSubImage3DEXT, (void **) (&func_glCopyTexSubImage3DEXT) },
+ { "glCullParameterdvEXT", (void *) wine_glCullParameterdvEXT, (void **) (&func_glCullParameterdvEXT) },
+ { "glCullParameterfvEXT", (void *) wine_glCullParameterfvEXT, (void **) (&func_glCullParameterfvEXT) },
+ { "glDeleteTexturesEXT", (void *) wine_glDeleteTexturesEXT, (void **) (&func_glDeleteTexturesEXT) },
+ { "glDetailTexFuncSGIS", (void *) wine_glDetailTexFuncSGIS, (void **) (&func_glDetailTexFuncSGIS) },
+ { "glDrawArraysEXT", (void *) wine_glDrawArraysEXT, (void **) (&func_glDrawArraysEXT) },
+ { "glDrawRangeElementsEXT", (void *) wine_glDrawRangeElementsEXT, (void **) (&func_glDrawRangeElementsEXT) },
+ { "glEdgeFlagPointerEXT", (void *) wine_glEdgeFlagPointerEXT, (void **) (&func_glEdgeFlagPointerEXT) },
+ { "glEdgeFlagPointerListIBM", (void *) wine_glEdgeFlagPointerListIBM, (void **) (&func_glEdgeFlagPointerListIBM) },
+ { "glFinalCombinerInputNV", (void *) wine_glFinalCombinerInputNV, (void **) (&func_glFinalCombinerInputNV) },
+ { "glFinishTextureSUNX", (void *) wine_glFinishTextureSUNX, (void **) (&func_glFinishTextureSUNX) },
+ { "glFlushRasterSGIX", (void *) wine_glFlushRasterSGIX, (void **) (&func_glFlushRasterSGIX) },
+ { "glFlushVertexArrayRangeNV", (void *) wine_glFlushVertexArrayRangeNV, (void **) (&func_glFlushVertexArrayRangeNV) },
+ { "glFogCoordPointerEXT", (void *) wine_glFogCoordPointerEXT, (void **) (&func_glFogCoordPointerEXT) },
+ { "glFogCoordPointerListIBM", (void *) wine_glFogCoordPointerListIBM, (void **) (&func_glFogCoordPointerListIBM) },
+ { "glFogCoorddEXT", (void *) wine_glFogCoorddEXT, (void **) (&func_glFogCoorddEXT) },
+ { "glFogCoorddvEXT", (void *) wine_glFogCoorddvEXT, (void **) (&func_glFogCoorddvEXT) },
+ { "glFogCoordfEXT", (void *) wine_glFogCoordfEXT, (void **) (&func_glFogCoordfEXT) },
+ { "glFogCoordfvEXT", (void *) wine_glFogCoordfvEXT, (void **) (&func_glFogCoordfvEXT) },
+ { "glFogFuncSGIS", (void *) wine_glFogFuncSGIS, (void **) (&func_glFogFuncSGIS) },
+ { "glFragmentColorMaterialSGIX", (void *) wine_glFragmentColorMaterialSGIX, (void **) (&func_glFragmentColorMaterialSGIX) },
+ { "glFragmentLightModelfSGIX", (void *) wine_glFragmentLightModelfSGIX, (void **) (&func_glFragmentLightModelfSGIX) },
+ { "glFragmentLightModelfvSGIX", (void *) wine_glFragmentLightModelfvSGIX, (void **) (&func_glFragmentLightModelfvSGIX) },
+ { "glFragmentLightModeliSGIX", (void *) wine_glFragmentLightModeliSGIX, (void **) (&func_glFragmentLightModeliSGIX) },
+ { "glFragmentLightModelivSGIX", (void *) wine_glFragmentLightModelivSGIX, (void **) (&func_glFragmentLightModelivSGIX) },
+ { "glFragmentLightfSGIX", (void *) wine_glFragmentLightfSGIX, (void **) (&func_glFragmentLightfSGIX) },
+ { "glFragmentLightfvSGIX", (void *) wine_glFragmentLightfvSGIX, (void **) (&func_glFragmentLightfvSGIX) },
+ { "glFragmentLightiSGIX", (void *) wine_glFragmentLightiSGIX, (void **) (&func_glFragmentLightiSGIX) },
+ { "glFragmentLightivSGIX", (void *) wine_glFragmentLightivSGIX, (void **) (&func_glFragmentLightivSGIX) },
+ { "glFragmentMaterialfSGIX", (void *) wine_glFragmentMaterialfSGIX, (void **) (&func_glFragmentMaterialfSGIX) },
+ { "glFragmentMaterialfvSGIX", (void *) wine_glFragmentMaterialfvSGIX, (void **) (&func_glFragmentMaterialfvSGIX) },
+ { "glFragmentMaterialiSGIX", (void *) wine_glFragmentMaterialiSGIX, (void **) (&func_glFragmentMaterialiSGIX) },
+ { "glFragmentMaterialivSGIX", (void *) wine_glFragmentMaterialivSGIX, (void **) (&func_glFragmentMaterialivSGIX) },
+ { "glFrameZoomSGIX", (void *) wine_glFrameZoomSGIX, (void **) (&func_glFrameZoomSGIX) },
+ { "glGenTexturesEXT", (void *) wine_glGenTexturesEXT, (void **) (&func_glGenTexturesEXT) },
+ { "glGetColorTableEXT", (void *) wine_glGetColorTableEXT, (void **) (&func_glGetColorTableEXT) },
+ { "glGetColorTableParameterfvEXT", (void *) wine_glGetColorTableParameterfvEXT, (void **) (&func_glGetColorTableParameterfvEXT) },
+ { "glGetColorTableParameterfvSGI", (void *) wine_glGetColorTableParameterfvSGI, (void **) (&func_glGetColorTableParameterfvSGI) },
+ { "glGetColorTableParameterivEXT", (void *) wine_glGetColorTableParameterivEXT, (void **) (&func_glGetColorTableParameterivEXT) },
+ { "glGetColorTableParameterivSGI", (void *) wine_glGetColorTableParameterivSGI, (void **) (&func_glGetColorTableParameterivSGI) },
+ { "glGetColorTableSGI", (void *) wine_glGetColorTableSGI, (void **) (&func_glGetColorTableSGI) },
+ { "glGetCombinerInputParameterfvNV", (void *) wine_glGetCombinerInputParameterfvNV, (void **) (&func_glGetCombinerInputParameterfvNV) },
+ { "glGetCombinerInputParameterivNV", (void *) wine_glGetCombinerInputParameterivNV, (void **) (&func_glGetCombinerInputParameterivNV) },
+ { "glGetCombinerOutputParameterfvNV", (void *) wine_glGetCombinerOutputParameterfvNV, (void **) (&func_glGetCombinerOutputParameterfvNV) },
+ { "glGetCombinerOutputParameterivNV", (void *) wine_glGetCombinerOutputParameterivNV, (void **) (&func_glGetCombinerOutputParameterivNV) },
+ { "glGetCompressedTexImageARB", (void *) wine_glGetCompressedTexImageARB, (void **) (&func_glGetCompressedTexImageARB) },
+ { "glGetConvolutionFilterEXT", (void *) wine_glGetConvolutionFilterEXT, (void **) (&func_glGetConvolutionFilterEXT) },
+ { "glGetConvolutionParameterfvEXT", (void *) wine_glGetConvolutionParameterfvEXT, (void **) (&func_glGetConvolutionParameterfvEXT) },
+ { "glGetConvolutionParameterivEXT", (void *) wine_glGetConvolutionParameterivEXT, (void **) (&func_glGetConvolutionParameterivEXT) },
+ { "glGetDetailTexFuncSGIS", (void *) wine_glGetDetailTexFuncSGIS, (void **) (&func_glGetDetailTexFuncSGIS) },
+ { "glGetFinalCombinerInputParameterfvNV", (void *) wine_glGetFinalCombinerInputParameterfvNV, (void **) (&func_glGetFinalCombinerInputParameterfvNV) },
+ { "glGetFinalCombinerInputParameterivNV", (void *) wine_glGetFinalCombinerInputParameterivNV, (void **) (&func_glGetFinalCombinerInputParameterivNV) },
+ { "glGetFogFuncSGIS", (void *) wine_glGetFogFuncSGIS, (void **) (&func_glGetFogFuncSGIS) },
+ { "glGetFragmentLightfvSGIX", (void *) wine_glGetFragmentLightfvSGIX, (void **) (&func_glGetFragmentLightfvSGIX) },
+ { "glGetFragmentLightivSGIX", (void *) wine_glGetFragmentLightivSGIX, (void **) (&func_glGetFragmentLightivSGIX) },
+ { "glGetFragmentMaterialfvSGIX", (void *) wine_glGetFragmentMaterialfvSGIX, (void **) (&func_glGetFragmentMaterialfvSGIX) },
+ { "glGetFragmentMaterialivSGIX", (void *) wine_glGetFragmentMaterialivSGIX, (void **) (&func_glGetFragmentMaterialivSGIX) },
+ { "glGetHistogramEXT", (void *) wine_glGetHistogramEXT, (void **) (&func_glGetHistogramEXT) },
+ { "glGetHistogramParameterfvEXT", (void *) wine_glGetHistogramParameterfvEXT, (void **) (&func_glGetHistogramParameterfvEXT) },
+ { "glGetHistogramParameterivEXT", (void *) wine_glGetHistogramParameterivEXT, (void **) (&func_glGetHistogramParameterivEXT) },
+ { "glGetImageTransformParameterfvHP", (void *) wine_glGetImageTransformParameterfvHP, (void **) (&func_glGetImageTransformParameterfvHP) },
+ { "glGetImageTransformParameterivHP", (void *) wine_glGetImageTransformParameterivHP, (void **) (&func_glGetImageTransformParameterivHP) },
+ { "glGetInstrumentsSGIX", (void *) wine_glGetInstrumentsSGIX, (void **) (&func_glGetInstrumentsSGIX) },
+ { "glGetListParameterfvSGIX", (void *) wine_glGetListParameterfvSGIX, (void **) (&func_glGetListParameterfvSGIX) },
+ { "glGetListParameterivSGIX", (void *) wine_glGetListParameterivSGIX, (void **) (&func_glGetListParameterivSGIX) },
+ { "glGetMinmaxEXT", (void *) wine_glGetMinmaxEXT, (void **) (&func_glGetMinmaxEXT) },
+ { "glGetMinmaxParameterfvEXT", (void *) wine_glGetMinmaxParameterfvEXT, (void **) (&func_glGetMinmaxParameterfvEXT) },
+ { "glGetMinmaxParameterivEXT", (void *) wine_glGetMinmaxParameterivEXT, (void **) (&func_glGetMinmaxParameterivEXT) },
+ { "glGetPixelTexGenParameterfvSGIS", (void *) wine_glGetPixelTexGenParameterfvSGIS, (void **) (&func_glGetPixelTexGenParameterfvSGIS) },
+ { "glGetPixelTexGenParameterivSGIS", (void *) wine_glGetPixelTexGenParameterivSGIS, (void **) (&func_glGetPixelTexGenParameterivSGIS) },
+ { "glGetPointervEXT", (void *) wine_glGetPointervEXT, (void **) (&func_glGetPointervEXT) },
+ { "glGetSeparableFilterEXT", (void *) wine_glGetSeparableFilterEXT, (void **) (&func_glGetSeparableFilterEXT) },
+ { "glGetSharpenTexFuncSGIS", (void *) wine_glGetSharpenTexFuncSGIS, (void **) (&func_glGetSharpenTexFuncSGIS) },
+ { "glGetTexFilterFuncSGIS", (void *) wine_glGetTexFilterFuncSGIS, (void **) (&func_glGetTexFilterFuncSGIS) },
+ { "glGlobalAlphaFactorbSUN", (void *) wine_glGlobalAlphaFactorbSUN, (void **) (&func_glGlobalAlphaFactorbSUN) },
+ { "glGlobalAlphaFactordSUN", (void *) wine_glGlobalAlphaFactordSUN, (void **) (&func_glGlobalAlphaFactordSUN) },
+ { "glGlobalAlphaFactorfSUN", (void *) wine_glGlobalAlphaFactorfSUN, (void **) (&func_glGlobalAlphaFactorfSUN) },
+ { "glGlobalAlphaFactoriSUN", (void *) wine_glGlobalAlphaFactoriSUN, (void **) (&func_glGlobalAlphaFactoriSUN) },
+ { "glGlobalAlphaFactorsSUN", (void *) wine_glGlobalAlphaFactorsSUN, (void **) (&func_glGlobalAlphaFactorsSUN) },
+ { "glGlobalAlphaFactorubSUN", (void *) wine_glGlobalAlphaFactorubSUN, (void **) (&func_glGlobalAlphaFactorubSUN) },
+ { "glGlobalAlphaFactoruiSUN", (void *) wine_glGlobalAlphaFactoruiSUN, (void **) (&func_glGlobalAlphaFactoruiSUN) },
+ { "glGlobalAlphaFactorusSUN", (void *) wine_glGlobalAlphaFactorusSUN, (void **) (&func_glGlobalAlphaFactorusSUN) },
+ { "glHintPGI", (void *) wine_glHintPGI, (void **) (&func_glHintPGI) },
+ { "glHistogramEXT", (void *) wine_glHistogramEXT, (void **) (&func_glHistogramEXT) },
+ { "glImageTransformParameterfHP", (void *) wine_glImageTransformParameterfHP, (void **) (&func_glImageTransformParameterfHP) },
+ { "glImageTransformParameterfvHP", (void *) wine_glImageTransformParameterfvHP, (void **) (&func_glImageTransformParameterfvHP) },
+ { "glImageTransformParameteriHP", (void *) wine_glImageTransformParameteriHP, (void **) (&func_glImageTransformParameteriHP) },
+ { "glImageTransformParameterivHP", (void *) wine_glImageTransformParameterivHP, (void **) (&func_glImageTransformParameterivHP) },
+ { "glIndexFuncEXT", (void *) wine_glIndexFuncEXT, (void **) (&func_glIndexFuncEXT) },
+ { "glIndexMaterialEXT", (void *) wine_glIndexMaterialEXT, (void **) (&func_glIndexMaterialEXT) },
+ { "glIndexPointerEXT", (void *) wine_glIndexPointerEXT, (void **) (&func_glIndexPointerEXT) },
+ { "glIndexPointerListIBM", (void *) wine_glIndexPointerListIBM, (void **) (&func_glIndexPointerListIBM) },
+ { "glInstrumentsBufferSGIX", (void *) wine_glInstrumentsBufferSGIX, (void **) (&func_glInstrumentsBufferSGIX) },
+ { "glIsTextureEXT", (void *) wine_glIsTextureEXT, (void **) (&func_glIsTextureEXT) },
+ { "glLightEnviSGIX", (void *) wine_glLightEnviSGIX, (void **) (&func_glLightEnviSGIX) },
+ { "glListParameterfSGIX", (void *) wine_glListParameterfSGIX, (void **) (&func_glListParameterfSGIX) },
+ { "glListParameterfvSGIX", (void *) wine_glListParameterfvSGIX, (void **) (&func_glListParameterfvSGIX) },
+ { "glListParameteriSGIX", (void *) wine_glListParameteriSGIX, (void **) (&func_glListParameteriSGIX) },
+ { "glListParameterivSGIX", (void *) wine_glListParameterivSGIX, (void **) (&func_glListParameterivSGIX) },
+ { "glLoadTransposeMatrixdARB", (void *) wine_glLoadTransposeMatrixdARB, (void **) (&func_glLoadTransposeMatrixdARB) },
+ { "glLoadTransposeMatrixfARB", (void *) wine_glLoadTransposeMatrixfARB, (void **) (&func_glLoadTransposeMatrixfARB) },
+ { "glLockArraysEXT", (void *) wine_glLockArraysEXT, (void **) (&func_glLockArraysEXT) },
+ { "glMinmaxEXT", (void *) wine_glMinmaxEXT, (void **) (&func_glMinmaxEXT) },
+ { "glMultTransposeMatrixdARB", (void *) wine_glMultTransposeMatrixdARB, (void **) (&func_glMultTransposeMatrixdARB) },
+ { "glMultTransposeMatrixfARB", (void *) wine_glMultTransposeMatrixfARB, (void **) (&func_glMultTransposeMatrixfARB) },
+ { "glMultiDrawArraysEXT", (void *) wine_glMultiDrawArraysEXT, (void **) (&func_glMultiDrawArraysEXT) },
+ { "glMultiDrawElementsEXT", (void *) wine_glMultiDrawElementsEXT, (void **) (&func_glMultiDrawElementsEXT) },
+ { "glMultiModeDrawArraysIBM", (void *) wine_glMultiModeDrawArraysIBM, (void **) (&func_glMultiModeDrawArraysIBM) },
+ { "glMultiModeDrawElementsIBM", (void *) wine_glMultiModeDrawElementsIBM, (void **) (&func_glMultiModeDrawElementsIBM) },
+ { "glNormal3fVertex3fSUN", (void *) wine_glNormal3fVertex3fSUN, (void **) (&func_glNormal3fVertex3fSUN) },
+ { "glNormal3fVertex3fvSUN", (void *) wine_glNormal3fVertex3fvSUN, (void **) (&func_glNormal3fVertex3fvSUN) },
+ { "glNormalPointerEXT", (void *) wine_glNormalPointerEXT, (void **) (&func_glNormalPointerEXT) },
+ { "glNormalPointerListIBM", (void *) wine_glNormalPointerListIBM, (void **) (&func_glNormalPointerListIBM) },
+ { "glNormalPointervINTEL", (void *) wine_glNormalPointervINTEL, (void **) (&func_glNormalPointervINTEL) },
+ { "glPixelTexGenParameterfSGIS", (void *) wine_glPixelTexGenParameterfSGIS, (void **) (&func_glPixelTexGenParameterfSGIS) },
+ { "glPixelTexGenParameterfvSGIS", (void *) wine_glPixelTexGenParameterfvSGIS, (void **) (&func_glPixelTexGenParameterfvSGIS) },
+ { "glPixelTexGenParameteriSGIS", (void *) wine_glPixelTexGenParameteriSGIS, (void **) (&func_glPixelTexGenParameteriSGIS) },
+ { "glPixelTexGenParameterivSGIS", (void *) wine_glPixelTexGenParameterivSGIS, (void **) (&func_glPixelTexGenParameterivSGIS) },
+ { "glPixelTexGenSGIX", (void *) wine_glPixelTexGenSGIX, (void **) (&func_glPixelTexGenSGIX) },
+ { "glPixelTransformParameterfEXT", (void *) wine_glPixelTransformParameterfEXT, (void **) (&func_glPixelTransformParameterfEXT) },
+ { "glPixelTransformParameterfvEXT", (void *) wine_glPixelTransformParameterfvEXT, (void **) (&func_glPixelTransformParameterfvEXT) },
+ { "glPixelTransformParameteriEXT", (void *) wine_glPixelTransformParameteriEXT, (void **) (&func_glPixelTransformParameteriEXT) },
+ { "glPixelTransformParameterivEXT", (void *) wine_glPixelTransformParameterivEXT, (void **) (&func_glPixelTransformParameterivEXT) },
+ { "glPointParameterfEXT", (void *) wine_glPointParameterfEXT, (void **) (&func_glPointParameterfEXT) },
+ { "glPointParameterfSGIS", (void *) wine_glPointParameterfSGIS, (void **) (&func_glPointParameterfSGIS) },
+ { "glPointParameterfvEXT", (void *) wine_glPointParameterfvEXT, (void **) (&func_glPointParameterfvEXT) },
+ { "glPointParameterfvSGIS", (void *) wine_glPointParameterfvSGIS, (void **) (&func_glPointParameterfvSGIS) },
+ { "glPollInstrumentsSGIX", (void *) wine_glPollInstrumentsSGIX, (void **) (&func_glPollInstrumentsSGIX) },
+ { "glPolygonOffsetEXT", (void *) wine_glPolygonOffsetEXT, (void **) (&func_glPolygonOffsetEXT) },
+ { "glPrioritizeTexturesEXT", (void *) wine_glPrioritizeTexturesEXT, (void **) (&func_glPrioritizeTexturesEXT) },
+ { "glReadInstrumentsSGIX", (void *) wine_glReadInstrumentsSGIX, (void **) (&func_glReadInstrumentsSGIX) },
+ { "glReferencePlaneSGIX", (void *) wine_glReferencePlaneSGIX, (void **) (&func_glReferencePlaneSGIX) },
+ { "glReplacementCodePointer", (void *) wine_glReplacementCodePointer, (void **) (&func_glReplacementCodePointer) },
+ { "glReplacementCodeubSUN", (void *) wine_glReplacementCodeubSUN, (void **) (&func_glReplacementCodeubSUN) },
+ { "glReplacementCodeubvSUN", (void *) wine_glReplacementCodeubvSUN, (void **) (&func_glReplacementCodeubvSUN) },
+ { "glReplacementCodeuiColor3fVertex3fSUN", (void *) wine_glReplacementCodeuiColor3fVertex3fSUN, (void **) (&func_glReplacementCodeuiColor3fVertex3fSUN) },
+ { "glReplacementCodeuiColor3fVertex3fvSUN", (void *) wine_glReplacementCodeuiColor3fVertex3fvSUN, (void **) (&func_glReplacementCodeuiColor3fVertex3fvSUN) },
+ { "glReplacementCodeuiColor4fNormal3fVertex3fSUN", (void *) wine_glReplacementCodeuiColor4fNormal3fVertex3fSUN, (void **) (&func_glReplacementCodeuiColor4fNormal3fVertex3fSUN) },
+ { "glReplacementCodeuiColor4fNormal3fVertex3fvSUN", (void *) wine_glReplacementCodeuiColor4fNormal3fVertex3fvSUN, (void **) (&func_glReplacementCodeuiColor4fNormal3fVertex3fvSUN) },
+ { "glReplacementCodeuiColor4ubVertex3fSUN", (void *) wine_glReplacementCodeuiColor4ubVertex3fSUN, (void **) (&func_glReplacementCodeuiColor4ubVertex3fSUN) },
+ { "glReplacementCodeuiColor4ubVertex3fvSUN", (void *) wine_glReplacementCodeuiColor4ubVertex3fvSUN, (void **) (&func_glReplacementCodeuiColor4ubVertex3fvSUN) },
+ { "glReplacementCodeuiNormal3fVertex3fSUN", (void *) wine_glReplacementCodeuiNormal3fVertex3fSUN, (void **) (&func_glReplacementCodeuiNormal3fVertex3fSUN) },
+ { "glReplacementCodeuiNormal3fVertex3fvSUN", (void *) wine_glReplacementCodeuiNormal3fVertex3fvSUN, (void **) (&func_glReplacementCodeuiNormal3fVertex3fvSUN) },
+ { "glReplacementCodeuiSUN", (void *) wine_glReplacementCodeuiSUN, (void **) (&func_glReplacementCodeuiSUN) },
+ { "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN", (void *) wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, (void **) (&func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN) },
+ { "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN", (void *) wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN, (void **) (&func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN) },
+ { "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN", (void *) wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, (void **) (&func_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN) },
+ { "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN", (void *) wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, (void **) (&func_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN) },
+ { "glReplacementCodeuiTexCoord2fVertex3fSUN", (void *) wine_glReplacementCodeuiTexCoord2fVertex3fSUN, (void **) (&func_glReplacementCodeuiTexCoord2fVertex3fSUN) },
+ { "glReplacementCodeuiTexCoord2fVertex3fvSUN", (void *) wine_glReplacementCodeuiTexCoord2fVertex3fvSUN, (void **) (&func_glReplacementCodeuiTexCoord2fVertex3fvSUN) },
+ { "glReplacementCodeuiVertex3fSUN", (void *) wine_glReplacementCodeuiVertex3fSUN, (void **) (&func_glReplacementCodeuiVertex3fSUN) },
+ { "glReplacementCodeuiVertex3fvSUN", (void *) wine_glReplacementCodeuiVertex3fvSUN, (void **) (&func_glReplacementCodeuiVertex3fvSUN) },
+ { "glReplacementCodeuivSUN", (void *) wine_glReplacementCodeuivSUN, (void **) (&func_glReplacementCodeuivSUN) },
+ { "glReplacementCodeusSUN", (void *) wine_glReplacementCodeusSUN, (void **) (&func_glReplacementCodeusSUN) },
+ { "glReplacementCodeusvSUN", (void *) wine_glReplacementCodeusvSUN, (void **) (&func_glReplacementCodeusvSUN) },
+ { "glResetHistogramEXT", (void *) wine_glResetHistogramEXT, (void **) (&func_glResetHistogramEXT) },
+ { "glResetMinmaxEXT", (void *) wine_glResetMinmaxEXT, (void **) (&func_glResetMinmaxEXT) },
+ { "glResizeBuffersMESA", (void *) wine_glResizeBuffersMESA, (void **) (&func_glResizeBuffersMESA) },
+ { "glSampleCoverageARB", (void *) wine_glSampleCoverageARB, (void **) (&func_glSampleCoverageARB) },
+ { "glSampleMaskEXT", (void *) wine_glSampleMaskEXT, (void **) (&func_glSampleMaskEXT) },
+ { "glSampleMaskSGIS", (void *) wine_glSampleMaskSGIS, (void **) (&func_glSampleMaskSGIS) },
+ { "glSamplePassARB", (void *) wine_glSamplePassARB, (void **) (&func_glSamplePassARB) },
+ { "glSamplePatternEXT", (void *) wine_glSamplePatternEXT, (void **) (&func_glSamplePatternEXT) },
+ { "glSamplePatternSGIS", (void *) wine_glSamplePatternSGIS, (void **) (&func_glSamplePatternSGIS) },
+ { "glSecondaryColor3bEXT", (void *) wine_glSecondaryColor3bEXT, (void **) (&func_glSecondaryColor3bEXT) },
+ { "glSecondaryColor3bvEXT", (void *) wine_glSecondaryColor3bvEXT, (void **) (&func_glSecondaryColor3bvEXT) },
+ { "glSecondaryColor3dEXT", (void *) wine_glSecondaryColor3dEXT, (void **) (&func_glSecondaryColor3dEXT) },
+ { "glSecondaryColor3dvEXT", (void *) wine_glSecondaryColor3dvEXT, (void **) (&func_glSecondaryColor3dvEXT) },
+ { "glSecondaryColor3fEXT", (void *) wine_glSecondaryColor3fEXT, (void **) (&func_glSecondaryColor3fEXT) },
+ { "glSecondaryColor3fvEXT", (void *) wine_glSecondaryColor3fvEXT, (void **) (&func_glSecondaryColor3fvEXT) },
+ { "glSecondaryColor3iEXT", (void *) wine_glSecondaryColor3iEXT, (void **) (&func_glSecondaryColor3iEXT) },
+ { "glSecondaryColor3ivEXT", (void *) wine_glSecondaryColor3ivEXT, (void **) (&func_glSecondaryColor3ivEXT) },
+ { "glSecondaryColor3sEXT", (void *) wine_glSecondaryColor3sEXT, (void **) (&func_glSecondaryColor3sEXT) },
+ { "glSecondaryColor3svEXT", (void *) wine_glSecondaryColor3svEXT, (void **) (&func_glSecondaryColor3svEXT) },
+ { "glSecondaryColor3ubEXT", (void *) wine_glSecondaryColor3ubEXT, (void **) (&func_glSecondaryColor3ubEXT) },
+ { "glSecondaryColor3ubvEXT", (void *) wine_glSecondaryColor3ubvEXT, (void **) (&func_glSecondaryColor3ubvEXT) },
+ { "glSecondaryColor3uiEXT", (void *) wine_glSecondaryColor3uiEXT, (void **) (&func_glSecondaryColor3uiEXT) },
+ { "glSecondaryColor3uivEXT", (void *) wine_glSecondaryColor3uivEXT, (void **) (&func_glSecondaryColor3uivEXT) },
+ { "glSecondaryColor3usEXT", (void *) wine_glSecondaryColor3usEXT, (void **) (&func_glSecondaryColor3usEXT) },
+ { "glSecondaryColor3usvEXT", (void *) wine_glSecondaryColor3usvEXT, (void **) (&func_glSecondaryColor3usvEXT) },
+ { "glSecondaryColorPointerEXT", (void *) wine_glSecondaryColorPointerEXT, (void **) (&func_glSecondaryColorPointerEXT) },
+ { "glSecondaryColorPointerListIBM", (void *) wine_glSecondaryColorPointerListIBM, (void **) (&func_glSecondaryColorPointerListIBM) },
+ { "glSeparableFilter2DEXT", (void *) wine_glSeparableFilter2DEXT, (void **) (&func_glSeparableFilter2DEXT) },
+ { "glSharpenTexFuncSGIS", (void *) wine_glSharpenTexFuncSGIS, (void **) (&func_glSharpenTexFuncSGIS) },
+ { "glSpriteParameterfSGIX", (void *) wine_glSpriteParameterfSGIX, (void **) (&func_glSpriteParameterfSGIX) },
+ { "glSpriteParameterfvSGIX", (void *) wine_glSpriteParameterfvSGIX, (void **) (&func_glSpriteParameterfvSGIX) },
+ { "glSpriteParameteriSGIX", (void *) wine_glSpriteParameteriSGIX, (void **) (&func_glSpriteParameteriSGIX) },
+ { "glSpriteParameterivSGIX", (void *) wine_glSpriteParameterivSGIX, (void **) (&func_glSpriteParameterivSGIX) },
+ { "glStartInstrumentsSGIX", (void *) wine_glStartInstrumentsSGIX, (void **) (&func_glStartInstrumentsSGIX) },
+ { "glStopInstrumentsSGIX", (void *) wine_glStopInstrumentsSGIX, (void **) (&func_glStopInstrumentsSGIX) },
+ { "glTagSampleBufferSGIX", (void *) wine_glTagSampleBufferSGIX, (void **) (&func_glTagSampleBufferSGIX) },
+ { "glTangent3b", (void *) wine_glTangent3b, (void **) (&func_glTangent3b) },
+ { "glTangent3bv", (void *) wine_glTangent3bv, (void **) (&func_glTangent3bv) },
+ { "glTangent3d", (void *) wine_glTangent3d, (void **) (&func_glTangent3d) },
+ { "glTangent3dv", (void *) wine_glTangent3dv, (void **) (&func_glTangent3dv) },
+ { "glTangent3f", (void *) wine_glTangent3f, (void **) (&func_glTangent3f) },
+ { "glTangent3fv", (void *) wine_glTangent3fv, (void **) (&func_glTangent3fv) },
+ { "glTangent3i", (void *) wine_glTangent3i, (void **) (&func_glTangent3i) },
+ { "glTangent3iv", (void *) wine_glTangent3iv, (void **) (&func_glTangent3iv) },
+ { "glTangent3s", (void *) wine_glTangent3s, (void **) (&func_glTangent3s) },
+ { "glTangent3sv", (void *) wine_glTangent3sv, (void **) (&func_glTangent3sv) },
+ { "glTangentPointerEXT", (void *) wine_glTangentPointerEXT, (void **) (&func_glTangentPointerEXT) },
+ { "glTbufferMask3DFX", (void *) wine_glTbufferMask3DFX, (void **) (&func_glTbufferMask3DFX) },
+ { "glTexCoord2fColor3fVertex3fSUN", (void *) wine_glTexCoord2fColor3fVertex3fSUN, (void **) (&func_glTexCoord2fColor3fVertex3fSUN) },
+ { "glTexCoord2fColor3fVertex3fvSUN", (void *) wine_glTexCoord2fColor3fVertex3fvSUN, (void **) (&func_glTexCoord2fColor3fVertex3fvSUN) },
+ { "glTexCoord2fColor4fNormal3fVertex3fSUN", (void *) wine_glTexCoord2fColor4fNormal3fVertex3fSUN, (void **) (&func_glTexCoord2fColor4fNormal3fVertex3fSUN) },
+ { "glTexCoord2fColor4fNormal3fVertex3fvSUN", (void *) wine_glTexCoord2fColor4fNormal3fVertex3fvSUN, (void **) (&func_glTexCoord2fColor4fNormal3fVertex3fvSUN) },
+ { "glTexCoord2fColor4ubVertex3fSUN", (void *) wine_glTexCoord2fColor4ubVertex3fSUN, (void **) (&func_glTexCoord2fColor4ubVertex3fSUN) },
+ { "glTexCoord2fColor4ubVertex3fvSUN", (void *) wine_glTexCoord2fColor4ubVertex3fvSUN, (void **) (&func_glTexCoord2fColor4ubVertex3fvSUN) },
+ { "glTexCoord2fNormal3fVertex3fSUN", (void *) wine_glTexCoord2fNormal3fVertex3fSUN, (void **) (&func_glTexCoord2fNormal3fVertex3fSUN) },
+ { "glTexCoord2fNormal3fVertex3fvSUN", (void *) wine_glTexCoord2fNormal3fVertex3fvSUN, (void **) (&func_glTexCoord2fNormal3fVertex3fvSUN) },
+ { "glTexCoord2fVertex3fSUN", (void *) wine_glTexCoord2fVertex3fSUN, (void **) (&func_glTexCoord2fVertex3fSUN) },
+ { "glTexCoord2fVertex3fvSUN", (void *) wine_glTexCoord2fVertex3fvSUN, (void **) (&func_glTexCoord2fVertex3fvSUN) },
+ { "glTexCoord4fColor4fNormal3fVertex4fSUN", (void *) wine_glTexCoord4fColor4fNormal3fVertex4fSUN, (void **) (&func_glTexCoord4fColor4fNormal3fVertex4fSUN) },
+ { "glTexCoord4fColor4fNormal3fVertex4fvSUN", (void *) wine_glTexCoord4fColor4fNormal3fVertex4fvSUN, (void **) (&func_glTexCoord4fColor4fNormal3fVertex4fvSUN) },
+ { "glTexCoord4fVertex4fSUN", (void *) wine_glTexCoord4fVertex4fSUN, (void **) (&func_glTexCoord4fVertex4fSUN) },
+ { "glTexCoord4fVertex4fvSUN", (void *) wine_glTexCoord4fVertex4fvSUN, (void **) (&func_glTexCoord4fVertex4fvSUN) },
+ { "glTexCoordPointerEXT", (void *) wine_glTexCoordPointerEXT, (void **) (&func_glTexCoordPointerEXT) },
+ { "glTexCoordPointerListIBM", (void *) wine_glTexCoordPointerListIBM, (void **) (&func_glTexCoordPointerListIBM) },
+ { "glTexCoordPointervINTEL", (void *) wine_glTexCoordPointervINTEL, (void **) (&func_glTexCoordPointervINTEL) },
+ { "glTexFilterFuncSGIS", (void *) wine_glTexFilterFuncSGIS, (void **) (&func_glTexFilterFuncSGIS) },
+ { "glTexImage3DEXT", (void *) wine_glTexImage3DEXT, (void **) (&func_glTexImage3DEXT) },
+ { "glTexImage4DSGIS", (void *) wine_glTexImage4DSGIS, (void **) (&func_glTexImage4DSGIS) },
+ { "glTexSubImage1DEXT", (void *) wine_glTexSubImage1DEXT, (void **) (&func_glTexSubImage1DEXT) },
+ { "glTexSubImage2DEXT", (void *) wine_glTexSubImage2DEXT, (void **) (&func_glTexSubImage2DEXT) },
+ { "glTexSubImage3DEXT", (void *) wine_glTexSubImage3DEXT, (void **) (&func_glTexSubImage3DEXT) },
+ { "glTexSubImage4DSGIS", (void *) wine_glTexSubImage4DSGIS, (void **) (&func_glTexSubImage4DSGIS) },
+ { "glTextureLightEXT", (void *) wine_glTextureLightEXT, (void **) (&func_glTextureLightEXT) },
+ { "glTextureMaterialEXT", (void *) wine_glTextureMaterialEXT, (void **) (&func_glTextureMaterialEXT) },
+ { "glTextureNormalEXT", (void *) wine_glTextureNormalEXT, (void **) (&func_glTextureNormalEXT) },
+ { "glUnlockArraysEXT", (void *) wine_glUnlockArraysEXT, (void **) (&func_glUnlockArraysEXT) },
+ { "glVertexArrayRangeNV", (void *) wine_glVertexArrayRangeNV, (void **) (&func_glVertexArrayRangeNV) },
+ { "glVertexPointerEXT", (void *) wine_glVertexPointerEXT, (void **) (&func_glVertexPointerEXT) },
+ { "glVertexPointerListIBM", (void *) wine_glVertexPointerListIBM, (void **) (&func_glVertexPointerListIBM) },
+ { "glVertexPointervINTEL", (void *) wine_glVertexPointervINTEL, (void **) (&func_glVertexPointervINTEL) },
+ { "glVertexWeightPointerEXT", (void *) wine_glVertexWeightPointerEXT, (void **) (&func_glVertexWeightPointerEXT) },
+ { "glVertexWeightfEXT", (void *) wine_glVertexWeightfEXT, (void **) (&func_glVertexWeightfEXT) },
+ { "glVertexWeightfvEXT", (void *) wine_glVertexWeightfvEXT, (void **) (&func_glVertexWeightfvEXT) },
+ { "glWindowPos2dMESA", (void *) wine_glWindowPos2dMESA, (void **) (&func_glWindowPos2dMESA) },
+ { "glWindowPos2dvMESA", (void *) wine_glWindowPos2dvMESA, (void **) (&func_glWindowPos2dvMESA) },
+ { "glWindowPos2fMESA", (void *) wine_glWindowPos2fMESA, (void **) (&func_glWindowPos2fMESA) },
+ { "glWindowPos2fvMESA", (void *) wine_glWindowPos2fvMESA, (void **) (&func_glWindowPos2fvMESA) },
+ { "glWindowPos2iMESA", (void *) wine_glWindowPos2iMESA, (void **) (&func_glWindowPos2iMESA) },
+ { "glWindowPos2ivMESA", (void *) wine_glWindowPos2ivMESA, (void **) (&func_glWindowPos2ivMESA) },
+ { "glWindowPos2sMESA", (void *) wine_glWindowPos2sMESA, (void **) (&func_glWindowPos2sMESA) },
+ { "glWindowPos2svMESA", (void *) wine_glWindowPos2svMESA, (void **) (&func_glWindowPos2svMESA) },
+ { "glWindowPos3dMESA", (void *) wine_glWindowPos3dMESA, (void **) (&func_glWindowPos3dMESA) },
+ { "glWindowPos3dvMESA", (void *) wine_glWindowPos3dvMESA, (void **) (&func_glWindowPos3dvMESA) },
+ { "glWindowPos3fMESA", (void *) wine_glWindowPos3fMESA, (void **) (&func_glWindowPos3fMESA) },
+ { "glWindowPos3fvMESA", (void *) wine_glWindowPos3fvMESA, (void **) (&func_glWindowPos3fvMESA) },
+ { "glWindowPos3iMESA", (void *) wine_glWindowPos3iMESA, (void **) (&func_glWindowPos3iMESA) },
+ { "glWindowPos3ivMESA", (void *) wine_glWindowPos3ivMESA, (void **) (&func_glWindowPos3ivMESA) },
+ { "glWindowPos3sMESA", (void *) wine_glWindowPos3sMESA, (void **) (&func_glWindowPos3sMESA) },
+ { "glWindowPos3svMESA", (void *) wine_glWindowPos3svMESA, (void **) (&func_glWindowPos3svMESA) },
+ { "glWindowPos4dMESA", (void *) wine_glWindowPos4dMESA, (void **) (&func_glWindowPos4dMESA) },
+ { "glWindowPos4dvMESA", (void *) wine_glWindowPos4dvMESA, (void **) (&func_glWindowPos4dvMESA) },
+ { "glWindowPos4fMESA", (void *) wine_glWindowPos4fMESA, (void **) (&func_glWindowPos4fMESA) },
+ { "glWindowPos4fvMESA", (void *) wine_glWindowPos4fvMESA, (void **) (&func_glWindowPos4fvMESA) },
+ { "glWindowPos4iMESA", (void *) wine_glWindowPos4iMESA, (void **) (&func_glWindowPos4iMESA) },
+ { "glWindowPos4ivMESA", (void *) wine_glWindowPos4ivMESA, (void **) (&func_glWindowPos4ivMESA) },
+ { "glWindowPos4sMESA", (void *) wine_glWindowPos4sMESA, (void **) (&func_glWindowPos4sMESA) },
+ { "glWindowPos4svMESA", (void *) wine_glWindowPos4svMESA, (void **) (&func_glWindowPos4svMESA) }
+};
+
+/* Now, the function declarations */
+void WINAPI wine_glApplyTextureEXT(GLenum arg_0) {
+ ENTER_GL();
+ func_glApplyTextureEXT(arg_0);
+ LEAVE_GL();
+}
+
+GLboolean WINAPI wine_glAreTexturesResidentEXT(GLsizei arg_0, const GLuint * arg_1, GLboolean * arg_2) {
+ GLboolean ret;
+ ENTER_GL();
+ ret = func_glAreTexturesResidentEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+ return ret;
+}
+
+void WINAPI wine_glArrayElementEXT(GLint arg_0) {
+ ENTER_GL();
+ func_glArrayElementEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBindTextureEXT(GLenum arg_0, GLuint arg_1) {
+ ENTER_GL();
+ func_glBindTextureEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3b(GLbyte arg_0, GLbyte arg_1, GLbyte arg_2) {
+ ENTER_GL();
+ func_glBinormal3b(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3bv(const GLbyte * arg_0) {
+ ENTER_GL();
+ func_glBinormal3bv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3d(GLdouble arg_0, GLdouble arg_1, GLdouble arg_2) {
+ ENTER_GL();
+ func_glBinormal3d(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3dv(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glBinormal3dv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3f(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glBinormal3f(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3fv(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glBinormal3fv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3i(GLint arg_0, GLint arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glBinormal3i(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3iv(const GLint * arg_0) {
+ ENTER_GL();
+ func_glBinormal3iv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3s(GLshort arg_0, GLshort arg_1, GLshort arg_2) {
+ ENTER_GL();
+ func_glBinormal3s(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormal3sv(const GLshort * arg_0) {
+ ENTER_GL();
+ func_glBinormal3sv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBinormalPointerEXT(GLenum arg_0, GLsizei arg_1, const GLvoid * arg_2) {
+ ENTER_GL();
+ func_glBinormalPointerEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBlendColorEXT(GLclampf arg_0, GLclampf arg_1, GLclampf arg_2, GLclampf arg_3) {
+ ENTER_GL();
+ func_glBlendColorEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBlendEquationEXT(GLenum arg_0) {
+ ENTER_GL();
+ func_glBlendEquationEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBlendFuncSeparateEXT(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLenum arg_3) {
+ ENTER_GL();
+ func_glBlendFuncSeparateEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3fVertex3fSUN(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5) {
+ ENTER_GL();
+ func_glColor3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3fVertex3fvSUN(const GLfloat * arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glColor3fVertex3fvSUN(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4fNormal3fVertex3fSUN(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7, GLfloat arg_8, GLfloat arg_9) {
+ ENTER_GL();
+ func_glColor4fNormal3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4fNormal3fVertex3fvSUN(const GLfloat * arg_0, const GLfloat * arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glColor4fNormal3fVertex3fvSUN(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4ubVertex2fSUN(GLubyte arg_0, GLubyte arg_1, GLubyte arg_2, GLubyte arg_3, GLfloat arg_4, GLfloat arg_5) {
+ ENTER_GL();
+ func_glColor4ubVertex2fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4ubVertex2fvSUN(const GLubyte * arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glColor4ubVertex2fvSUN(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4ubVertex3fSUN(GLubyte arg_0, GLubyte arg_1, GLubyte arg_2, GLubyte arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6) {
+ ENTER_GL();
+ func_glColor4ubVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4ubVertex3fvSUN(const GLubyte * arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glColor4ubVertex3fvSUN(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorPointerEXT(GLint arg_0, GLenum arg_1, GLsizei arg_2, GLsizei arg_3, const GLvoid * arg_4) {
+ ENTER_GL();
+ func_glColorPointerEXT(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorPointerListIBM(GLint arg_0, GLenum arg_1, GLint arg_2, const GLvoid* * arg_3, GLint arg_4) {
+ ENTER_GL();
+ func_glColorPointerListIBM(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorPointervINTEL(GLint arg_0, GLenum arg_1, const GLvoid* * arg_2) {
+ ENTER_GL();
+ func_glColorPointervINTEL(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorSubTableEXT(GLenum arg_0, GLsizei arg_1, GLsizei arg_2, GLenum arg_3, GLenum arg_4, const GLvoid * arg_5) {
+ ENTER_GL();
+ func_glColorSubTableEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorTableEXT(GLenum arg_0, GLenum arg_1, GLsizei arg_2, GLenum arg_3, GLenum arg_4, const GLvoid * arg_5) {
+ ENTER_GL();
+ func_glColorTableEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorTableParameterfvSGI(GLenum arg_0, GLenum arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glColorTableParameterfvSGI(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorTableParameterivSGI(GLenum arg_0, GLenum arg_1, const GLint * arg_2) {
+ ENTER_GL();
+ func_glColorTableParameterivSGI(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorTableSGI(GLenum arg_0, GLenum arg_1, GLsizei arg_2, GLenum arg_3, GLenum arg_4, const GLvoid * arg_5) {
+ ENTER_GL();
+ func_glColorTableSGI(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCombinerInputNV(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLenum arg_3, GLenum arg_4, GLenum arg_5) {
+ ENTER_GL();
+ func_glCombinerInputNV(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCombinerOutputNV(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLenum arg_3, GLenum arg_4, GLenum arg_5, GLenum arg_6, GLboolean arg_7, GLboolean arg_8, GLboolean arg_9) {
+ ENTER_GL();
+ func_glCombinerOutputNV(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCombinerParameterfNV(GLenum arg_0, GLfloat arg_1) {
+ ENTER_GL();
+ func_glCombinerParameterfNV(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCombinerParameterfvNV(GLenum arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glCombinerParameterfvNV(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCombinerParameteriNV(GLenum arg_0, GLint arg_1) {
+ ENTER_GL();
+ func_glCombinerParameteriNV(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCombinerParameterivNV(GLenum arg_0, const GLint * arg_1) {
+ ENTER_GL();
+ func_glCombinerParameterivNV(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCompressedTexImage1DARB(GLenum arg_0, GLint arg_1, GLenum arg_2, GLsizei arg_3, GLint arg_4, GLsizei arg_5, const GLvoid * arg_6) {
+ ENTER_GL();
+ func_glCompressedTexImage1DARB(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCompressedTexImage2DARB(GLenum arg_0, GLint arg_1, GLenum arg_2, GLsizei arg_3, GLsizei arg_4, GLint arg_5, GLsizei arg_6, const GLvoid * arg_7) {
+ ENTER_GL();
+ func_glCompressedTexImage2DARB(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCompressedTexImage3DARB(GLenum arg_0, GLint arg_1, GLenum arg_2, GLsizei arg_3, GLsizei arg_4, GLsizei arg_5, GLint arg_6, GLsizei arg_7, const GLvoid * arg_8) {
+ ENTER_GL();
+ func_glCompressedTexImage3DARB(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCompressedTexSubImage1DARB(GLenum arg_0, GLint arg_1, GLint arg_2, GLsizei arg_3, GLenum arg_4, GLsizei arg_5, const GLvoid * arg_6) {
+ ENTER_GL();
+ func_glCompressedTexSubImage1DARB(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCompressedTexSubImage2DARB(GLenum arg_0, GLint arg_1, GLint arg_2, GLint arg_3, GLsizei arg_4, GLsizei arg_5, GLenum arg_6, GLsizei arg_7, const GLvoid * arg_8) {
+ ENTER_GL();
+ func_glCompressedTexSubImage2DARB(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCompressedTexSubImage3DARB(GLenum arg_0, GLint arg_1, GLint arg_2, GLint arg_3, GLint arg_4, GLsizei arg_5, GLsizei arg_6, GLsizei arg_7, GLenum arg_8, GLsizei arg_9, const GLvoid * arg_10) {
+ ENTER_GL();
+ func_glCompressedTexSubImage3DARB(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9, arg_10);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionFilter1DEXT(GLenum arg_0, GLenum arg_1, GLsizei arg_2, GLenum arg_3, GLenum arg_4, const GLvoid * arg_5) {
+ ENTER_GL();
+ func_glConvolutionFilter1DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionFilter2DEXT(GLenum arg_0, GLenum arg_1, GLsizei arg_2, GLsizei arg_3, GLenum arg_4, GLenum arg_5, const GLvoid * arg_6) {
+ ENTER_GL();
+ func_glConvolutionFilter2DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionParameterfEXT(GLenum arg_0, GLenum arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glConvolutionParameterfEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionParameterfvEXT(GLenum arg_0, GLenum arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glConvolutionParameterfvEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionParameteriEXT(GLenum arg_0, GLenum arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glConvolutionParameteriEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionParameterivEXT(GLenum arg_0, GLenum arg_1, const GLint * arg_2) {
+ ENTER_GL();
+ func_glConvolutionParameterivEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyColorSubTableEXT(GLenum arg_0, GLsizei arg_1, GLint arg_2, GLint arg_3, GLsizei arg_4) {
+ ENTER_GL();
+ func_glCopyColorSubTableEXT(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyColorTableSGI(GLenum arg_0, GLenum arg_1, GLint arg_2, GLint arg_3, GLsizei arg_4) {
+ ENTER_GL();
+ func_glCopyColorTableSGI(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyConvolutionFilter1DEXT(GLenum arg_0, GLenum arg_1, GLint arg_2, GLint arg_3, GLsizei arg_4) {
+ ENTER_GL();
+ func_glCopyConvolutionFilter1DEXT(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyConvolutionFilter2DEXT(GLenum arg_0, GLenum arg_1, GLint arg_2, GLint arg_3, GLsizei arg_4, GLsizei arg_5) {
+ ENTER_GL();
+ func_glCopyConvolutionFilter2DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexImage1DEXT(GLenum arg_0, GLint arg_1, GLenum arg_2, GLint arg_3, GLint arg_4, GLsizei arg_5, GLint arg_6) {
+ ENTER_GL();
+ func_glCopyTexImage1DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexImage2DEXT(GLenum arg_0, GLint arg_1, GLenum arg_2, GLint arg_3, GLint arg_4, GLsizei arg_5, GLsizei arg_6, GLint arg_7) {
+ ENTER_GL();
+ func_glCopyTexImage2DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexSubImage1DEXT(GLenum arg_0, GLint arg_1, GLint arg_2, GLint arg_3, GLint arg_4, GLsizei arg_5) {
+ ENTER_GL();
+ func_glCopyTexSubImage1DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexSubImage2DEXT(GLenum arg_0, GLint arg_1, GLint arg_2, GLint arg_3, GLint arg_4, GLint arg_5, GLsizei arg_6, GLsizei arg_7) {
+ ENTER_GL();
+ func_glCopyTexSubImage2DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexSubImage3DEXT(GLenum arg_0, GLint arg_1, GLint arg_2, GLint arg_3, GLint arg_4, GLint arg_5, GLint arg_6, GLsizei arg_7, GLsizei arg_8) {
+ ENTER_GL();
+ func_glCopyTexSubImage3DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCullParameterdvEXT(GLenum arg_0, GLdouble * arg_1) {
+ ENTER_GL();
+ func_glCullParameterdvEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCullParameterfvEXT(GLenum arg_0, GLfloat * arg_1) {
+ ENTER_GL();
+ func_glCullParameterfvEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDeleteTexturesEXT(GLsizei arg_0, const GLuint * arg_1) {
+ ENTER_GL();
+ func_glDeleteTexturesEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDetailTexFuncSGIS(GLenum arg_0, GLsizei arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glDetailTexFuncSGIS(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDrawArraysEXT(GLenum arg_0, GLint arg_1, GLsizei arg_2) {
+ ENTER_GL();
+ func_glDrawArraysEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDrawRangeElementsEXT(GLenum arg_0, GLuint arg_1, GLuint arg_2, GLsizei arg_3, GLenum arg_4, const GLvoid * arg_5) {
+ ENTER_GL();
+ func_glDrawRangeElementsEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEdgeFlagPointerEXT(GLsizei arg_0, GLsizei arg_1, const GLboolean * arg_2) {
+ ENTER_GL();
+ func_glEdgeFlagPointerEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEdgeFlagPointerListIBM(GLint arg_0, const GLboolean* * arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glEdgeFlagPointerListIBM(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFinalCombinerInputNV(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLenum arg_3) {
+ ENTER_GL();
+ func_glFinalCombinerInputNV(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFinishTextureSUNX() {
+ ENTER_GL();
+ func_glFinishTextureSUNX();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFlushRasterSGIX() {
+ ENTER_GL();
+ func_glFlushRasterSGIX();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFlushVertexArrayRangeNV() {
+ ENTER_GL();
+ func_glFlushVertexArrayRangeNV();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogCoordPointerEXT(GLenum arg_0, GLsizei arg_1, const GLvoid * arg_2) {
+ ENTER_GL();
+ func_glFogCoordPointerEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogCoordPointerListIBM(GLenum arg_0, GLint arg_1, const GLvoid* * arg_2, GLint arg_3) {
+ ENTER_GL();
+ func_glFogCoordPointerListIBM(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogCoorddEXT(GLdouble arg_0) {
+ ENTER_GL();
+ func_glFogCoorddEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogCoorddvEXT(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glFogCoorddvEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogCoordfEXT(GLfloat arg_0) {
+ ENTER_GL();
+ func_glFogCoordfEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogCoordfvEXT(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glFogCoordfvEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogFuncSGIS(GLsizei arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glFogFuncSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentColorMaterialSGIX(GLenum arg_0, GLenum arg_1) {
+ ENTER_GL();
+ func_glFragmentColorMaterialSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentLightModelfSGIX(GLenum arg_0, GLfloat arg_1) {
+ ENTER_GL();
+ func_glFragmentLightModelfSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentLightModelfvSGIX(GLenum arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glFragmentLightModelfvSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentLightModeliSGIX(GLenum arg_0, GLint arg_1) {
+ ENTER_GL();
+ func_glFragmentLightModeliSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentLightModelivSGIX(GLenum arg_0, const GLint * arg_1) {
+ ENTER_GL();
+ func_glFragmentLightModelivSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentLightfSGIX(GLenum arg_0, GLenum arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glFragmentLightfSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentLightfvSGIX(GLenum arg_0, GLenum arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glFragmentLightfvSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentLightiSGIX(GLenum arg_0, GLenum arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glFragmentLightiSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentLightivSGIX(GLenum arg_0, GLenum arg_1, const GLint * arg_2) {
+ ENTER_GL();
+ func_glFragmentLightivSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentMaterialfSGIX(GLenum arg_0, GLenum arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glFragmentMaterialfSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentMaterialfvSGIX(GLenum arg_0, GLenum arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glFragmentMaterialfvSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentMaterialiSGIX(GLenum arg_0, GLenum arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glFragmentMaterialiSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFragmentMaterialivSGIX(GLenum arg_0, GLenum arg_1, const GLint * arg_2) {
+ ENTER_GL();
+ func_glFragmentMaterialivSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFrameZoomSGIX(GLint arg_0) {
+ ENTER_GL();
+ func_glFrameZoomSGIX(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGenTexturesEXT(GLsizei arg_0, GLuint * arg_1) {
+ ENTER_GL();
+ func_glGenTexturesEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetColorTableEXT(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLvoid * arg_3) {
+ ENTER_GL();
+ func_glGetColorTableEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetColorTableParameterfvEXT(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetColorTableParameterfvEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetColorTableParameterfvSGI(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetColorTableParameterfvSGI(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetColorTableParameterivEXT(GLenum arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetColorTableParameterivEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetColorTableParameterivSGI(GLenum arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetColorTableParameterivSGI(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetColorTableSGI(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLvoid * arg_3) {
+ ENTER_GL();
+ func_glGetColorTableSGI(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetCombinerInputParameterfvNV(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLenum arg_3, GLfloat * arg_4) {
+ ENTER_GL();
+ func_glGetCombinerInputParameterfvNV(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetCombinerInputParameterivNV(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLenum arg_3, GLint * arg_4) {
+ ENTER_GL();
+ func_glGetCombinerInputParameterivNV(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetCombinerOutputParameterfvNV(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLfloat * arg_3) {
+ ENTER_GL();
+ func_glGetCombinerOutputParameterfvNV(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetCombinerOutputParameterivNV(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLint * arg_3) {
+ ENTER_GL();
+ func_glGetCombinerOutputParameterivNV(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetCompressedTexImageARB(GLenum arg_0, GLint arg_1, void * arg_2) {
+ ENTER_GL();
+ func_glGetCompressedTexImageARB(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetConvolutionFilterEXT(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLvoid * arg_3) {
+ ENTER_GL();
+ func_glGetConvolutionFilterEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetConvolutionParameterfvEXT(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetConvolutionParameterfvEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetConvolutionParameterivEXT(GLenum arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetConvolutionParameterivEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetDetailTexFuncSGIS(GLenum arg_0, GLfloat * arg_1) {
+ ENTER_GL();
+ func_glGetDetailTexFuncSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetFinalCombinerInputParameterfvNV(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetFinalCombinerInputParameterfvNV(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetFinalCombinerInputParameterivNV(GLenum arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetFinalCombinerInputParameterivNV(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetFogFuncSGIS(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glGetFogFuncSGIS(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetFragmentLightfvSGIX(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetFragmentLightfvSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetFragmentLightivSGIX(GLenum arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetFragmentLightivSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetFragmentMaterialfvSGIX(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetFragmentMaterialfvSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetFragmentMaterialivSGIX(GLenum arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetFragmentMaterialivSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetHistogramEXT(GLenum arg_0, GLboolean arg_1, GLenum arg_2, GLenum arg_3, GLvoid * arg_4) {
+ ENTER_GL();
+ func_glGetHistogramEXT(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetHistogramParameterfvEXT(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetHistogramParameterfvEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetHistogramParameterivEXT(GLenum arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetHistogramParameterivEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetImageTransformParameterfvHP(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetImageTransformParameterfvHP(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetImageTransformParameterivHP(GLenum arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetImageTransformParameterivHP(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+GLint WINAPI wine_glGetInstrumentsSGIX() {
+ GLint ret;
+ ENTER_GL();
+ ret = func_glGetInstrumentsSGIX();
+ LEAVE_GL();
+ return ret;
+}
+
+void WINAPI wine_glGetListParameterfvSGIX(GLuint arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetListParameterfvSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetListParameterivSGIX(GLuint arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetListParameterivSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMinmaxEXT(GLenum arg_0, GLboolean arg_1, GLenum arg_2, GLenum arg_3, GLvoid * arg_4) {
+ ENTER_GL();
+ func_glGetMinmaxEXT(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMinmaxParameterfvEXT(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetMinmaxParameterfvEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMinmaxParameterivEXT(GLenum arg_0, GLenum arg_1, GLint * arg_2) {
+ ENTER_GL();
+ func_glGetMinmaxParameterivEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetPixelTexGenParameterfvSGIS(GLenum arg_0, GLfloat * arg_1) {
+ ENTER_GL();
+ func_glGetPixelTexGenParameterfvSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetPixelTexGenParameterivSGIS(GLenum arg_0, GLint * arg_1) {
+ ENTER_GL();
+ func_glGetPixelTexGenParameterivSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetPointervEXT(GLenum arg_0, GLvoid* * arg_1) {
+ ENTER_GL();
+ func_glGetPointervEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetSeparableFilterEXT(GLenum arg_0, GLenum arg_1, GLenum arg_2, GLvoid * arg_3, GLvoid * arg_4, GLvoid * arg_5) {
+ ENTER_GL();
+ func_glGetSeparableFilterEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetSharpenTexFuncSGIS(GLenum arg_0, GLfloat * arg_1) {
+ ENTER_GL();
+ func_glGetSharpenTexFuncSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexFilterFuncSGIS(GLenum arg_0, GLenum arg_1, GLfloat * arg_2) {
+ ENTER_GL();
+ func_glGetTexFilterFuncSGIS(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGlobalAlphaFactorbSUN(GLbyte arg_0) {
+ ENTER_GL();
+ func_glGlobalAlphaFactorbSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGlobalAlphaFactordSUN(GLdouble arg_0) {
+ ENTER_GL();
+ func_glGlobalAlphaFactordSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGlobalAlphaFactorfSUN(GLfloat arg_0) {
+ ENTER_GL();
+ func_glGlobalAlphaFactorfSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGlobalAlphaFactoriSUN(GLint arg_0) {
+ ENTER_GL();
+ func_glGlobalAlphaFactoriSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGlobalAlphaFactorsSUN(GLshort arg_0) {
+ ENTER_GL();
+ func_glGlobalAlphaFactorsSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGlobalAlphaFactorubSUN(GLubyte arg_0) {
+ ENTER_GL();
+ func_glGlobalAlphaFactorubSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGlobalAlphaFactoruiSUN(GLuint arg_0) {
+ ENTER_GL();
+ func_glGlobalAlphaFactoruiSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGlobalAlphaFactorusSUN(GLushort arg_0) {
+ ENTER_GL();
+ func_glGlobalAlphaFactorusSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glHintPGI(GLenum arg_0, GLint arg_1) {
+ ENTER_GL();
+ func_glHintPGI(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glHistogramEXT(GLenum arg_0, GLsizei arg_1, GLenum arg_2, GLboolean arg_3) {
+ ENTER_GL();
+ func_glHistogramEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glImageTransformParameterfHP(GLenum arg_0, GLenum arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glImageTransformParameterfHP(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glImageTransformParameterfvHP(GLenum arg_0, GLenum arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glImageTransformParameterfvHP(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glImageTransformParameteriHP(GLenum arg_0, GLenum arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glImageTransformParameteriHP(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glImageTransformParameterivHP(GLenum arg_0, GLenum arg_1, const GLint * arg_2) {
+ ENTER_GL();
+ func_glImageTransformParameterivHP(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexFuncEXT(GLenum arg_0, GLclampf arg_1) {
+ ENTER_GL();
+ func_glIndexFuncEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexMaterialEXT(GLenum arg_0, GLenum arg_1) {
+ ENTER_GL();
+ func_glIndexMaterialEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexPointerEXT(GLenum arg_0, GLsizei arg_1, GLsizei arg_2, const GLvoid * arg_3) {
+ ENTER_GL();
+ func_glIndexPointerEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexPointerListIBM(GLenum arg_0, GLint arg_1, const GLvoid* * arg_2, GLint arg_3) {
+ ENTER_GL();
+ func_glIndexPointerListIBM(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glInstrumentsBufferSGIX(GLsizei arg_0, GLint * arg_1) {
+ ENTER_GL();
+ func_glInstrumentsBufferSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+GLboolean WINAPI wine_glIsTextureEXT(GLuint arg_0) {
+ GLboolean ret;
+ ENTER_GL();
+ ret = func_glIsTextureEXT(arg_0);
+ LEAVE_GL();
+ return ret;
+}
+
+void WINAPI wine_glLightEnviSGIX(GLenum arg_0, GLint arg_1) {
+ ENTER_GL();
+ func_glLightEnviSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glListParameterfSGIX(GLuint arg_0, GLenum arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glListParameterfSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glListParameterfvSGIX(GLuint arg_0, GLenum arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glListParameterfvSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glListParameteriSGIX(GLuint arg_0, GLenum arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glListParameteriSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glListParameterivSGIX(GLuint arg_0, GLenum arg_1, const GLint * arg_2) {
+ ENTER_GL();
+ func_glListParameterivSGIX(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLoadTransposeMatrixdARB(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glLoadTransposeMatrixdARB(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLoadTransposeMatrixfARB(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glLoadTransposeMatrixfARB(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLockArraysEXT(GLint arg_0, GLsizei arg_1) {
+ ENTER_GL();
+ func_glLockArraysEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMinmaxEXT(GLenum arg_0, GLenum arg_1, GLboolean arg_2) {
+ ENTER_GL();
+ func_glMinmaxEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultTransposeMatrixdARB(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glMultTransposeMatrixdARB(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultTransposeMatrixfARB(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glMultTransposeMatrixfARB(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiDrawArraysEXT(GLenum arg_0, GLint * arg_1, GLsizei * arg_2, GLsizei arg_3) {
+ ENTER_GL();
+ func_glMultiDrawArraysEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiDrawElementsEXT(GLenum arg_0, const GLsizei * arg_1, GLenum arg_2, const GLvoid* * arg_3, GLsizei arg_4) {
+ ENTER_GL();
+ func_glMultiDrawElementsEXT(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiModeDrawArraysIBM(GLenum arg_0, const GLint * arg_1, const GLsizei * arg_2, GLsizei arg_3, GLint arg_4) {
+ ENTER_GL();
+ func_glMultiModeDrawArraysIBM(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiModeDrawElementsIBM(const GLenum * arg_0, const GLsizei * arg_1, GLenum arg_2, const GLvoid* * arg_3, GLsizei arg_4, GLint arg_5) {
+ ENTER_GL();
+ func_glMultiModeDrawElementsIBM(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3fVertex3fSUN(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5) {
+ ENTER_GL();
+ func_glNormal3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3fVertex3fvSUN(const GLfloat * arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glNormal3fVertex3fvSUN(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormalPointerEXT(GLenum arg_0, GLsizei arg_1, GLsizei arg_2, const GLvoid * arg_3) {
+ ENTER_GL();
+ func_glNormalPointerEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormalPointerListIBM(GLenum arg_0, GLint arg_1, const GLvoid* * arg_2, GLint arg_3) {
+ ENTER_GL();
+ func_glNormalPointerListIBM(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormalPointervINTEL(GLenum arg_0, const GLvoid* * arg_1) {
+ ENTER_GL();
+ func_glNormalPointervINTEL(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTexGenParameterfSGIS(GLenum arg_0, GLfloat arg_1) {
+ ENTER_GL();
+ func_glPixelTexGenParameterfSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTexGenParameterfvSGIS(GLenum arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glPixelTexGenParameterfvSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTexGenParameteriSGIS(GLenum arg_0, GLint arg_1) {
+ ENTER_GL();
+ func_glPixelTexGenParameteriSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTexGenParameterivSGIS(GLenum arg_0, const GLint * arg_1) {
+ ENTER_GL();
+ func_glPixelTexGenParameterivSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTexGenSGIX(GLenum arg_0) {
+ ENTER_GL();
+ func_glPixelTexGenSGIX(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTransformParameterfEXT(GLenum arg_0, GLenum arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glPixelTransformParameterfEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTransformParameterfvEXT(GLenum arg_0, GLenum arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glPixelTransformParameterfvEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTransformParameteriEXT(GLenum arg_0, GLenum arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glPixelTransformParameteriEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTransformParameterivEXT(GLenum arg_0, GLenum arg_1, const GLint * arg_2) {
+ ENTER_GL();
+ func_glPixelTransformParameterivEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPointParameterfEXT(GLenum arg_0, GLfloat arg_1) {
+ ENTER_GL();
+ func_glPointParameterfEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPointParameterfSGIS(GLenum arg_0, GLfloat arg_1) {
+ ENTER_GL();
+ func_glPointParameterfSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPointParameterfvEXT(GLenum arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glPointParameterfvEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPointParameterfvSGIS(GLenum arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glPointParameterfvSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+GLint WINAPI wine_glPollInstrumentsSGIX(GLint * arg_0) {
+ GLint ret;
+ ENTER_GL();
+ ret = func_glPollInstrumentsSGIX(arg_0);
+ LEAVE_GL();
+ return ret;
+}
+
+void WINAPI wine_glPolygonOffsetEXT(GLfloat arg_0, GLfloat arg_1) {
+ ENTER_GL();
+ func_glPolygonOffsetEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPrioritizeTexturesEXT(GLsizei arg_0, const GLuint * arg_1, const GLclampf * arg_2) {
+ ENTER_GL();
+ func_glPrioritizeTexturesEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReadInstrumentsSGIX(GLint arg_0) {
+ ENTER_GL();
+ func_glReadInstrumentsSGIX(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReferencePlaneSGIX(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glReferencePlaneSGIX(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodePointer(GLenum arg_0, GLsizei arg_1, const GLvoid* * arg_2) {
+ ENTER_GL();
+ func_glReplacementCodePointer(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeubSUN(GLubyte arg_0) {
+ ENTER_GL();
+ func_glReplacementCodeubSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeubvSUN(const GLubyte * arg_0) {
+ ENTER_GL();
+ func_glReplacementCodeubvSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiColor3fVertex3fSUN(GLenum arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6) {
+ ENTER_GL();
+ func_glReplacementCodeuiColor3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiColor3fVertex3fvSUN(const GLenum * arg_0, const GLfloat * arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glReplacementCodeuiColor3fVertex3fvSUN(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiColor4fNormal3fVertex3fSUN(GLenum arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7, GLfloat arg_8, GLfloat arg_9, GLfloat arg_10) {
+ ENTER_GL();
+ func_glReplacementCodeuiColor4fNormal3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9, arg_10);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiColor4fNormal3fVertex3fvSUN(const GLenum * arg_0, const GLfloat * arg_1, const GLfloat * arg_2, const GLfloat * arg_3) {
+ ENTER_GL();
+ func_glReplacementCodeuiColor4fNormal3fVertex3fvSUN(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiColor4ubVertex3fSUN(GLenum arg_0, GLubyte arg_1, GLubyte arg_2, GLubyte arg_3, GLubyte arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7) {
+ ENTER_GL();
+ func_glReplacementCodeuiColor4ubVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiColor4ubVertex3fvSUN(const GLenum * arg_0, const GLubyte * arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glReplacementCodeuiColor4ubVertex3fvSUN(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiNormal3fVertex3fSUN(GLenum arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6) {
+ ENTER_GL();
+ func_glReplacementCodeuiNormal3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiNormal3fVertex3fvSUN(const GLenum * arg_0, const GLfloat * arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glReplacementCodeuiNormal3fVertex3fvSUN(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiSUN(GLuint arg_0) {
+ ENTER_GL();
+ func_glReplacementCodeuiSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(GLenum arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7, GLfloat arg_8, GLfloat arg_9, GLfloat arg_10, GLfloat arg_11, GLfloat arg_12) {
+ ENTER_GL();
+ func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9, arg_10, arg_11, arg_12);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(const GLenum * arg_0, const GLfloat * arg_1, const GLfloat * arg_2, const GLfloat * arg_3, const GLfloat * arg_4) {
+ ENTER_GL();
+ func_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(GLenum arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7, GLfloat arg_8) {
+ ENTER_GL();
+ func_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(const GLenum * arg_0, const GLfloat * arg_1, const GLfloat * arg_2, const GLfloat * arg_3) {
+ ENTER_GL();
+ func_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiTexCoord2fVertex3fSUN(GLenum arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5) {
+ ENTER_GL();
+ func_glReplacementCodeuiTexCoord2fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiTexCoord2fVertex3fvSUN(const GLenum * arg_0, const GLfloat * arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glReplacementCodeuiTexCoord2fVertex3fvSUN(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiVertex3fSUN(GLenum arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3) {
+ ENTER_GL();
+ func_glReplacementCodeuiVertex3fSUN(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuiVertex3fvSUN(const GLenum * arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glReplacementCodeuiVertex3fvSUN(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeuivSUN(const GLuint * arg_0) {
+ ENTER_GL();
+ func_glReplacementCodeuivSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeusSUN(GLushort arg_0) {
+ ENTER_GL();
+ func_glReplacementCodeusSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReplacementCodeusvSUN(const GLushort * arg_0) {
+ ENTER_GL();
+ func_glReplacementCodeusvSUN(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glResetHistogramEXT(GLenum arg_0) {
+ ENTER_GL();
+ func_glResetHistogramEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glResetMinmaxEXT(GLenum arg_0) {
+ ENTER_GL();
+ func_glResetMinmaxEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glResizeBuffersMESA() {
+ ENTER_GL();
+ func_glResizeBuffersMESA();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSampleCoverageARB(GLclampf arg_0, GLboolean arg_1) {
+ ENTER_GL();
+ func_glSampleCoverageARB(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSampleMaskEXT(GLclampf arg_0, GLboolean arg_1) {
+ ENTER_GL();
+ func_glSampleMaskEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSampleMaskSGIS(GLclampf arg_0, GLboolean arg_1) {
+ ENTER_GL();
+ func_glSampleMaskSGIS(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSamplePassARB(GLenum arg_0) {
+ ENTER_GL();
+ func_glSamplePassARB(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSamplePatternEXT(GLenum arg_0) {
+ ENTER_GL();
+ func_glSamplePatternEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSamplePatternSGIS(GLenum arg_0) {
+ ENTER_GL();
+ func_glSamplePatternSGIS(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3bEXT(GLbyte arg_0, GLbyte arg_1, GLbyte arg_2) {
+ ENTER_GL();
+ func_glSecondaryColor3bEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3bvEXT(const GLbyte * arg_0) {
+ ENTER_GL();
+ func_glSecondaryColor3bvEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3dEXT(GLdouble arg_0, GLdouble arg_1, GLdouble arg_2) {
+ ENTER_GL();
+ func_glSecondaryColor3dEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3dvEXT(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glSecondaryColor3dvEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3fEXT(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glSecondaryColor3fEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3fvEXT(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glSecondaryColor3fvEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3iEXT(GLint arg_0, GLint arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glSecondaryColor3iEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3ivEXT(const GLint * arg_0) {
+ ENTER_GL();
+ func_glSecondaryColor3ivEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3sEXT(GLshort arg_0, GLshort arg_1, GLshort arg_2) {
+ ENTER_GL();
+ func_glSecondaryColor3sEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3svEXT(const GLshort * arg_0) {
+ ENTER_GL();
+ func_glSecondaryColor3svEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3ubEXT(GLubyte arg_0, GLubyte arg_1, GLubyte arg_2) {
+ ENTER_GL();
+ func_glSecondaryColor3ubEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3ubvEXT(const GLubyte * arg_0) {
+ ENTER_GL();
+ func_glSecondaryColor3ubvEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3uiEXT(GLuint arg_0, GLuint arg_1, GLuint arg_2) {
+ ENTER_GL();
+ func_glSecondaryColor3uiEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3uivEXT(const GLuint * arg_0) {
+ ENTER_GL();
+ func_glSecondaryColor3uivEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3usEXT(GLushort arg_0, GLushort arg_1, GLushort arg_2) {
+ ENTER_GL();
+ func_glSecondaryColor3usEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColor3usvEXT(const GLushort * arg_0) {
+ ENTER_GL();
+ func_glSecondaryColor3usvEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColorPointerEXT(GLint arg_0, GLenum arg_1, GLsizei arg_2, GLvoid * arg_3) {
+ ENTER_GL();
+ func_glSecondaryColorPointerEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSecondaryColorPointerListIBM(GLint arg_0, GLenum arg_1, GLint arg_2, const GLvoid* * arg_3, GLint arg_4) {
+ ENTER_GL();
+ func_glSecondaryColorPointerListIBM(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSeparableFilter2DEXT(GLenum arg_0, GLenum arg_1, GLsizei arg_2, GLsizei arg_3, GLenum arg_4, GLenum arg_5, const GLvoid * arg_6, const GLvoid * arg_7) {
+ ENTER_GL();
+ func_glSeparableFilter2DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSharpenTexFuncSGIS(GLenum arg_0, GLsizei arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glSharpenTexFuncSGIS(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSpriteParameterfSGIX(GLenum arg_0, GLfloat arg_1) {
+ ENTER_GL();
+ func_glSpriteParameterfSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSpriteParameterfvSGIX(GLenum arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glSpriteParameterfvSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSpriteParameteriSGIX(GLenum arg_0, GLint arg_1) {
+ ENTER_GL();
+ func_glSpriteParameteriSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSpriteParameterivSGIX(GLenum arg_0, const GLint * arg_1) {
+ ENTER_GL();
+ func_glSpriteParameterivSGIX(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glStartInstrumentsSGIX() {
+ ENTER_GL();
+ func_glStartInstrumentsSGIX();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glStopInstrumentsSGIX(GLint arg_0) {
+ ENTER_GL();
+ func_glStopInstrumentsSGIX(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTagSampleBufferSGIX() {
+ ENTER_GL();
+ func_glTagSampleBufferSGIX();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3b(GLbyte arg_0, GLbyte arg_1, GLbyte arg_2) {
+ ENTER_GL();
+ func_glTangent3b(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3bv(const GLbyte * arg_0) {
+ ENTER_GL();
+ func_glTangent3bv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3d(GLdouble arg_0, GLdouble arg_1, GLdouble arg_2) {
+ ENTER_GL();
+ func_glTangent3d(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3dv(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glTangent3dv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3f(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glTangent3f(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3fv(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glTangent3fv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3i(GLint arg_0, GLint arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glTangent3i(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3iv(const GLint * arg_0) {
+ ENTER_GL();
+ func_glTangent3iv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3s(GLshort arg_0, GLshort arg_1, GLshort arg_2) {
+ ENTER_GL();
+ func_glTangent3s(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangent3sv(const GLshort * arg_0) {
+ ENTER_GL();
+ func_glTangent3sv(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTangentPointerEXT(GLenum arg_0, GLsizei arg_1, const GLvoid * arg_2) {
+ ENTER_GL();
+ func_glTangentPointerEXT(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTbufferMask3DFX(GLuint arg_0) {
+ ENTER_GL();
+ func_glTbufferMask3DFX(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fColor3fVertex3fSUN(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7) {
+ ENTER_GL();
+ func_glTexCoord2fColor3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fColor3fVertex3fvSUN(const GLfloat * arg_0, const GLfloat * arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glTexCoord2fColor3fVertex3fvSUN(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fColor4fNormal3fVertex3fSUN(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7, GLfloat arg_8, GLfloat arg_9, GLfloat arg_10, GLfloat arg_11) {
+ ENTER_GL();
+ func_glTexCoord2fColor4fNormal3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9, arg_10, arg_11);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fColor4fNormal3fVertex3fvSUN(const GLfloat * arg_0, const GLfloat * arg_1, const GLfloat * arg_2, const GLfloat * arg_3) {
+ ENTER_GL();
+ func_glTexCoord2fColor4fNormal3fVertex3fvSUN(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fColor4ubVertex3fSUN(GLfloat arg_0, GLfloat arg_1, GLubyte arg_2, GLubyte arg_3, GLubyte arg_4, GLubyte arg_5, GLfloat arg_6, GLfloat arg_7, GLfloat arg_8) {
+ ENTER_GL();
+ func_glTexCoord2fColor4ubVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fColor4ubVertex3fvSUN(const GLfloat * arg_0, const GLubyte * arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glTexCoord2fColor4ubVertex3fvSUN(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fNormal3fVertex3fSUN(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7) {
+ ENTER_GL();
+ func_glTexCoord2fNormal3fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fNormal3fVertex3fvSUN(const GLfloat * arg_0, const GLfloat * arg_1, const GLfloat * arg_2) {
+ ENTER_GL();
+ func_glTexCoord2fNormal3fVertex3fvSUN(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fVertex3fSUN(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4) {
+ ENTER_GL();
+ func_glTexCoord2fVertex3fSUN(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fVertex3fvSUN(const GLfloat * arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glTexCoord2fVertex3fvSUN(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4fColor4fNormal3fVertex4fSUN(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7, GLfloat arg_8, GLfloat arg_9, GLfloat arg_10, GLfloat arg_11, GLfloat arg_12, GLfloat arg_13, GLfloat arg_14) {
+ ENTER_GL();
+ func_glTexCoord4fColor4fNormal3fVertex4fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9, arg_10, arg_11, arg_12, arg_13, arg_14);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4fColor4fNormal3fVertex4fvSUN(const GLfloat * arg_0, const GLfloat * arg_1, const GLfloat * arg_2, const GLfloat * arg_3) {
+ ENTER_GL();
+ func_glTexCoord4fColor4fNormal3fVertex4fvSUN(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4fVertex4fSUN(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3, GLfloat arg_4, GLfloat arg_5, GLfloat arg_6, GLfloat arg_7) {
+ ENTER_GL();
+ func_glTexCoord4fVertex4fSUN(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4fVertex4fvSUN(const GLfloat * arg_0, const GLfloat * arg_1) {
+ ENTER_GL();
+ func_glTexCoord4fVertex4fvSUN(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoordPointerEXT(GLint arg_0, GLenum arg_1, GLsizei arg_2, GLsizei arg_3, const GLvoid * arg_4) {
+ ENTER_GL();
+ func_glTexCoordPointerEXT(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoordPointerListIBM(GLint arg_0, GLenum arg_1, GLint arg_2, const GLvoid* * arg_3, GLint arg_4) {
+ ENTER_GL();
+ func_glTexCoordPointerListIBM(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoordPointervINTEL(GLint arg_0, GLenum arg_1, const GLvoid* * arg_2) {
+ ENTER_GL();
+ func_glTexCoordPointervINTEL(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexFilterFuncSGIS(GLenum arg_0, GLenum arg_1, GLsizei arg_2, const GLfloat * arg_3) {
+ ENTER_GL();
+ func_glTexFilterFuncSGIS(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexImage3DEXT(GLenum arg_0, GLint arg_1, GLenum arg_2, GLsizei arg_3, GLsizei arg_4, GLsizei arg_5, GLint arg_6, GLenum arg_7, GLenum arg_8, const GLvoid * arg_9) {
+ ENTER_GL();
+ func_glTexImage3DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexImage4DSGIS(GLenum arg_0, GLint arg_1, GLenum arg_2, GLsizei arg_3, GLsizei arg_4, GLsizei arg_5, GLsizei arg_6, GLint arg_7, GLenum arg_8, GLenum arg_9, const GLvoid * arg_10) {
+ ENTER_GL();
+ func_glTexImage4DSGIS(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9, arg_10);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexSubImage1DEXT(GLenum arg_0, GLint arg_1, GLint arg_2, GLsizei arg_3, GLenum arg_4, GLenum arg_5, const GLvoid * arg_6) {
+ ENTER_GL();
+ func_glTexSubImage1DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexSubImage2DEXT(GLenum arg_0, GLint arg_1, GLint arg_2, GLint arg_3, GLsizei arg_4, GLsizei arg_5, GLenum arg_6, GLenum arg_7, const GLvoid * arg_8) {
+ ENTER_GL();
+ func_glTexSubImage2DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexSubImage3DEXT(GLenum arg_0, GLint arg_1, GLint arg_2, GLint arg_3, GLint arg_4, GLsizei arg_5, GLsizei arg_6, GLsizei arg_7, GLenum arg_8, GLenum arg_9, const GLvoid * arg_10) {
+ ENTER_GL();
+ func_glTexSubImage3DEXT(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9, arg_10);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexSubImage4DSGIS(GLenum arg_0, GLint arg_1, GLint arg_2, GLint arg_3, GLint arg_4, GLint arg_5, GLsizei arg_6, GLsizei arg_7, GLsizei arg_8, GLsizei arg_9, GLenum arg_10, GLenum arg_11, const GLvoid * arg_12) {
+ ENTER_GL();
+ func_glTexSubImage4DSGIS(arg_0, arg_1, arg_2, arg_3, arg_4, arg_5, arg_6, arg_7, arg_8, arg_9, arg_10, arg_11, arg_12);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTextureLightEXT(GLenum arg_0) {
+ ENTER_GL();
+ func_glTextureLightEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTextureMaterialEXT(GLenum arg_0, GLenum arg_1) {
+ ENTER_GL();
+ func_glTextureMaterialEXT(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTextureNormalEXT(GLenum arg_0) {
+ ENTER_GL();
+ func_glTextureNormalEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glUnlockArraysEXT() {
+ ENTER_GL();
+ func_glUnlockArraysEXT();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertexArrayRangeNV(GLsizei arg_0, const GLvoid * arg_1) {
+ ENTER_GL();
+ func_glVertexArrayRangeNV(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertexPointerEXT(GLint arg_0, GLenum arg_1, GLsizei arg_2, GLsizei arg_3, const GLvoid * arg_4) {
+ ENTER_GL();
+ func_glVertexPointerEXT(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertexPointerListIBM(GLint arg_0, GLenum arg_1, GLint arg_2, const GLvoid* * arg_3, GLint arg_4) {
+ ENTER_GL();
+ func_glVertexPointerListIBM(arg_0, arg_1, arg_2, arg_3, arg_4);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertexPointervINTEL(GLint arg_0, GLenum arg_1, const GLvoid* * arg_2) {
+ ENTER_GL();
+ func_glVertexPointervINTEL(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertexWeightPointerEXT(GLsizei arg_0, GLenum arg_1, GLsizei arg_2, const GLvoid * arg_3) {
+ ENTER_GL();
+ func_glVertexWeightPointerEXT(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertexWeightfEXT(GLfloat arg_0) {
+ ENTER_GL();
+ func_glVertexWeightfEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertexWeightfvEXT(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glVertexWeightfvEXT(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos2dMESA(GLdouble arg_0, GLdouble arg_1) {
+ ENTER_GL();
+ func_glWindowPos2dMESA(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos2dvMESA(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glWindowPos2dvMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos2fMESA(GLfloat arg_0, GLfloat arg_1) {
+ ENTER_GL();
+ func_glWindowPos2fMESA(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos2fvMESA(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glWindowPos2fvMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos2iMESA(GLint arg_0, GLint arg_1) {
+ ENTER_GL();
+ func_glWindowPos2iMESA(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos2ivMESA(const GLint * arg_0) {
+ ENTER_GL();
+ func_glWindowPos2ivMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos2sMESA(GLshort arg_0, GLshort arg_1) {
+ ENTER_GL();
+ func_glWindowPos2sMESA(arg_0, arg_1);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos2svMESA(const GLshort * arg_0) {
+ ENTER_GL();
+ func_glWindowPos2svMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos3dMESA(GLdouble arg_0, GLdouble arg_1, GLdouble arg_2) {
+ ENTER_GL();
+ func_glWindowPos3dMESA(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos3dvMESA(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glWindowPos3dvMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos3fMESA(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2) {
+ ENTER_GL();
+ func_glWindowPos3fMESA(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos3fvMESA(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glWindowPos3fvMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos3iMESA(GLint arg_0, GLint arg_1, GLint arg_2) {
+ ENTER_GL();
+ func_glWindowPos3iMESA(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos3ivMESA(const GLint * arg_0) {
+ ENTER_GL();
+ func_glWindowPos3ivMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos3sMESA(GLshort arg_0, GLshort arg_1, GLshort arg_2) {
+ ENTER_GL();
+ func_glWindowPos3sMESA(arg_0, arg_1, arg_2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos3svMESA(const GLshort * arg_0) {
+ ENTER_GL();
+ func_glWindowPos3svMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos4dMESA(GLdouble arg_0, GLdouble arg_1, GLdouble arg_2, GLdouble arg_3) {
+ ENTER_GL();
+ func_glWindowPos4dMESA(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos4dvMESA(const GLdouble * arg_0) {
+ ENTER_GL();
+ func_glWindowPos4dvMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos4fMESA(GLfloat arg_0, GLfloat arg_1, GLfloat arg_2, GLfloat arg_3) {
+ ENTER_GL();
+ func_glWindowPos4fMESA(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos4fvMESA(const GLfloat * arg_0) {
+ ENTER_GL();
+ func_glWindowPos4fvMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos4iMESA(GLint arg_0, GLint arg_1, GLint arg_2, GLint arg_3) {
+ ENTER_GL();
+ func_glWindowPos4iMESA(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos4ivMESA(const GLint * arg_0) {
+ ENTER_GL();
+ func_glWindowPos4ivMESA(arg_0);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos4sMESA(GLshort arg_0, GLshort arg_1, GLshort arg_2, GLshort arg_3) {
+ ENTER_GL();
+ func_glWindowPos4sMESA(arg_0, arg_1, arg_2, arg_3);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glWindowPos4svMESA(const GLshort * arg_0) {
+ ENTER_GL();
+ func_glWindowPos4svMESA(arg_0);
+ LEAVE_GL();
+}
+
diff --git a/dlls/opengl32/opengl_ext.h b/dlls/opengl32/opengl_ext.h
new file mode 100644
index 0000000..b09ce24
--- /dev/null
+++ b/dlls/opengl32/opengl_ext.h
@@ -0,0 +1,17 @@
+/* Typedefs for extensions loading
+
+ Copyright (c) 2000 Lionel Ulmer
+*/
+#ifndef __DLLS_OPENGL32_OPENGL_EXT_H
+#define __DLLS_OPENGL32_OPENGL_EXT_H
+
+typedef struct {
+ char *name; /* name of the extension */
+ void *func; /* pointer to the Wine function for this extension */
+ void **func_ptr; /* where to store the value of glXGetProcAddressARB */
+} OpenGL_extension;
+
+extern OpenGL_extension extension_registry[];
+extern int extension_registry_size;
+
+#endif /* __DLLS_OPENGL32_OPENGL_EXT_H */
diff --git a/dlls/opengl32/opengl_norm.c b/dlls/opengl32/opengl_norm.c
new file mode 100644
index 0000000..64d3b33
--- /dev/null
+++ b/dlls/opengl32/opengl_norm.c
@@ -0,0 +1,2471 @@
+
+/* Auto-generated file... Do not edit ! */
+
+#include "config.h"
+#include "wine_gl.h"
+
+
+void WINAPI wine_glClearIndex(GLfloat c ) {
+ ENTER_GL();
+ glClearIndex(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) {
+ ENTER_GL();
+ glClearColor(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glClear(GLbitfield mask ) {
+ ENTER_GL();
+ glClear(mask);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexMask(GLuint mask ) {
+ ENTER_GL();
+ glIndexMask(mask);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ) {
+ ENTER_GL();
+ glColorMask(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glAlphaFunc(GLenum func, GLclampf ref ) {
+ ENTER_GL();
+ glAlphaFunc(func, ref);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBlendFunc(GLenum sfactor, GLenum dfactor ) {
+ ENTER_GL();
+ glBlendFunc(sfactor, dfactor);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLogicOp(GLenum opcode ) {
+ ENTER_GL();
+ glLogicOp(opcode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCullFace(GLenum mode ) {
+ ENTER_GL();
+ glCullFace(mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFrontFace(GLenum mode ) {
+ ENTER_GL();
+ glFrontFace(mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPointSize(GLfloat size ) {
+ ENTER_GL();
+ glPointSize(size);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLineWidth(GLfloat width ) {
+ ENTER_GL();
+ glLineWidth(width);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLineStipple(GLint factor, GLushort pattern ) {
+ ENTER_GL();
+ glLineStipple(factor, pattern);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPolygonMode(GLenum face, GLenum mode ) {
+ ENTER_GL();
+ glPolygonMode(face, mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPolygonOffset(GLfloat factor, GLfloat units ) {
+ ENTER_GL();
+ glPolygonOffset(factor, units);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPolygonStipple(const GLubyte *mask ) {
+ ENTER_GL();
+ glPolygonStipple(mask);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetPolygonStipple(GLubyte *mask ) {
+ ENTER_GL();
+ glGetPolygonStipple(mask);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEdgeFlag(GLboolean flag ) {
+ ENTER_GL();
+ glEdgeFlag(flag);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEdgeFlagv(const GLboolean *flag ) {
+ ENTER_GL();
+ glEdgeFlagv(flag);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glScissor(GLint x, GLint y, GLsizei width, GLsizei height) {
+ ENTER_GL();
+ glScissor(x, y, width, height);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glClipPlane(GLenum plane, const GLdouble *equation ) {
+ ENTER_GL();
+ glClipPlane(plane, equation);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetClipPlane(GLenum plane, GLdouble *equation ) {
+ ENTER_GL();
+ glGetClipPlane(plane, equation);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDrawBuffer(GLenum mode ) {
+ ENTER_GL();
+ glDrawBuffer(mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReadBuffer(GLenum mode ) {
+ ENTER_GL();
+ glReadBuffer(mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEnable(GLenum cap ) {
+ ENTER_GL();
+ glEnable(cap);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDisable(GLenum cap ) {
+ ENTER_GL();
+ glDisable(cap);
+ LEAVE_GL();
+}
+
+GLboolean WINAPI wine_glIsEnabled(GLenum cap ) {
+ GLboolean ret;
+ ENTER_GL();
+ ret = glIsEnabled(cap);
+ LEAVE_GL();
+ return ret;
+}
+
+void WINAPI wine_glEnableClientState(GLenum cap ) {
+ ENTER_GL();
+ glEnableClientState(cap);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDisableClientState(GLenum cap ) {
+ ENTER_GL();
+ glDisableClientState(cap);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetBooleanv(GLenum pname, GLboolean *params ) {
+ ENTER_GL();
+ glGetBooleanv(pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetDoublev(GLenum pname, GLdouble *params ) {
+ ENTER_GL();
+ glGetDoublev(pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetFloatv(GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetFloatv(pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetIntegerv(GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetIntegerv(pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPushAttrib(GLbitfield mask ) {
+ ENTER_GL();
+ glPushAttrib(mask);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPopAttrib(void ) {
+ ENTER_GL();
+ glPopAttrib();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPushClientAttrib(GLbitfield mask ) {
+ ENTER_GL();
+ glPushClientAttrib(mask);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPopClientAttrib(void ) {
+ ENTER_GL();
+ glPopClientAttrib();
+ LEAVE_GL();
+}
+
+GLint WINAPI wine_glRenderMode(GLenum mode ) {
+ GLint ret;
+ ENTER_GL();
+ ret = glRenderMode(mode);
+ LEAVE_GL();
+ return ret;
+}
+
+GLenum WINAPI wine_glGetError(void ) {
+ GLenum ret;
+ ENTER_GL();
+ ret = glGetError();
+ LEAVE_GL();
+ return ret;
+}
+
+const GLubyte* WINAPI wine_glGetString(GLenum name ) {
+ const GLubyte* ret;
+ ENTER_GL();
+ ret = glGetString(name);
+ LEAVE_GL();
+ return ret;
+}
+
+void WINAPI wine_glFinish(void ) {
+ ENTER_GL();
+ glFinish();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFlush(void ) {
+ ENTER_GL();
+ glFlush();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glHint(GLenum target, GLenum mode ) {
+ ENTER_GL();
+ glHint(target, mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glClearDepth(GLclampd depth ) {
+ ENTER_GL();
+ glClearDepth(depth);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDepthFunc(GLenum func ) {
+ ENTER_GL();
+ glDepthFunc(func);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDepthMask(GLboolean flag ) {
+ ENTER_GL();
+ glDepthMask(flag);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDepthRange(GLclampd near_val, GLclampd far_val ) {
+ ENTER_GL();
+ glDepthRange(near_val, far_val);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) {
+ ENTER_GL();
+ glClearAccum(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glAccum(GLenum op, GLfloat value ) {
+ ENTER_GL();
+ glAccum(op, value);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMatrixMode(GLenum mode ) {
+ ENTER_GL();
+ glMatrixMode(mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val ) {
+ ENTER_GL();
+ glOrtho(left, right, bottom, top, near_val, far_val);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near_val, GLdouble far_val ) {
+ ENTER_GL();
+ glFrustum(left, right, bottom, top, near_val, far_val);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glViewport(GLint x, GLint y, GLsizei width, GLsizei height ) {
+ ENTER_GL();
+ glViewport(x, y, width, height);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPushMatrix(void ) {
+ ENTER_GL();
+ glPushMatrix();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPopMatrix(void ) {
+ ENTER_GL();
+ glPopMatrix();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLoadIdentity(void ) {
+ ENTER_GL();
+ glLoadIdentity();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLoadMatrixd(const GLdouble *m ) {
+ ENTER_GL();
+ glLoadMatrixd(m);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLoadMatrixf(const GLfloat *m ) {
+ ENTER_GL();
+ glLoadMatrixf(m);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultMatrixd(const GLdouble *m ) {
+ ENTER_GL();
+ glMultMatrixd(m);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultMatrixf(const GLfloat *m ) {
+ ENTER_GL();
+ glMultMatrixf(m);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z ) {
+ ENTER_GL();
+ glRotated(angle, x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z ) {
+ ENTER_GL();
+ glRotatef(angle, x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glScaled(GLdouble x, GLdouble y, GLdouble z ) {
+ ENTER_GL();
+ glScaled(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glScalef(GLfloat x, GLfloat y, GLfloat z ) {
+ ENTER_GL();
+ glScalef(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTranslated(GLdouble x, GLdouble y, GLdouble z ) {
+ ENTER_GL();
+ glTranslated(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTranslatef(GLfloat x, GLfloat y, GLfloat z ) {
+ ENTER_GL();
+ glTranslatef(x, y, z);
+ LEAVE_GL();
+}
+
+GLboolean WINAPI wine_glIsList(GLuint list ) {
+ GLboolean ret;
+ ENTER_GL();
+ ret = glIsList(list);
+ LEAVE_GL();
+ return ret;
+}
+
+void WINAPI wine_glDeleteLists(GLuint list, GLsizei range ) {
+ ENTER_GL();
+ glDeleteLists(list, range);
+ LEAVE_GL();
+}
+
+GLuint WINAPI wine_glGenLists(GLsizei range ) {
+ GLuint ret;
+ ENTER_GL();
+ ret = glGenLists(range);
+ LEAVE_GL();
+ return ret;
+}
+
+void WINAPI wine_glNewList(GLuint list, GLenum mode ) {
+ ENTER_GL();
+ glNewList(list, mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEndList(void ) {
+ ENTER_GL();
+ glEndList();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCallList(GLuint list ) {
+ ENTER_GL();
+ glCallList(list);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCallLists(GLsizei n, GLenum type, const GLvoid *lists ) {
+ ENTER_GL();
+ glCallLists(n, type, lists);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glListBase(GLuint base ) {
+ ENTER_GL();
+ glListBase(base);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBegin(GLenum mode ) {
+ ENTER_GL();
+ glBegin(mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEnd(void ) {
+ ENTER_GL();
+ glEnd();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex2d(GLdouble x, GLdouble y ) {
+ ENTER_GL();
+ glVertex2d(x, y);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex2f(GLfloat x, GLfloat y ) {
+ ENTER_GL();
+ glVertex2f(x, y);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex2i(GLint x, GLint y ) {
+ ENTER_GL();
+ glVertex2i(x, y);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex2s(GLshort x, GLshort y ) {
+ ENTER_GL();
+ glVertex2s(x, y);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex3d(GLdouble x, GLdouble y, GLdouble z ) {
+ ENTER_GL();
+ glVertex3d(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex3f(GLfloat x, GLfloat y, GLfloat z ) {
+ ENTER_GL();
+ glVertex3f(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex3i(GLint x, GLint y, GLint z ) {
+ ENTER_GL();
+ glVertex3i(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex3s(GLshort x, GLshort y, GLshort z ) {
+ ENTER_GL();
+ glVertex3s(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
+ ENTER_GL();
+ glVertex4d(x, y, z, w);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
+ ENTER_GL();
+ glVertex4f(x, y, z, w);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex4i(GLint x, GLint y, GLint z, GLint w ) {
+ ENTER_GL();
+ glVertex4i(x, y, z, w);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w ) {
+ ENTER_GL();
+ glVertex4s(x, y, z, w);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex2dv(const GLdouble *v ) {
+ ENTER_GL();
+ glVertex2dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex2fv(const GLfloat *v ) {
+ ENTER_GL();
+ glVertex2fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex2iv(const GLint *v ) {
+ ENTER_GL();
+ glVertex2iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex2sv(const GLshort *v ) {
+ ENTER_GL();
+ glVertex2sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex3dv(const GLdouble *v ) {
+ ENTER_GL();
+ glVertex3dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex3fv(const GLfloat *v ) {
+ ENTER_GL();
+ glVertex3fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex3iv(const GLint *v ) {
+ ENTER_GL();
+ glVertex3iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex3sv(const GLshort *v ) {
+ ENTER_GL();
+ glVertex3sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex4dv(const GLdouble *v ) {
+ ENTER_GL();
+ glVertex4dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex4fv(const GLfloat *v ) {
+ ENTER_GL();
+ glVertex4fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex4iv(const GLint *v ) {
+ ENTER_GL();
+ glVertex4iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertex4sv(const GLshort *v ) {
+ ENTER_GL();
+ glVertex4sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz ) {
+ ENTER_GL();
+ glNormal3b(nx, ny, nz);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz ) {
+ ENTER_GL();
+ glNormal3d(nx, ny, nz);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz ) {
+ ENTER_GL();
+ glNormal3f(nx, ny, nz);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3i(GLint nx, GLint ny, GLint nz ) {
+ ENTER_GL();
+ glNormal3i(nx, ny, nz);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3s(GLshort nx, GLshort ny, GLshort nz ) {
+ ENTER_GL();
+ glNormal3s(nx, ny, nz);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3bv(const GLbyte *v ) {
+ ENTER_GL();
+ glNormal3bv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3dv(const GLdouble *v ) {
+ ENTER_GL();
+ glNormal3dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3fv(const GLfloat *v ) {
+ ENTER_GL();
+ glNormal3fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3iv(const GLint *v ) {
+ ENTER_GL();
+ glNormal3iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormal3sv(const GLshort *v ) {
+ ENTER_GL();
+ glNormal3sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexd(GLdouble c ) {
+ ENTER_GL();
+ glIndexd(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexf(GLfloat c ) {
+ ENTER_GL();
+ glIndexf(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexi(GLint c ) {
+ ENTER_GL();
+ glIndexi(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexs(GLshort c ) {
+ ENTER_GL();
+ glIndexs(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexub(GLubyte c ) {
+ ENTER_GL();
+ glIndexub(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexdv(const GLdouble *c ) {
+ ENTER_GL();
+ glIndexdv(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexfv(const GLfloat *c ) {
+ ENTER_GL();
+ glIndexfv(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexiv(const GLint *c ) {
+ ENTER_GL();
+ glIndexiv(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexsv(const GLshort *c ) {
+ ENTER_GL();
+ glIndexsv(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexubv(const GLubyte *c ) {
+ ENTER_GL();
+ glIndexubv(c);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3b(GLbyte red, GLbyte green, GLbyte blue ) {
+ ENTER_GL();
+ glColor3b(red, green, blue);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3d(GLdouble red, GLdouble green, GLdouble blue ) {
+ ENTER_GL();
+ glColor3d(red, green, blue);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3f(GLfloat red, GLfloat green, GLfloat blue ) {
+ ENTER_GL();
+ glColor3f(red, green, blue);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3i(GLint red, GLint green, GLint blue ) {
+ ENTER_GL();
+ glColor3i(red, green, blue);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3s(GLshort red, GLshort green, GLshort blue ) {
+ ENTER_GL();
+ glColor3s(red, green, blue);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3ub(GLubyte red, GLubyte green, GLubyte blue ) {
+ ENTER_GL();
+ glColor3ub(red, green, blue);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3ui(GLuint red, GLuint green, GLuint blue ) {
+ ENTER_GL();
+ glColor3ui(red, green, blue);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3us(GLushort red, GLushort green, GLushort blue ) {
+ ENTER_GL();
+ glColor3us(red, green, blue);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha ) {
+ ENTER_GL();
+ glColor4b(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha ) {
+ ENTER_GL();
+ glColor4d(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) {
+ ENTER_GL();
+ glColor4f(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4i(GLint red, GLint green, GLint blue, GLint alpha ) {
+ ENTER_GL();
+ glColor4i(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha ) {
+ ENTER_GL();
+ glColor4s(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha ) {
+ ENTER_GL();
+ glColor4ub(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha ) {
+ ENTER_GL();
+ glColor4ui(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha ) {
+ ENTER_GL();
+ glColor4us(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3bv(const GLbyte *v ) {
+ ENTER_GL();
+ glColor3bv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3dv(const GLdouble *v ) {
+ ENTER_GL();
+ glColor3dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3fv(const GLfloat *v ) {
+ ENTER_GL();
+ glColor3fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3iv(const GLint *v ) {
+ ENTER_GL();
+ glColor3iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3sv(const GLshort *v ) {
+ ENTER_GL();
+ glColor3sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3ubv(const GLubyte *v ) {
+ ENTER_GL();
+ glColor3ubv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3uiv(const GLuint *v ) {
+ ENTER_GL();
+ glColor3uiv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor3usv(const GLushort *v ) {
+ ENTER_GL();
+ glColor3usv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4bv(const GLbyte *v ) {
+ ENTER_GL();
+ glColor4bv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4dv(const GLdouble *v ) {
+ ENTER_GL();
+ glColor4dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4fv(const GLfloat *v ) {
+ ENTER_GL();
+ glColor4fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4iv(const GLint *v ) {
+ ENTER_GL();
+ glColor4iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4sv(const GLshort *v ) {
+ ENTER_GL();
+ glColor4sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4ubv(const GLubyte *v ) {
+ ENTER_GL();
+ glColor4ubv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4uiv(const GLuint *v ) {
+ ENTER_GL();
+ glColor4uiv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColor4usv(const GLushort *v ) {
+ ENTER_GL();
+ glColor4usv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord1d(GLdouble s ) {
+ ENTER_GL();
+ glTexCoord1d(s);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord1f(GLfloat s ) {
+ ENTER_GL();
+ glTexCoord1f(s);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord1i(GLint s ) {
+ ENTER_GL();
+ glTexCoord1i(s);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord1s(GLshort s ) {
+ ENTER_GL();
+ glTexCoord1s(s);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2d(GLdouble s, GLdouble t ) {
+ ENTER_GL();
+ glTexCoord2d(s, t);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2f(GLfloat s, GLfloat t ) {
+ ENTER_GL();
+ glTexCoord2f(s, t);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2i(GLint s, GLint t ) {
+ ENTER_GL();
+ glTexCoord2i(s, t);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2s(GLshort s, GLshort t ) {
+ ENTER_GL();
+ glTexCoord2s(s, t);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord3d(GLdouble s, GLdouble t, GLdouble r ) {
+ ENTER_GL();
+ glTexCoord3d(s, t, r);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord3f(GLfloat s, GLfloat t, GLfloat r ) {
+ ENTER_GL();
+ glTexCoord3f(s, t, r);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord3i(GLint s, GLint t, GLint r ) {
+ ENTER_GL();
+ glTexCoord3i(s, t, r);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord3s(GLshort s, GLshort t, GLshort r ) {
+ ENTER_GL();
+ glTexCoord3s(s, t, r);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q ) {
+ ENTER_GL();
+ glTexCoord4d(s, t, r, q);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q ) {
+ ENTER_GL();
+ glTexCoord4f(s, t, r, q);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4i(GLint s, GLint t, GLint r, GLint q ) {
+ ENTER_GL();
+ glTexCoord4i(s, t, r, q);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q ) {
+ ENTER_GL();
+ glTexCoord4s(s, t, r, q);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord1dv(const GLdouble *v ) {
+ ENTER_GL();
+ glTexCoord1dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord1fv(const GLfloat *v ) {
+ ENTER_GL();
+ glTexCoord1fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord1iv(const GLint *v ) {
+ ENTER_GL();
+ glTexCoord1iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord1sv(const GLshort *v ) {
+ ENTER_GL();
+ glTexCoord1sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2dv(const GLdouble *v ) {
+ ENTER_GL();
+ glTexCoord2dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2fv(const GLfloat *v ) {
+ ENTER_GL();
+ glTexCoord2fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2iv(const GLint *v ) {
+ ENTER_GL();
+ glTexCoord2iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord2sv(const GLshort *v ) {
+ ENTER_GL();
+ glTexCoord2sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord3dv(const GLdouble *v ) {
+ ENTER_GL();
+ glTexCoord3dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord3fv(const GLfloat *v ) {
+ ENTER_GL();
+ glTexCoord3fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord3iv(const GLint *v ) {
+ ENTER_GL();
+ glTexCoord3iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord3sv(const GLshort *v ) {
+ ENTER_GL();
+ glTexCoord3sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4dv(const GLdouble *v ) {
+ ENTER_GL();
+ glTexCoord4dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4fv(const GLfloat *v ) {
+ ENTER_GL();
+ glTexCoord4fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4iv(const GLint *v ) {
+ ENTER_GL();
+ glTexCoord4iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoord4sv(const GLshort *v ) {
+ ENTER_GL();
+ glTexCoord4sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos2d(GLdouble x, GLdouble y ) {
+ ENTER_GL();
+ glRasterPos2d(x, y);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos2f(GLfloat x, GLfloat y ) {
+ ENTER_GL();
+ glRasterPos2f(x, y);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos2i(GLint x, GLint y ) {
+ ENTER_GL();
+ glRasterPos2i(x, y);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos2s(GLshort x, GLshort y ) {
+ ENTER_GL();
+ glRasterPos2s(x, y);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos3d(GLdouble x, GLdouble y, GLdouble z ) {
+ ENTER_GL();
+ glRasterPos3d(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos3f(GLfloat x, GLfloat y, GLfloat z ) {
+ ENTER_GL();
+ glRasterPos3f(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos3i(GLint x, GLint y, GLint z ) {
+ ENTER_GL();
+ glRasterPos3i(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos3s(GLshort x, GLshort y, GLshort z ) {
+ ENTER_GL();
+ glRasterPos3s(x, y, z);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w ) {
+ ENTER_GL();
+ glRasterPos4d(x, y, z, w);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w ) {
+ ENTER_GL();
+ glRasterPos4f(x, y, z, w);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos4i(GLint x, GLint y, GLint z, GLint w ) {
+ ENTER_GL();
+ glRasterPos4i(x, y, z, w);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w ) {
+ ENTER_GL();
+ glRasterPos4s(x, y, z, w);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos2dv(const GLdouble *v ) {
+ ENTER_GL();
+ glRasterPos2dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos2fv(const GLfloat *v ) {
+ ENTER_GL();
+ glRasterPos2fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos2iv(const GLint *v ) {
+ ENTER_GL();
+ glRasterPos2iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos2sv(const GLshort *v ) {
+ ENTER_GL();
+ glRasterPos2sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos3dv(const GLdouble *v ) {
+ ENTER_GL();
+ glRasterPos3dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos3fv(const GLfloat *v ) {
+ ENTER_GL();
+ glRasterPos3fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos3iv(const GLint *v ) {
+ ENTER_GL();
+ glRasterPos3iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos3sv(const GLshort *v ) {
+ ENTER_GL();
+ glRasterPos3sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos4dv(const GLdouble *v ) {
+ ENTER_GL();
+ glRasterPos4dv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos4fv(const GLfloat *v ) {
+ ENTER_GL();
+ glRasterPos4fv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos4iv(const GLint *v ) {
+ ENTER_GL();
+ glRasterPos4iv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRasterPos4sv(const GLshort *v ) {
+ ENTER_GL();
+ glRasterPos4sv(v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 ) {
+ ENTER_GL();
+ glRectd(x1, y1, x2, y2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 ) {
+ ENTER_GL();
+ glRectf(x1, y1, x2, y2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRecti(GLint x1, GLint y1, GLint x2, GLint y2 ) {
+ ENTER_GL();
+ glRecti(x1, y1, x2, y2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2 ) {
+ ENTER_GL();
+ glRects(x1, y1, x2, y2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRectdv(const GLdouble *v1, const GLdouble *v2 ) {
+ ENTER_GL();
+ glRectdv(v1, v2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRectfv(const GLfloat *v1, const GLfloat *v2 ) {
+ ENTER_GL();
+ glRectfv(v1, v2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRectiv(const GLint *v1, const GLint *v2 ) {
+ ENTER_GL();
+ glRectiv(v1, v2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glRectsv(const GLshort *v1, const GLshort *v2 ) {
+ ENTER_GL();
+ glRectsv(v1, v2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glVertexPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr ) {
+ ENTER_GL();
+ glVertexPointer(size, type, stride, ptr);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glNormalPointer(GLenum type, GLsizei stride, const GLvoid *ptr ) {
+ ENTER_GL();
+ glNormalPointer(type, stride, ptr);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr ) {
+ ENTER_GL();
+ glColorPointer(size, type, stride, ptr);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glIndexPointer(GLenum type, GLsizei stride, const GLvoid *ptr ) {
+ ENTER_GL();
+ glIndexPointer(type, stride, ptr);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const GLvoid *ptr ) {
+ ENTER_GL();
+ glTexCoordPointer(size, type, stride, ptr);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEdgeFlagPointer(GLsizei stride, const GLvoid *ptr ) {
+ ENTER_GL();
+ glEdgeFlagPointer(stride, ptr);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetPointerv(GLenum pname, void **params ) {
+ ENTER_GL();
+ glGetPointerv(pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glArrayElement(GLint i ) {
+ ENTER_GL();
+ glArrayElement(i);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDrawArrays(GLenum mode, GLint first, GLsizei count ) {
+ ENTER_GL();
+ glDrawArrays(mode, first, count);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices ) {
+ ENTER_GL();
+ glDrawElements(mode, count, type, indices);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer ) {
+ ENTER_GL();
+ glInterleavedArrays(format, stride, pointer);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glShadeModel(GLenum mode ) {
+ ENTER_GL();
+ glShadeModel(mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLightf(GLenum light, GLenum pname, GLfloat param ) {
+ ENTER_GL();
+ glLightf(light, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLighti(GLenum light, GLenum pname, GLint param ) {
+ ENTER_GL();
+ glLighti(light, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLightfv(GLenum light, GLenum pname, const GLfloat *params ) {
+ ENTER_GL();
+ glLightfv(light, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLightiv(GLenum light, GLenum pname, const GLint *params ) {
+ ENTER_GL();
+ glLightiv(light, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetLightfv(GLenum light, GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetLightfv(light, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetLightiv(GLenum light, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetLightiv(light, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLightModelf(GLenum pname, GLfloat param ) {
+ ENTER_GL();
+ glLightModelf(pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLightModeli(GLenum pname, GLint param ) {
+ ENTER_GL();
+ glLightModeli(pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLightModelfv(GLenum pname, const GLfloat *params ) {
+ ENTER_GL();
+ glLightModelfv(pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLightModeliv(GLenum pname, const GLint *params ) {
+ ENTER_GL();
+ glLightModeliv(pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMaterialf(GLenum face, GLenum pname, GLfloat param ) {
+ ENTER_GL();
+ glMaterialf(face, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMateriali(GLenum face, GLenum pname, GLint param ) {
+ ENTER_GL();
+ glMateriali(face, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMaterialfv(GLenum face, GLenum pname, const GLfloat *params ) {
+ ENTER_GL();
+ glMaterialfv(face, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMaterialiv(GLenum face, GLenum pname, const GLint *params ) {
+ ENTER_GL();
+ glMaterialiv(face, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetMaterialfv(face, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMaterialiv(GLenum face, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetMaterialiv(face, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorMaterial(GLenum face, GLenum mode ) {
+ ENTER_GL();
+ glColorMaterial(face, mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelZoom(GLfloat xfactor, GLfloat yfactor ) {
+ ENTER_GL();
+ glPixelZoom(xfactor, yfactor);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelStoref(GLenum pname, GLfloat param ) {
+ ENTER_GL();
+ glPixelStoref(pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelStorei(GLenum pname, GLint param ) {
+ ENTER_GL();
+ glPixelStorei(pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTransferf(GLenum pname, GLfloat param ) {
+ ENTER_GL();
+ glPixelTransferf(pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelTransferi(GLenum pname, GLint param ) {
+ ENTER_GL();
+ glPixelTransferi(pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelMapfv(GLenum map, GLint mapsize, const GLfloat *values ) {
+ ENTER_GL();
+ glPixelMapfv(map, mapsize, values);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelMapuiv(GLenum map, GLint mapsize, const GLuint *values ) {
+ ENTER_GL();
+ glPixelMapuiv(map, mapsize, values);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPixelMapusv(GLenum map, GLint mapsize, const GLushort *values ) {
+ ENTER_GL();
+ glPixelMapusv(map, mapsize, values);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetPixelMapfv(GLenum map, GLfloat *values ) {
+ ENTER_GL();
+ glGetPixelMapfv(map, values);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetPixelMapuiv(GLenum map, GLuint *values ) {
+ ENTER_GL();
+ glGetPixelMapuiv(map, values);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetPixelMapusv(GLenum map, GLushort *values ) {
+ ENTER_GL();
+ glGetPixelMapusv(map, values);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap ) {
+ ENTER_GL();
+ glBitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels ) {
+ ENTER_GL();
+ glReadPixels(x, y, width, height, format, type, pixels);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels ) {
+ ENTER_GL();
+ glDrawPixels(width, height, format, type, pixels);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type ) {
+ ENTER_GL();
+ glCopyPixels(x, y, width, height, type);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glStencilFunc(GLenum func, GLint ref, GLuint mask ) {
+ ENTER_GL();
+ glStencilFunc(func, ref, mask);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glStencilMask(GLuint mask ) {
+ ENTER_GL();
+ glStencilMask(mask);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glStencilOp(GLenum fail, GLenum zfail, GLenum zpass ) {
+ ENTER_GL();
+ glStencilOp(fail, zfail, zpass);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glClearStencil(GLint s ) {
+ ENTER_GL();
+ glClearStencil(s);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexGend(GLenum coord, GLenum pname, GLdouble param ) {
+ ENTER_GL();
+ glTexGend(coord, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexGenf(GLenum coord, GLenum pname, GLfloat param ) {
+ ENTER_GL();
+ glTexGenf(coord, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexGeni(GLenum coord, GLenum pname, GLint param ) {
+ ENTER_GL();
+ glTexGeni(coord, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexGendv(GLenum coord, GLenum pname, const GLdouble *params ) {
+ ENTER_GL();
+ glTexGendv(coord, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexGenfv(GLenum coord, GLenum pname, const GLfloat *params ) {
+ ENTER_GL();
+ glTexGenfv(coord, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexGeniv(GLenum coord, GLenum pname, const GLint *params ) {
+ ENTER_GL();
+ glTexGeniv(coord, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexGendv(GLenum coord, GLenum pname, GLdouble *params ) {
+ ENTER_GL();
+ glGetTexGendv(coord, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexGenfv(GLenum coord, GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetTexGenfv(coord, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexGeniv(GLenum coord, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetTexGeniv(coord, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexEnvf(GLenum target, GLenum pname, GLfloat param ) {
+ ENTER_GL();
+ glTexEnvf(target, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexEnvi(GLenum target, GLenum pname, GLint param ) {
+ ENTER_GL();
+ glTexEnvi(target, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params ) {
+ ENTER_GL();
+ glTexEnvfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexEnviv(GLenum target, GLenum pname, const GLint *params ) {
+ ENTER_GL();
+ glTexEnviv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetTexEnvfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexEnviv(GLenum target, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetTexEnviv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexParameterf(GLenum target, GLenum pname, GLfloat param ) {
+ ENTER_GL();
+ glTexParameterf(target, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexParameteri(GLenum target, GLenum pname, GLint param ) {
+ ENTER_GL();
+ glTexParameteri(target, pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params ) {
+ ENTER_GL();
+ glTexParameterfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexParameteriv(GLenum target, GLenum pname, const GLint *params ) {
+ ENTER_GL();
+ glTexParameteriv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params) {
+ ENTER_GL();
+ glGetTexParameterfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexParameteriv(GLenum target, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetTexParameteriv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetTexLevelParameterfv(target, level, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetTexLevelParameteriv(target, level, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexImage1D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels ) {
+ ENTER_GL();
+ glTexImage1D(target, level, internalFormat, width, border, format, type, pixels);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexImage2D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels ) {
+ ENTER_GL();
+ glTexImage2D(target, level, internalFormat, width, height, border, format, type, pixels);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels ) {
+ ENTER_GL();
+ glGetTexImage(target, level, format, type, pixels);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGenTextures(GLsizei n, GLuint *textures ) {
+ ENTER_GL();
+ glGenTextures(n, textures);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDeleteTextures(GLsizei n, const GLuint *textures) {
+ ENTER_GL();
+ glDeleteTextures(n, textures);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBindTexture(GLenum target, GLuint texture ) {
+ ENTER_GL();
+ glBindTexture(target, texture);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPrioritizeTextures(GLsizei n, const GLuint *textures, const GLclampf *priorities ) {
+ ENTER_GL();
+ glPrioritizeTextures(n, textures, priorities);
+ LEAVE_GL();
+}
+
+GLboolean WINAPI wine_glAreTexturesResident(GLsizei n, const GLuint *textures, GLboolean *residences ) {
+ GLboolean ret;
+ ENTER_GL();
+ ret = glAreTexturesResident(n, textures, residences);
+ LEAVE_GL();
+ return ret;
+}
+
+GLboolean WINAPI wine_glIsTexture(GLuint texture ) {
+ GLboolean ret;
+ ENTER_GL();
+ ret = glIsTexture(texture);
+ LEAVE_GL();
+ return ret;
+}
+
+void WINAPI wine_glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels ) {
+ ENTER_GL();
+ glTexSubImage1D(target, level, xoffset, width, format, type, pixels);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels ) {
+ ENTER_GL();
+ glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border ) {
+ ENTER_GL();
+ glCopyTexImage1D(target, level, internalformat, x, y, width, border);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) {
+ ENTER_GL();
+ glCopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width ) {
+ ENTER_GL();
+ glCopyTexSubImage1D(target, level, xoffset, x, y, width);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
+ ENTER_GL();
+ glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points ) {
+ ENTER_GL();
+ glMap1d(target, u1, u2, stride, order, points);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points ) {
+ ENTER_GL();
+ glMap1f(target, u1, u2, stride, order, points);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points ) {
+ ENTER_GL();
+ glMap2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points ) {
+ ENTER_GL();
+ glMap2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMapdv(GLenum target, GLenum query, GLdouble *v ) {
+ ENTER_GL();
+ glGetMapdv(target, query, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMapfv(GLenum target, GLenum query, GLfloat *v ) {
+ ENTER_GL();
+ glGetMapfv(target, query, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMapiv(GLenum target, GLenum query, GLint *v ) {
+ ENTER_GL();
+ glGetMapiv(target, query, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalCoord1d(GLdouble u ) {
+ ENTER_GL();
+ glEvalCoord1d(u);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalCoord1f(GLfloat u ) {
+ ENTER_GL();
+ glEvalCoord1f(u);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalCoord1dv(const GLdouble *u ) {
+ ENTER_GL();
+ glEvalCoord1dv(u);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalCoord1fv(const GLfloat *u ) {
+ ENTER_GL();
+ glEvalCoord1fv(u);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalCoord2d(GLdouble u, GLdouble v ) {
+ ENTER_GL();
+ glEvalCoord2d(u, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalCoord2f(GLfloat u, GLfloat v ) {
+ ENTER_GL();
+ glEvalCoord2f(u, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalCoord2dv(const GLdouble *u ) {
+ ENTER_GL();
+ glEvalCoord2dv(u);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalCoord2fv(const GLfloat *u ) {
+ ENTER_GL();
+ glEvalCoord2fv(u);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMapGrid1d(GLint un, GLdouble u1, GLdouble u2 ) {
+ ENTER_GL();
+ glMapGrid1d(un, u1, u2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMapGrid1f(GLint un, GLfloat u1, GLfloat u2 ) {
+ ENTER_GL();
+ glMapGrid1f(un, u1, u2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2 ) {
+ ENTER_GL();
+ glMapGrid2d(un, u1, u2, vn, v1, v2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2 ) {
+ ENTER_GL();
+ glMapGrid2f(un, u1, u2, vn, v1, v2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalPoint1(GLint i ) {
+ ENTER_GL();
+ glEvalPoint1(i);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalPoint2(GLint i, GLint j ) {
+ ENTER_GL();
+ glEvalPoint2(i, j);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalMesh1(GLenum mode, GLint i1, GLint i2 ) {
+ ENTER_GL();
+ glEvalMesh1(mode, i1, i2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ) {
+ ENTER_GL();
+ glEvalMesh2(mode, i1, i2, j1, j2);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogf(GLenum pname, GLfloat param ) {
+ ENTER_GL();
+ glFogf(pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogi(GLenum pname, GLint param ) {
+ ENTER_GL();
+ glFogi(pname, param);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogfv(GLenum pname, const GLfloat *params ) {
+ ENTER_GL();
+ glFogfv(pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFogiv(GLenum pname, const GLint *params ) {
+ ENTER_GL();
+ glFogiv(pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glFeedbackBuffer(GLsizei size, GLenum type, GLfloat *buffer ) {
+ ENTER_GL();
+ glFeedbackBuffer(size, type, buffer);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPassThrough(GLfloat token ) {
+ ENTER_GL();
+ glPassThrough(token);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSelectBuffer(GLsizei size, GLuint *buffer ) {
+ ENTER_GL();
+ glSelectBuffer(size, buffer);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glInitNames(void ) {
+ ENTER_GL();
+ glInitNames();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glLoadName(GLuint name ) {
+ ENTER_GL();
+ glLoadName(name);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPushName(GLuint name ) {
+ ENTER_GL();
+ glPushName(name);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glPopName(void ) {
+ ENTER_GL();
+ glPopName();
+ LEAVE_GL();
+}
+
+void WINAPI wine_glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices ) {
+ ENTER_GL();
+ glDrawRangeElements(mode, start, end, count, type, indices);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexImage3D(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels ) {
+ ENTER_GL();
+ glTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels) {
+ ENTER_GL();
+ glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) {
+ ENTER_GL();
+ glCopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table ) {
+ ENTER_GL();
+ glColorTable(target, internalformat, width, format, type, table);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data ) {
+ ENTER_GL();
+ glColorSubTable(target, start, count, format, type, data);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorTableParameteriv(GLenum target, GLenum pname, const GLint *params) {
+ ENTER_GL();
+ glColorTableParameteriv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glColorTableParameterfv(GLenum target, GLenum pname, const GLfloat *params) {
+ ENTER_GL();
+ glColorTableParameterfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width ) {
+ ENTER_GL();
+ glCopyColorSubTable(target, start, x, y, width);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
+ ENTER_GL();
+ glCopyColorTable(target, internalformat, x, y, width);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetColorTable(GLenum target, GLenum format, GLenum type, GLvoid *table ) {
+ ENTER_GL();
+ glGetColorTable(target, format, type, table);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetColorTableParameterfv(GLenum target, GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetColorTableParameterfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetColorTableParameteriv(GLenum target, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetColorTableParameteriv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBlendEquation(GLenum mode ) {
+ ENTER_GL();
+ glBlendEquation(mode);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) {
+ ENTER_GL();
+ glBlendColor(red, green, blue, alpha);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink ) {
+ ENTER_GL();
+ glHistogram(target, width, internalformat, sink);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glResetHistogram(GLenum target ) {
+ ENTER_GL();
+ glResetHistogram(target);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetHistogram(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values ) {
+ ENTER_GL();
+ glGetHistogram(target, reset, format, type, values);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetHistogramParameterfv(GLenum target, GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetHistogramParameterfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetHistogramParameteriv(GLenum target, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetHistogramParameteriv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMinmax(GLenum target, GLenum internalformat, GLboolean sink ) {
+ ENTER_GL();
+ glMinmax(target, internalformat, sink);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glResetMinmax(GLenum target ) {
+ ENTER_GL();
+ glResetMinmax(target);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMinmax(GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values ) {
+ ENTER_GL();
+ glGetMinmax(target, reset, format, types, values);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMinmaxParameterfv(GLenum target, GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetMinmaxParameterfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetMinmaxParameteriv(GLenum target, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetMinmaxParameteriv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image ) {
+ ENTER_GL();
+ glConvolutionFilter1D(target, internalformat, width, format, type, image);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image ) {
+ ENTER_GL();
+ glConvolutionFilter2D(target, internalformat, width, height, format, type, image);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params ) {
+ ENTER_GL();
+ glConvolutionParameterf(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionParameterfv(GLenum target, GLenum pname, const GLfloat *params ) {
+ ENTER_GL();
+ glConvolutionParameterfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionParameteri(GLenum target, GLenum pname, GLint params ) {
+ ENTER_GL();
+ glConvolutionParameteri(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glConvolutionParameteriv(GLenum target, GLenum pname, const GLint *params ) {
+ ENTER_GL();
+ glConvolutionParameteriv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ) {
+ ENTER_GL();
+ glCopyConvolutionFilter1D(target, internalformat, x, y, width);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height) {
+ ENTER_GL();
+ glCopyConvolutionFilter2D(target, internalformat, x, y, width, height);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetConvolutionFilter(GLenum target, GLenum format, GLenum type, GLvoid *image ) {
+ ENTER_GL();
+ glGetConvolutionFilter(target, format, type, image);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetConvolutionParameterfv(GLenum target, GLenum pname, GLfloat *params ) {
+ ENTER_GL();
+ glGetConvolutionParameterfv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetConvolutionParameteriv(GLenum target, GLenum pname, GLint *params ) {
+ ENTER_GL();
+ glGetConvolutionParameteriv(target, pname, params);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glSeparableFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column ) {
+ ENTER_GL();
+ glSeparableFilter2D(target, internalformat, width, height, format, type, row, column);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glGetSeparableFilter(GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ) {
+ ENTER_GL();
+ glGetSeparableFilter(target, format, type, row, column, span);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glActiveTextureARB(GLenum texture) {
+ ENTER_GL();
+ glActiveTextureARB(texture);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glClientActiveTextureARB(GLenum texture) {
+ ENTER_GL();
+ glClientActiveTextureARB(texture);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord1dARB(GLenum target, GLdouble s) {
+ ENTER_GL();
+ glMultiTexCoord1dARB(target, s);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord1dvARB(GLenum target, const GLdouble *v) {
+ ENTER_GL();
+ glMultiTexCoord1dvARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord1fARB(GLenum target, GLfloat s) {
+ ENTER_GL();
+ glMultiTexCoord1fARB(target, s);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord1fvARB(GLenum target, const GLfloat *v) {
+ ENTER_GL();
+ glMultiTexCoord1fvARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord1iARB(GLenum target, GLint s) {
+ ENTER_GL();
+ glMultiTexCoord1iARB(target, s);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord1ivARB(GLenum target, const GLint *v) {
+ ENTER_GL();
+ glMultiTexCoord1ivARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord1sARB(GLenum target, GLshort s) {
+ ENTER_GL();
+ glMultiTexCoord1sARB(target, s);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord1svARB(GLenum target, const GLshort *v) {
+ ENTER_GL();
+ glMultiTexCoord1svARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t) {
+ ENTER_GL();
+ glMultiTexCoord2dARB(target, s, t);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord2dvARB(GLenum target, const GLdouble *v) {
+ ENTER_GL();
+ glMultiTexCoord2dvARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t) {
+ ENTER_GL();
+ glMultiTexCoord2fARB(target, s, t);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord2fvARB(GLenum target, const GLfloat *v) {
+ ENTER_GL();
+ glMultiTexCoord2fvARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord2iARB(GLenum target, GLint s, GLint t) {
+ ENTER_GL();
+ glMultiTexCoord2iARB(target, s, t);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord2ivARB(GLenum target, const GLint *v) {
+ ENTER_GL();
+ glMultiTexCoord2ivARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t) {
+ ENTER_GL();
+ glMultiTexCoord2sARB(target, s, t);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord2svARB(GLenum target, const GLshort *v) {
+ ENTER_GL();
+ glMultiTexCoord2svARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r) {
+ ENTER_GL();
+ glMultiTexCoord3dARB(target, s, t, r);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord3dvARB(GLenum target, const GLdouble *v) {
+ ENTER_GL();
+ glMultiTexCoord3dvARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r) {
+ ENTER_GL();
+ glMultiTexCoord3fARB(target, s, t, r);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord3fvARB(GLenum target, const GLfloat *v) {
+ ENTER_GL();
+ glMultiTexCoord3fvARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r) {
+ ENTER_GL();
+ glMultiTexCoord3iARB(target, s, t, r);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord3ivARB(GLenum target, const GLint *v) {
+ ENTER_GL();
+ glMultiTexCoord3ivARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r) {
+ ENTER_GL();
+ glMultiTexCoord3sARB(target, s, t, r);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord3svARB(GLenum target, const GLshort *v) {
+ ENTER_GL();
+ glMultiTexCoord3svARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q) {
+ ENTER_GL();
+ glMultiTexCoord4dARB(target, s, t, r, q);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord4dvARB(GLenum target, const GLdouble *v) {
+ ENTER_GL();
+ glMultiTexCoord4dvARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q) {
+ ENTER_GL();
+ glMultiTexCoord4fARB(target, s, t, r, q);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord4fvARB(GLenum target, const GLfloat *v) {
+ ENTER_GL();
+ glMultiTexCoord4fvARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q) {
+ ENTER_GL();
+ glMultiTexCoord4iARB(target, s, t, r, q);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord4ivARB(GLenum target, const GLint *v) {
+ ENTER_GL();
+ glMultiTexCoord4ivARB(target, v);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q) {
+ ENTER_GL();
+ glMultiTexCoord4sARB(target, s, t, r, q);
+ LEAVE_GL();
+}
+
+void WINAPI wine_glMultiTexCoord4svARB(GLenum target, const GLshort *v) {
+ ENTER_GL();
+ glMultiTexCoord4svARB(target, v);
+ LEAVE_GL();
+}
+
diff --git a/dlls/opengl32/wgl.c b/dlls/opengl32/wgl.c
new file mode 100644
index 0000000..6109eb8
--- /dev/null
+++ b/dlls/opengl32/wgl.c
@@ -0,0 +1,276 @@
+/* Window-specific OpenGL functions implementation.
+
+ Copyright (c) 1999 Lionel Ulmer
+*/
+
+#include <stdlib.h>
+
+#include "config.h"
+#include "debugtools.h"
+#include "gdi.h"
+#include "dc.h"
+#include "windef.h"
+#include "wine_gl.h"
+#include "x11drv.h"
+
+#include "wgl.h"
+#include "opengl_ext.h"
+
+DEFAULT_DEBUG_CHANNEL(opengl)
+
+HGLRC WINAPI wglCreateContext(HDC hdc) {
+ DC * dc = DC_GetDCPtr( hdc );
+ X11DRV_PDEVICE *physDev;
+ XVisualInfo *vis;
+ GLXContext ret;
+
+ TRACE("(%08x)\n", hdc);
+
+ if (dc == NULL) {
+ ERR("Null DC !!!\n");
+ return NULL;
+ }
+
+ physDev = (X11DRV_PDEVICE *)dc->physDev;
+
+ /* First, get the visual for the choosen pixel format */
+ vis = physDev->visuals[physDev->current_pf - 1];
+
+ if (vis == NULL) {
+ ERR("NULL visual !!!\n");
+ /* Need to set errors here */
+ return NULL;
+ }
+
+ ENTER_GL();
+ ret = glXCreateContext(display, vis, NULL, True);
+ LEAVE_GL();
+
+ return (HGLRC) ret;
+}
+
+HGLRC WINAPI wglCreateLayerContext(HDC hdc,
+ int iLayerPlane) {
+ FIXME("(%08x,%d): stub !\n", hdc, iLayerPlane);
+
+ return NULL;
+}
+
+BOOL WINAPI wglCopyContext(HGLRC hglrcSrc,
+ HGLRC hglrcDst,
+ UINT mask) {
+ FIXME("(%p,%p,%d)\n", hglrcSrc, hglrcDst, mask);
+
+ return FALSE;
+}
+
+BOOL WINAPI wglDeleteContext(HGLRC hglrc) {
+ FIXME("(%p): stub !\n", hglrc);
+
+ return FALSE;
+}
+
+BOOL WINAPI wglDescribeLayerPlane(HDC hdc,
+ int iPixelFormat,
+ int iLayerPlane,
+ UINT nBytes,
+ LPLAYERPLANEDESCRIPTOR plpd) {
+ FIXME("(%08x,%d,%d,%d,%p)\n", hdc, iPixelFormat, iLayerPlane, nBytes, plpd);
+
+ return FALSE;
+}
+
+HGLRC WINAPI wglGetCurrentContext(void) {
+ GLXContext ret;
+
+ TRACE("()\n");
+
+ ENTER_GL();
+ ret = glXGetCurrentContext();
+ LEAVE_GL();
+
+ TRACE(" returning %p\n", ret);
+
+ return ret;
+}
+
+HDC WINAPI wglGetCurrentDC(void) {
+ GLXContext ret;
+
+ ENTER_GL();
+ ret = glXGetCurrentContext();
+ LEAVE_GL();
+
+ if (ret == NULL) {
+ TRACE("() no current context -> returning NULL\n");
+ return 0;
+ } else {
+ FIXME("()\n");
+
+ return 0;
+ }
+}
+
+int WINAPI wglGetLayerPaletteEntries(HDC hdc,
+ int iLayerPlane,
+ int iStart,
+ int cEntries,
+ const COLORREF *pcr) {
+ FIXME("(): stub !\n");
+
+ return 0;
+}
+
+static int compar(const void *elt_a, const void *elt_b) {
+ return strcmp(((OpenGL_extension *) elt_a)->name,
+ ((OpenGL_extension *) elt_b)->name);
+}
+
+void* WINAPI wglGetProcAddress(LPCSTR lpszProc) {
+ void *local_func;
+ static HMODULE hm = 0;
+
+ TRACE("(%s)\n", lpszProc);
+
+ if (hm == 0)
+ hm = GetModuleHandleA("opengl32");
+
+ /* First, look if it's not already defined in the 'standard' OpenGL functions */
+ if ((local_func = GetProcAddress(hm, lpszProc)) != NULL) {
+ TRACE("Found function in 'standard' OpenGL functions (%p)\n", local_func);
+ return local_func;
+ }
+
+ /* After that, look at the extensions defined in the Linux OpenGL library */
+ if ((local_func = glXGetProcAddressARB(lpszProc)) == NULL) {
+ char buf[256];
+ void *ret = NULL;
+
+ /* Remove the 3 last letters (EXT, ARB, ...).
+
+ I know that some extensions have more than 3 letters (MESA, NV,
+ INTEL, ...), but this is only a stop-gap measure to fix buggy
+ OpenGL drivers (moreover, it is only useful for old 1.0 apps
+ that query the glBindTextureEXT extension).
+ */
+ strncpy(buf, lpszProc, strlen(lpszProc) - 3);
+ buf[strlen(lpszProc) - 3] = '\0';
+ TRACE("Extension not found in the Linux OpenGL library, checking against libGL bug with %s..\n", buf);
+
+ ret = GetProcAddress(hm, buf);
+ if (ret != NULL) {
+ TRACE("Found function in main OpenGL library (%p) !\n", ret);
+ }
+
+ return ret;
+ } else {
+ OpenGL_extension ext;
+ OpenGL_extension *ret;
+
+ ext.name = (char *) lpszProc;
+ ret = (OpenGL_extension *) bsearch(&ext, extension_registry,
+ extension_registry_size, sizeof(OpenGL_extension), compar);
+
+ if (ret != NULL) {
+ TRACE("Returning function (%p)\n", ret->func);
+ *(ret->func_ptr) = local_func;
+
+ return ret->func;
+ } else {
+ ERR("Extension defined in the OpenGL library but NOT in opengl_ext.c... Please report (lionel.ulmer@free.fr) !\n");
+ return NULL;
+ }
+ }
+}
+
+BOOL WINAPI wglMakeCurrent(HDC hdc,
+ HGLRC hglrc) {
+ DC * dc = DC_GetDCPtr( hdc );
+ X11DRV_PDEVICE *physDev;
+ BOOL ret;
+
+ TRACE("(%08x,%p)\n", hdc, hglrc);
+
+ if (dc == NULL) {
+ ERR("Null DC !!!\n");
+ return FALSE;
+ }
+
+ physDev =(X11DRV_PDEVICE *)dc->physDev;
+
+ ENTER_GL();
+ ret = glXMakeCurrent(display, physDev->drawable, (GLXContext) hglrc);
+ LEAVE_GL();
+
+ return ret;
+}
+
+BOOL WINAPI wglRealizeLayerPalette(HDC hdc,
+ int iLayerPlane,
+ BOOL bRealize) {
+ FIXME("()\n");
+
+ return FALSE;
+}
+
+int WINAPI wglSetLayerPaletteEntries(HDC hdc,
+ int iLayerPlane,
+ int iStart,
+ int cEntries,
+ const COLORREF *pcr) {
+ FIXME("(): stub !\n");
+
+ return 0;
+}
+
+BOOL WINAPI wglShareLists(HGLRC hglrc1,
+ HGLRC hglrc2) {
+ FIXME("(): stub !\n");
+
+ return FALSE;
+}
+
+BOOL WINAPI wglSwapLayerBuffers(HDC hdc,
+ UINT fuPlanes) {
+ FIXME("(): stub !\n");
+
+ return FALSE;
+}
+
+BOOL WINAPI wglUseFontBitmaps(HDC hdc,
+ DWORD first,
+ DWORD count,
+ DWORD listBase) {
+ FIXME("(): stub !\n");
+
+ return FALSE;
+}
+
+BOOL WINAPI wglUseFontOutlines(HDC hdc,
+ DWORD first,
+ DWORD count,
+ DWORD listBase,
+ FLOAT deviation,
+ FLOAT extrusion,
+ int format,
+ LPGLYPHMETRICSFLOAT lpgmf) {
+ FIXME("(): stub !\n");
+
+ return FALSE;
+}
+
+/* This is for brain-dead applications that use OpenGL functions before even
+ creating a rendering context.... */
+DECL_GLOBAL_CONSTRUCTOR(OpenGL_create_default_context) {
+ int num;
+ XVisualInfo template;
+ XVisualInfo *vis;
+ GLXContext cx;
+
+ ENTER_GL();
+ template.visualid = XVisualIDFromVisual(visual);
+ vis = XGetVisualInfo(display, VisualIDMask, &template, &num);
+ cx=glXCreateContext(display, vis, 0, GL_TRUE);
+ glXMakeCurrent(display, X11DRV_GetXRootWindow(), cx);
+ LEAVE_GL();
+}
diff --git a/dlls/opengl32/wgl.h b/dlls/opengl32/wgl.h
new file mode 100644
index 0000000..aa7ae30
--- /dev/null
+++ b/dlls/opengl32/wgl.h
@@ -0,0 +1,103 @@
+/* Window-specific OpenGL functions implementation.
+
+ Copyright (c) 2000 Lionel Ulmer
+*/
+
+#ifndef __DLLS_OPENGL32_WGL_H
+#define __DLLS_OPENGL32_WGL_H
+
+#include "gdi.h"
+
+typedef void *HGLRC;
+
+typedef struct {
+ WORD nSize;
+ WORD nVersion;
+ DWORD dwFlags;
+ BYTE iPixelType;
+ BYTE cColorBits;
+ BYTE cRedBits;
+ BYTE cRedShift;
+ BYTE cGreenBits;
+ BYTE cGreenShift;
+ BYTE cBlueBits;
+ BYTE cBlueShift;
+ BYTE cAlphaBits;
+ BYTE cAlphaShift;
+ BYTE cAccumBits;
+ BYTE cAccumRedBits;
+ BYTE cAccumGreenBits;
+ BYTE cAccumBlueBits;
+ BYTE cAccumAlphaBits;
+ BYTE cDepthBits;
+ BYTE cStencilBits;
+ BYTE cAuxBuffers;
+ BYTE iLayerPlane;
+ BYTE bReserved;
+ COLORREF crTransparent;
+} LAYERPLANEDESCRIPTOR;
+typedef LAYERPLANEDESCRIPTOR* LPLAYERPLANEDESCRIPTOR;
+
+typedef struct {
+ FLOAT x;
+ FLOAT y;
+} POINTFLOAT;
+
+typedef struct {
+ FLOAT gmfBlackBoxX;
+ FLOAT gmfBlackBoxY;
+ POINTFLOAT gmfptGlyphOrigin;
+ FLOAT gmfCellIncX;
+ FLOAT gmfCellIncY;
+} GLYPHMETRICSFLOAT;
+typedef GLYPHMETRICSFLOAT *LPGLYPHMETRICSFLOAT;
+
+HGLRC WINAPI wglCreateContext(HDC hdc) ;
+HGLRC WINAPI wglCreateLayerContext(HDC hdc,
+ int iLayerPlane) ;
+BOOL WINAPI wglCopyContext(HGLRC hglrcSrc,
+ HGLRC hglrcDst,
+ UINT mask) ;
+BOOL WINAPI wglDeleteContext(HGLRC hglrc) ;
+BOOL WINAPI wglDescribeLayerPlane(HDC hdc,
+ int iPixelFormat,
+ int iLayerPlane,
+ UINT nBytes,
+ LPLAYERPLANEDESCRIPTOR plpd) ;
+HGLRC WINAPI wglGetCurrentContext(void) ;
+HDC WINAPI wglGetCurrentDC(void) ;
+int WINAPI wglGetLayerPaletteEntries(HDC hdc,
+ int iLayerPlane,
+ int iStart,
+ int cEntries,
+ const COLORREF *pcr) ;
+void * WINAPI wglGetProcAddress(LPCSTR lpszProc) ;
+BOOL WINAPI wglMakeCurrent(HDC hdc,
+ HGLRC hglrc) ;
+BOOL WINAPI wglRealizeLayerPalette(HDC hdc,
+ int iLayerPlane,
+ BOOL bRealize) ;
+int WINAPI wglSetLayerPaletteEntries(HDC hdc,
+ int iLayerPlane,
+ int iStart,
+ int cEntries,
+ const COLORREF *pcr) ;
+BOOL WINAPI wglShareLists(HGLRC hglrc1,
+ HGLRC hglrc2) ;
+BOOL WINAPI wglSwapLayerBuffers(HDC hdc,
+ UINT fuPlanes);
+BOOL WINAPI wglUseFontBitmaps(HDC hdc,
+ DWORD first,
+ DWORD count,
+ DWORD listBase) ;
+BOOL WINAPI wglUseFontOutlines(HDC hdc,
+ DWORD first,
+ DWORD count,
+ DWORD listBase,
+ FLOAT deviation,
+ FLOAT extrusion,
+ int format,
+ LPGLYPHMETRICSFLOAT lpgmf) ;
+
+#endif /* __DLLS_OPENGL32_WGL_H */
+
diff --git a/graphics/enhmetafiledrv/init.c b/graphics/enhmetafiledrv/init.c
index 7133c1f..ee8c295 100644
--- a/graphics/enhmetafiledrv/init.c
+++ b/graphics/enhmetafiledrv/init.c
@@ -29,6 +29,7 @@
EMFDRV_BeginPath, /* pBeginPath */
NULL, /* pBitBlt */
NULL, /* pBitmapBits */
+ NULL, /* pChoosePixelFormat */
EMFDRV_Chord, /* pChord */
EMFDRV_CloseFigure, /* pCloseFigure */
NULL, /* pCreateBitmap */
@@ -37,6 +38,7 @@
NULL, /* pCreateDIBSection16 */
NULL, /* no implementation */ /* pDeleteDC */
NULL, /* pDeleteObject */
+ NULL, /* pDescribePixelFormat */
NULL, /* pDeviceCapabilities */
EMFDRV_Ellipse, /* pEllipse */
NULL, /* pEndDoc */
@@ -55,6 +57,7 @@
NULL, /* pGetCharWidth */
NULL, /* pGetDCOrgEx */
NULL, /* no implementation */ /* pGetPixel */
+ NULL, /* pGetPixelFormat */
NULL, /* pGetTextExtentPoint */
NULL, /* pGetTextMetrics */
EMFDRV_IntersectClipRect, /* pIntersectClipRect */
@@ -94,6 +97,7 @@
EMFDRV_SetMapMode, /* pSetMapMode */
EMFDRV_SetMapperFlags, /* pSetMapperFlags */
NULL, /* pSetPixel */
+ NULL, /* pSetPixelFormat */
EMFDRV_SetPolyFillMode, /* pSetPolyFillMode */
EMFDRV_SetROP2, /* pSetROP2 */
NULL, /* pSetRelAbs */
@@ -112,6 +116,7 @@
NULL, /* pStretchDIBits */
EMFDRV_StrokeAndFillPath, /* pStrokeAndFillPath */
EMFDRV_StrokePath, /* pStrokePath */
+ NULL, /* pSwapBuffers */
EMFDRV_WidenPath /* pWiddenPath */
};
diff --git a/graphics/metafiledrv/init.c b/graphics/metafiledrv/init.c
index f04aa5c..c78b4e1 100644
--- a/graphics/metafiledrv/init.c
+++ b/graphics/metafiledrv/init.c
@@ -27,6 +27,7 @@
MFDRV_BeginPath, /* pBeginPath */
MFDRV_BitBlt, /* pBitBlt */
NULL, /* pBitmapBits */
+ NULL, /* pChoosePixelFormat */
MFDRV_Chord, /* pChord */
MFDRV_CloseFigure, /* pCloseFigure */
NULL, /* pCreateBitmap */
@@ -35,6 +36,7 @@
NULL, /* pCreateDIBSection16 */
NULL, /* no implementation */ /* pDeleteDC */
NULL, /* pDeleteObject */
+ NULL, /* pDescribePixelFormat */
NULL, /* pDeviceCapabilities */
MFDRV_Ellipse, /* pEllipse */
NULL, /* pEndDoc */
@@ -53,6 +55,7 @@
NULL, /* pGetCharWidth */
NULL, /* pGetDCOrgEx */
NULL, /* no implementation */ /* pGetPixel */
+ NULL, /* pGetPixelFormat */
NULL, /* pGetTextExtentPoint */
NULL, /* pGetTextMetrics */
MFDRV_IntersectClipRect, /* pIntersectClipRect */
@@ -92,6 +95,7 @@
MFDRV_SetMapMode, /* pSetMapMode */
MFDRV_SetMapperFlags, /* pSetMapperFlags */
MFDRV_SetPixel, /* pSetPixel */
+ NULL, /* pSetPixelFormat */
MFDRV_SetPolyFillMode, /* pSetPolyFillMode */
MFDRV_SetROP2, /* pSetROP2 */
MFDRV_SetRelAbs, /* pSetRelAbs */
@@ -110,6 +114,7 @@
MFDRV_StretchDIBits, /* pStretchDIBits */
MFDRV_StrokeAndFillPath, /* pStrokeAndFillPath */
MFDRV_StrokePath, /* pStrokePath */
+ NULL, /* pSwapBuffers */
MFDRV_WidenPath /* pWidenPath */
};
diff --git a/graphics/painting.c b/graphics/painting.c
index 3413c58..a507c61 100644
--- a/graphics/painting.c
+++ b/graphics/painting.c
@@ -404,8 +404,17 @@
*/
INT WINAPI ChoosePixelFormat( HDC hdc, const LPPIXELFORMATDESCRIPTOR ppfd )
{
- FIXME("(%d,%p): stub\n",hdc,ppfd);
- return 1;
+ DC * dc = DC_GetDCPtr( hdc );
+
+ TRACE("(%08x,%p)\n",hdc,ppfd);
+
+ if (dc == NULL) return 0;
+ if (dc->funcs->pChoosePixelFormat == NULL) {
+ FIXME(" :stub\n");
+ return 0;
+ }
+
+ return dc->funcs->pChoosePixelFormat(dc,ppfd);
}
@@ -423,8 +432,16 @@
BOOL WINAPI SetPixelFormat( HDC hdc, INT iPixelFormat,
const PIXELFORMATDESCRIPTOR *ppfd)
{
- FIXME("(%d,%d,%p): stub\n",hdc,iPixelFormat,ppfd);
- return TRUE;
+ DC * dc = DC_GetDCPtr( hdc );
+
+ TRACE("(%d,%d,%p)\n",hdc,iPixelFormat,ppfd);
+
+ if (dc == NULL) return 0;
+ if (dc->funcs->pSetPixelFormat == NULL) {
+ FIXME(" :stub\n");
+ return 0;
+ }
+ return dc->funcs->pSetPixelFormat(dc,iPixelFormat,ppfd);
}
@@ -441,8 +458,16 @@
*/
INT WINAPI GetPixelFormat( HDC hdc )
{
- FIXME("(%d): stub\n",hdc);
- return 1;
+ DC * dc = DC_GetDCPtr( hdc );
+
+ TRACE("(%08x)\n",hdc);
+
+ if (dc == NULL) return 0;
+ if (dc->funcs->pGetPixelFormat == NULL) {
+ FIXME(" :stub\n");
+ return 0;
+ }
+ return dc->funcs->pGetPixelFormat(dc);
}
@@ -463,10 +488,18 @@
INT WINAPI DescribePixelFormat( HDC hdc, INT iPixelFormat, UINT nBytes,
LPPIXELFORMATDESCRIPTOR ppfd )
{
- FIXME("(%d,%d,%d,%p): stub\n",hdc,iPixelFormat,nBytes,ppfd);
+ DC * dc = DC_GetDCPtr( hdc );
+
+ TRACE("(%08x,%d,%d,%p): stub\n",hdc,iPixelFormat,nBytes,ppfd);
+
+ if (dc == NULL) return 0;
+ if (dc->funcs->pDescribePixelFormat == NULL) {
+ FIXME(" :stub\n");
ppfd->nSize = nBytes;
ppfd->nVersion = 1;
return 3;
+ }
+ return dc->funcs->pDescribePixelFormat(dc,iPixelFormat,nBytes,ppfd);
}
@@ -481,8 +514,16 @@
*/
BOOL WINAPI SwapBuffers( HDC hdc )
{
- FIXME("(%d): stub\n",hdc);
+ DC * dc = DC_GetDCPtr( hdc );
+
+ TRACE("(%08x)\n",hdc);
+
+ if (dc == NULL) return 0;
+ if (dc->funcs->pSwapBuffers == NULL) {
+ FIXME(" :stub\n");
return TRUE;
+ }
+ return dc->funcs->pSwapBuffers(dc);
}
diff --git a/graphics/psdrv/init.c b/graphics/psdrv/init.c
index 99d81d8..fef7145 100644
--- a/graphics/psdrv/init.c
+++ b/graphics/psdrv/init.c
@@ -31,6 +31,7 @@
NULL, /* pBeginPath */
NULL, /* pBitBlt */
NULL, /* pBitmapBits */
+ NULL, /* pChoosePixelFormat */
PSDRV_Chord, /* pChord */
NULL, /* pCloseFigure */
NULL, /* pCreateBitmap */
@@ -39,6 +40,7 @@
NULL, /* pCreateDIBSection16 */
PSDRV_DeleteDC, /* pDeleteDC */
NULL, /* pDeleteObject */
+ NULL, /* pDescribePixelFormat */
PSDRV_DeviceCapabilities, /* pDeviceCapabilities */
PSDRV_Ellipse, /* pEllipse */
PSDRV_EndDoc, /* pEndDoc */
@@ -57,6 +59,7 @@
PSDRV_GetCharWidth, /* pGetCharWidth */
NULL, /* pGetDCOrgEx */
NULL, /* pGetPixel */
+ NULL, /* pGetPixelFormat */
PSDRV_GetTextExtentPoint, /* pGetTextExtentPoint */
PSDRV_GetTextMetrics, /* pGetTextMetrics */
NULL, /* pIntersectClipRect */
@@ -96,6 +99,7 @@
NULL, /* pSetMapMode (optional) */
NULL, /* pSetMapperFlags */
PSDRV_SetPixel, /* pSetPixel */
+ NULL, /* pSetPixelFormat */
NULL, /* pSetPolyFillMode */
NULL, /* pSetROP2 */
NULL, /* pSetRelAbs */
@@ -114,6 +118,7 @@
PSDRV_StretchDIBits, /* pStretchDIBits */
NULL, /* pStrokeAndFillPath */
NULL, /* pStrokePath */
+ NULL, /* pSwapBuffers */
NULL /* pWidenPath */
};
diff --git a/graphics/ttydrv/init.c b/graphics/ttydrv/init.c
index 8b1a005..c3150c3 100644
--- a/graphics/ttydrv/init.c
+++ b/graphics/ttydrv/init.c
@@ -25,6 +25,7 @@
NULL, /* pBeginPath */
TTYDRV_DC_BitBlt, /* pBitBlt */
TTYDRV_DC_BitmapBits,/* pBitmapBits */
+ NULL, /* pChoosePixelFormat */
TTYDRV_DC_Chord, /* pChord */
NULL, /* pCloseFigure */
TTYDRV_DC_CreateBitmap, /* pCreateBitmap */
@@ -33,6 +34,7 @@
NULL, /* pCreateDIBSection16 */
TTYDRV_DC_DeleteDC, /* pDeleteDC */
TTYDRV_DC_DeleteObject, /* pDeleteObject */
+ NULL, /* pDescribePixelFormat */
NULL, /* pDeviceCapabilities */
TTYDRV_DC_Ellipse, /* pEllipse */
NULL, /* pEndDoc */
@@ -51,6 +53,7 @@
TTYDRV_DC_GetCharWidth, /* pGetCharWidth */
NULL, /* pGetDCOrgEx */
TTYDRV_DC_GetPixel, /* pGetPixel */
+ NULL, /* pGetPixelFormat */
TTYDRV_DC_GetTextExtentPoint, /* pGetTextExtentPoint */
TTYDRV_DC_GetTextMetrics, /* pGetTextMetrics */
NULL, /* pIntersectClipRect */
@@ -90,6 +93,7 @@
NULL, /* pSetMapMode (optional) */
NULL, /* pSetMapperFlags */
TTYDRV_DC_SetPixel, /* pSetPixel */
+ NULL, /* pSetPixelFormat */
NULL, /* pSetPolyFillMode */
NULL, /* pSetROP2 */
NULL, /* pSetRelAbs */
@@ -108,6 +112,7 @@
NULL, /* pStretchDIBits */
NULL, /* pStrokeAndFillPath */
NULL, /* pStrokePath */
+ NULL, /* pSwapBuffers */
NULL /* pWidenPath */
};
diff --git a/graphics/win16drv/init.c b/graphics/win16drv/init.c
index 412d535..f368757 100644
--- a/graphics/win16drv/init.c
+++ b/graphics/win16drv/init.c
@@ -53,6 +53,7 @@
NULL, /* pBeginPath */
NULL, /* pBitBlt */
NULL, /* pBitmapBits */
+ NULL, /* pChoosePixelFormat */
NULL, /* pChord */
NULL, /* pCloseFigure */
NULL, /* pCreateBitmap */
@@ -61,6 +62,7 @@
NULL, /* pCreateDIBSection16 */
NULL, /* pDeleteDC */
NULL, /* pDeleteObject */
+ NULL, /* pDescribePixelFormat */
WIN16DRV_DeviceCapabilities, /* pDeviceCapabilities */
WIN16DRV_Ellipse, /* pEllipse */
NULL, /* pEndDoc */
@@ -79,6 +81,7 @@
WIN16DRV_GetCharWidth, /* pGetCharWidth */
NULL, /* pGetDCOrgEx */
NULL, /* pGetPixel */
+ NULL, /* pGetPixelFormat */
WIN16DRV_GetTextExtentPoint, /* pGetTextExtentPoint */
WIN16DRV_GetTextMetrics, /* pGetTextMetrics */
NULL, /* pIntersectClipRect */
@@ -118,6 +121,7 @@
NULL, /* pSetMapMode */
NULL, /* pSetMapperFlags */
NULL, /* pSetPixel */
+ NULL, /* pSetPixelFormat */
NULL, /* pSetPolyFillMode */
NULL, /* pSetROP2 */
NULL, /* pSetRelAbs */
@@ -136,6 +140,7 @@
NULL, /* pStretchDIBits */
NULL, /* pStrokeAndFillPath */
NULL, /* pStrokePath */
+ NULL, /* pSwapBuffers */
NULL /* pWidenPath */
};
diff --git a/graphics/x11drv/Makefile.in b/graphics/x11drv/Makefile.in
index 679ad08..f7b8953 100644
--- a/graphics/x11drv/Makefile.in
+++ b/graphics/x11drv/Makefile.in
@@ -15,6 +15,7 @@
init.c \
objects.c \
oembitmap.c \
+ opengl.c \
palette.c \
pen.c \
text.c \
diff --git a/graphics/x11drv/init.c b/graphics/x11drv/init.c
index 13b7b74..d013535 100644
--- a/graphics/x11drv/init.c
+++ b/graphics/x11drv/init.c
@@ -38,6 +38,7 @@
NULL, /* pBeginPath */
X11DRV_BitBlt, /* pBitBlt */
X11DRV_BitmapBits, /* pBitmapBits */
+ X11DRV_ChoosePixelFormat, /* pChoosePixelFormat */
X11DRV_Chord, /* pChord */
NULL, /* pCloseFigure */
X11DRV_CreateBitmap, /* pCreateBitmap */
@@ -46,6 +47,7 @@
X11DRV_DIB_CreateDIBSection16, /* pCreateDIBSection16 */
X11DRV_DeleteDC, /* pDeleteDC */
X11DRV_DeleteObject, /* pDeleteObject */
+ X11DRV_DescribePixelFormat, /* pDescribePixelFormat */
NULL, /* pDeviceCapabilities */
X11DRV_Ellipse, /* pEllipse */
NULL, /* pEndDoc */
@@ -64,6 +66,7 @@
X11DRV_GetCharWidth, /* pGetCharWidth */
X11DRV_GetDCOrgEx, /* pGetDCOrgEx */
X11DRV_GetPixel, /* pGetPixel */
+ X11DRV_GetPixelFormat, /* pGetPixelFormat */
X11DRV_GetTextExtentPoint, /* pGetTextExtentPoint */
X11DRV_GetTextMetrics, /* pGetTextMetrics */
NULL, /* pIntersectClipRect */
@@ -103,6 +106,7 @@
NULL, /* pSetMapMode (optional) */
NULL, /* pSetMapperFlags */
X11DRV_SetPixel, /* pSetPixel */
+ X11DRV_SetPixelFormat, /* pSetPixelFormat */
NULL, /* pSetPolyFillMode */
NULL, /* pSetROP2 */
NULL, /* pSetRelAbs */
@@ -121,6 +125,7 @@
NULL, /* pStretchDIBits */
NULL, /* pStrokeAndFillPath */
NULL, /* pStrokePath */
+ X11DRV_SwapBuffers, /* pSwapBuffers */
NULL /* pWidenPath */
};
@@ -265,6 +270,9 @@
dc->w.hVisRgn = CreateRectRgnIndirect( &dc->w.totalExtent );
}
+ physDev->current_pf = 0;
+ physDev->used_visuals = 0;
+
if (!dc->w.hVisRgn)
{
TSXFreeGC( display, physDev->gc );
@@ -285,6 +293,8 @@
{
X11DRV_PDEVICE *physDev = (X11DRV_PDEVICE *)dc->physDev;
TSXFreeGC( display, physDev->gc );
+ while (physDev->used_visuals-- > 0)
+ TSXFree(physDev->visuals[physDev->used_visuals]);
HeapFree( GetProcessHeap(), 0, physDev );
dc->physDev = NULL;
return TRUE;
diff --git a/graphics/x11drv/opengl.c b/graphics/x11drv/opengl.c
new file mode 100644
index 0000000..c7ff05e
--- /dev/null
+++ b/graphics/x11drv/opengl.c
@@ -0,0 +1,343 @@
+/*
+ * X11DRV OpenGL functions
+ *
+ * Copyright 2000 Lionel Ulmer
+ *
+ */
+
+#include "config.h"
+
+#include "ts_xlib.h"
+
+#include <stdlib.h>
+#include <string.h>
+
+#include "debugtools.h"
+#include "gdi.h"
+#include "x11drv.h"
+#include "wine_gl.h"
+
+DEFAULT_DEBUG_CHANNEL(opengl)
+
+#ifdef HAVE_OPENGL
+
+static void dump_PIXELFORMATDESCRIPTOR(PIXELFORMATDESCRIPTOR *ppfd) {
+ DPRINTF(" - size / version : %d / %d\n", ppfd->nSize, ppfd->nVersion);
+ DPRINTF(" - dwFlags : ");
+#define TEST_AND_DUMP(t,tv) if ((t) & (tv)) DPRINTF(#tv " ")
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_DEPTH_DONTCARE);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_DOUBLEBUFFER);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_DOUBLEBUFFER_DONTCARE);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_DRAW_TO_WINDOW);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_DRAW_TO_BITMAP);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_GENERIC_ACCELERATED);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_GENERIC_FORMAT);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_NEED_PALETTE);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_NEED_SYSTEM_PALETTE);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_STEREO);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_STEREO_DONTCARE);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_SUPPORT_GDI);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_SUPPORT_OPENGL);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_SWAP_COPY);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_SWAP_EXCHANGE);
+ TEST_AND_DUMP(ppfd->dwFlags, PFD_SWAP_LAYER_BUFFERS);
+#undef TEST_AND_DUMP
+ DPRINTF("\n");
+
+ DPRINTF(" - iPixelType : ");
+ switch (ppfd->iPixelType) {
+ case PFD_TYPE_RGBA: DPRINTF("PFD_TYPE_RGBA"); break;
+ case PFD_TYPE_COLORINDEX: DPRINTF("PFD_TYPE_COLORINDEX"); break;
+ }
+ DPRINTF("\n");
+
+ DPRINTF(" - Color : %d\n", ppfd->cColorBits);
+ DPRINTF(" - Alpha : %d\n", ppfd->cAlphaBits);
+ DPRINTF(" - Accum : %d\n", ppfd->cAccumBits);
+ DPRINTF(" - Depth : %d\n", ppfd->cDepthBits);
+ DPRINTF(" - Stencil : %d\n", ppfd->cStencilBits);
+ DPRINTF(" - Aux : %d\n", ppfd->cAuxBuffers);
+
+ DPRINTF(" - iLayerType : ");
+ switch (ppfd->iLayerType) {
+ case PFD_MAIN_PLANE: DPRINTF("PFD_MAIN_PLANE"); break;
+ case PFD_OVERLAY_PLANE: DPRINTF("PFD_OVERLAY_PLANE"); break;
+ case PFD_UNDERLAY_PLANE: DPRINTF("PFD_UNDERLAY_PLANE"); break;
+ }
+ DPRINTF("\n");
+}
+
+/* X11DRV_ChoosePixelFormat
+
+ Equivalent of glXChooseVisual
+*/
+int X11DRV_ChoosePixelFormat(DC *dc,
+ const PIXELFORMATDESCRIPTOR *ppfd) {
+#define TEST_AND_ADD1(t,a) if (t) att_list[att_pos++] = a
+#define TEST_AND_ADD2(t,a,b) if (t) { att_list[att_pos++] = a; att_list[att_pos++] = b; }
+#define NULL_TEST_AND_ADD2(tv,a,b) att_list[att_pos++] = a; att_list[att_pos++] = ((tv) == 0 ? 0 : b)
+#define ADD2(a,b) att_list[att_pos++] = a; att_list[att_pos++] = b
+
+ X11DRV_PDEVICE *physDev = (X11DRV_PDEVICE *)dc->physDev;
+ int att_list[64];
+ int att_pos = 0;
+ XVisualInfo *vis;
+
+ if (TRACE_ON(opengl)) {
+ TRACE("(%p,%p)\n", dc, ppfd);
+
+ dump_PIXELFORMATDESCRIPTOR((PIXELFORMATDESCRIPTOR *) ppfd);
+ }
+
+ /* For the moment, we are dumb : we always allocate a new XVisualInfo structure,
+ we do not try to find an already found that could match */
+ if (physDev->used_visuals == MAX_PIXELFORMATS) {
+ ERR("Maximum number of visuals reached !\n");
+ /* Should SetError here... */
+ return 0;
+ }
+
+ if (ppfd->dwFlags & PFD_DRAW_TO_BITMAP) {
+ ERR("Flag not supported !\n");
+ /* Should SetError here... */
+ return 0;
+ }
+
+ /* Now, build the request to GLX */
+ TEST_AND_ADD1(ppfd->dwFlags & PFD_DOUBLEBUFFER, GLX_DOUBLEBUFFER);
+ TEST_AND_ADD1(ppfd->dwFlags & PFD_STEREO, GLX_STEREO);
+ TEST_AND_ADD1(ppfd->iPixelType == PFD_TYPE_RGBA, GLX_RGBA);
+ TEST_AND_ADD2(ppfd->iPixelType == PFD_TYPE_COLORINDEX, GLX_BUFFER_SIZE, ppfd->cColorBits);
+
+ NULL_TEST_AND_ADD2(ppfd->cDepthBits, GLX_DEPTH_SIZE, 8);
+ /* These flags are not supported yet...
+
+ NULL_TEST_AND_ADD2(ppfd->cAlphaBits, GLX_ALPHA_SIZE, 8);
+ ADD2(GLX_ACCUM_SIZE, ppfd->cAccumBits);
+ ADD2(GLX_STENCIL_SIZE, ppfd->cStencilBits);
+ ADD2(GLX_AUX_BUFFERS, ppfd->cAuxBuffers); */
+ att_list[att_pos] = None;
+
+ ENTER_GL(); {
+ /*
+ This command cannot be used as we need to use the default visual...
+ Let's hope it at least contains some OpenGL functionnalities
+
+ vis = glXChooseVisual(display, DefaultScreen(display), att_list);
+ */
+ int num;
+ XVisualInfo template;
+
+ template.visualid = XVisualIDFromVisual(visual);
+ vis = XGetVisualInfo(display, VisualIDMask, &template, &num);
+
+ TRACE("Found visual : %p - returns %d\n", vis, physDev->used_visuals + 1);
+ }
+ LEAVE_GL();
+
+ if (vis == NULL) {
+ ERR("No visual found !\n");
+ /* Should SetError here... */
+ return 0;
+ }
+ physDev->visuals[physDev->used_visuals++] = vis;
+
+ return physDev->used_visuals;
+}
+
+/* X11DRV_DescribePixelFormat
+
+ Get the pixel-format descriptor associated to the given id
+*/
+int X11DRV_DescribePixelFormat(DC *dc,
+ int iPixelFormat,
+ UINT nBytes,
+ PIXELFORMATDESCRIPTOR *ppfd) {
+ X11DRV_PDEVICE *physDev = (X11DRV_PDEVICE *)dc->physDev;
+ XVisualInfo *vis;
+ int value;
+ int rb,gb,bb,ab;
+
+ TRACE("(%p,%d,%d,%p)\n", dc, iPixelFormat, nBytes, ppfd);
+
+ if (nBytes < sizeof(PIXELFORMATDESCRIPTOR)) {
+ ERR("Wrong structure size !\n");
+ /* Should set error */
+ return 0;
+ }
+ if ((iPixelFormat > MAX_PIXELFORMATS) ||
+ (iPixelFormat > physDev->used_visuals + 1) ||
+ (iPixelFormat <= 0)) {
+ ERR("Wrong pixel format !\n");
+ /* Should set error */
+ return 0;
+ }
+
+ if (iPixelFormat == physDev->used_visuals + 1) {
+ int dblBuf[]={GLX_RGBA,GLX_DEPTH_SIZE,16,GLX_DOUBLEBUFFER,None};
+
+ /* Create a 'standard' X Visual */
+ ENTER_GL();
+ vis = glXChooseVisual(display,
+ DefaultScreen(display),
+ dblBuf);
+ LEAVE_GL();
+
+ WARN("Uninitialized Visual. Creating standard (%p) !\n", vis);
+
+ if (vis == NULL) {
+ ERR("Could not create standard visual !\n");
+ /* Should set error */
+ return 0;
+ }
+
+ physDev->visuals[physDev->used_visuals++] = vis;
+ }
+ vis = physDev->visuals[iPixelFormat - 1];
+
+ memset(ppfd, 0, sizeof(PIXELFORMATDESCRIPTOR));
+ ppfd->nSize = sizeof(PIXELFORMATDESCRIPTOR);
+ ppfd->nVersion = 1;
+
+ /* These flags are always the same... */
+ ppfd->dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_GENERIC_ACCELERATED;
+ /* Now the flags extraced from the Visual */
+ ENTER_GL();
+ glXGetConfig(display, vis, GLX_DOUBLEBUFFER, &value); if (value) ppfd->dwFlags |= PFD_DOUBLEBUFFER;
+ glXGetConfig(display, vis, GLX_STEREO, &value); if (value) ppfd->dwFlags |= PFD_STEREO;
+
+ /* Pixel type */
+ glXGetConfig(display, vis, GLX_RGBA, &value);
+ if (value)
+ ppfd->iPixelType = PFD_TYPE_RGBA;
+ else
+ ppfd->iPixelType = PFD_TYPE_COLORINDEX;
+
+ /* Color bits */
+ glXGetConfig(display, vis, GLX_BUFFER_SIZE, &value);
+ ppfd->cColorBits = value;
+
+ /* Red, green, blue and alpha bits / shifts */
+ if (ppfd->iPixelType == PFD_TYPE_RGBA) {
+ glXGetConfig(display, vis, GLX_RED_SIZE, &rb);
+ glXGetConfig(display, vis, GLX_GREEN_SIZE, &gb);
+ glXGetConfig(display, vis, GLX_BLUE_SIZE, &bb);
+ glXGetConfig(display, vis, GLX_ALPHA_SIZE, &ab);
+
+ ppfd->cRedBits = rb;
+ ppfd->cRedShift = gb + bb + ab;
+ ppfd->cBlueBits = bb;
+ ppfd->cBlueShift = ab;
+ ppfd->cGreenBits = gb;
+ ppfd->cGreenShift = bb + ab;
+ ppfd->cAlphaBits = ab;
+ ppfd->cAlphaShift = 0;
+ } else {
+ ppfd->cRedBits = 0;
+ ppfd->cRedShift = 0;
+ ppfd->cBlueBits = 0;
+ ppfd->cBlueShift = 0;
+ ppfd->cGreenBits = 0;
+ ppfd->cGreenShift = 0;
+ ppfd->cAlphaBits = 0;
+ ppfd->cAlphaShift = 0;
+ }
+ /* Accums : to do ... */
+
+ /* Depth bits */
+ glXGetConfig(display, vis, GLX_DEPTH_SIZE, &value);
+ ppfd->cDepthBits = value;
+ LEAVE_GL();
+
+ /* Aux, stencil : to do ... */
+
+ ppfd->iLayerType = PFD_MAIN_PLANE;
+
+ dump_PIXELFORMATDESCRIPTOR(ppfd);
+
+ return MAX_PIXELFORMATS;
+}
+
+/* X11DRV_GetPixelFormat
+
+ Get the pixel-format id used by this DC
+*/
+int X11DRV_GetPixelFormat(DC *dc) {
+ X11DRV_PDEVICE *physDev = (X11DRV_PDEVICE *)dc->physDev;
+
+ TRACE("(%p): returns %d\n", dc, physDev->current_pf);
+
+ return physDev->current_pf;
+}
+
+/* X11DRV_SetPixelFormat
+
+ Set the pixel-format id used by this DC
+*/
+BOOL X11DRV_SetPixelFormat(DC *dc,
+ int iPixelFormat,
+ const PIXELFORMATDESCRIPTOR *ppfd) {
+ X11DRV_PDEVICE *physDev = (X11DRV_PDEVICE *)dc->physDev;
+
+ TRACE("(%p,%d,%p)\n", dc, iPixelFormat, ppfd);
+
+ physDev->current_pf = iPixelFormat;
+
+ return TRUE;
+}
+
+/* X11DRV_SwapBuffers
+
+ Swap the buffers of this DC
+*/
+BOOL X11DRV_SwapBuffers(DC *dc) {
+ X11DRV_PDEVICE *physDev = (X11DRV_PDEVICE *)dc->physDev;
+
+ TRACE("(%p)\n", dc);
+
+ ENTER_GL();
+ glXSwapBuffers(display, physDev->drawable);
+ LEAVE_GL();
+
+ return TRUE;
+}
+
+#else /* defined(HAVE_OPENGL) */
+
+int X11DRV_ChoosePixelFormat(DC *dc,
+ const PIXELFORMATDESCRIPTOR *ppfd) {
+ ERR("No OpenGL support compiled in.\n");
+
+ return 0;
+}
+
+int X11DRV_DescribePixelFormat(DC *dc,
+ int iPixelFormat,
+ UINT nBytes,
+ PIXELFORMATDESCRIPTOR *ppfd) {
+ ERR("No OpenGL support compiled in.\n");
+
+ return 0;
+}
+
+int X11DRV_GetPixelFormat(DC *dc) {
+ ERR("No OpenGL support compiled in.\n");
+
+ return 0;
+}
+
+BOOL X11DRV_SetPixelFormat(DC *dc,
+ int iPixelFormat,
+ const PIXELFORMATDESCRIPTOR *ppfd) {
+ ERR("No OpenGL support compiled in.\n");
+
+ return FALSE;
+}
+
+BOOL X11DRV_SwapBuffers(DC *dc) {
+ ERR("No OpenGL support compiled in.\n");
+
+ return FALSE;
+}
+
+#endif /* defined(HAVE_OPENGL) */
diff --git a/include/acconfig.h b/include/acconfig.h
index 8f1f449..f63980a 100644
--- a/include/acconfig.h
+++ b/include/acconfig.h
@@ -96,8 +96,8 @@
/* Define if IPX includes are taken from Linux kernel */
#undef HAVE_IPX_LINUX
-/* Define if Mesa is present on the system or not */
-#undef HAVE_LIBMESAGL
+/* Define if OpenGL is present on the system or not */
+#undef HAVE_OPENGL
/* Define if the system has dynamic link library support with the dl* API */
#undef HAVE_DL_API
@@ -110,3 +110,6 @@
/* Define if the OpenGL implementation supports the GL_EXT_paletted_texture extension */
#undef HAVE_GL_PALETTED_TEXTURE
+
+/* Define if the OpenGL library supports the glXGetProcAddressARB call */
+#undef HAVE_GLX_GETPROCADDRESS
diff --git a/include/config.h.in b/include/config.h.in
index 32e9fba..c59ee13 100644
--- a/include/config.h.in
+++ b/include/config.h.in
@@ -128,8 +128,8 @@
/* Define if IPX includes are taken from Linux kernel */
#undef HAVE_IPX_LINUX
-/* Define if Mesa is present on the system or not */
-#undef HAVE_LIBMESAGL
+/* Define if OpenGL is present on the system or not */
+#undef HAVE_OPENGL
/* Define if the system has dynamic link library support with the dl* API */
#undef HAVE_DL_API
@@ -143,6 +143,9 @@
/* Define if the OpenGL implementation supports the GL_EXT_paletted_texture extension */
#undef HAVE_GL_PALETTED_TEXTURE
+/* Define if the OpenGL library supports the glXGetProcAddressARB call */
+#undef HAVE_GLX_GETPROCADDRESS
+
/* The number of bytes in a long long. */
#undef SIZEOF_LONG_LONG
@@ -242,6 +245,9 @@
/* Define if you have the <GL/gl.h> header file. */
#undef HAVE_GL_GL_H
+/* Define if you have the <GL/glext.h> header file. */
+#undef HAVE_GL_GLEXT_H
+
/* Define if you have the <GL/glx.h> header file. */
#undef HAVE_GL_GLX_H
diff --git a/include/debugdefs.h b/include/debugdefs.h
index 6bf4e8b..7b04886 100644
--- a/include/debugdefs.h
+++ b/include/debugdefs.h
@@ -104,6 +104,7 @@
char dbch_ntdll[] = "\003ntdll";
char dbch_odbc[] = "\003odbc";
char dbch_ole[] = "\003ole";
+char dbch_opengl[] = "\003opengl";
char dbch_pager[] = "\003pager";
char dbch_palette[] = "\003palette";
char dbch_pidl[] = "\003pidl";
@@ -171,7 +172,7 @@
char dbch_x11[] = "\003x11";
char dbch_x11drv[] = "\003x11drv";
-#define DEBUG_CHANNEL_COUNT 164
+#define DEBUG_CHANNEL_COUNT 165
static char * const debug_channels[DEBUG_CHANNEL_COUNT] = {
dbch_accel,
@@ -272,6 +273,7 @@
dbch_ntdll,
dbch_odbc,
dbch_ole,
+ dbch_opengl,
dbch_pager,
dbch_palette,
dbch_pidl,
diff --git a/include/gdi.h b/include/gdi.h
index f21213f..a475923 100644
--- a/include/gdi.h
+++ b/include/gdi.h
@@ -176,6 +176,7 @@
BOOL (*pBeginPath)(DC*);
BOOL (*pBitBlt)(DC*,INT,INT,INT,INT,DC*,INT,INT,DWORD);
LONG (*pBitmapBits)(HBITMAP,void*,LONG,WORD);
+ INT (*pChoosePixelFormat)(DC*,const PIXELFORMATDESCRIPTOR *);
BOOL (*pChord)(DC*,INT,INT,INT,INT,INT,INT,INT,INT);
BOOL (*pCloseFigure)(DC*);
BOOL (*pCreateBitmap)(HBITMAP);
@@ -186,6 +187,7 @@
DWORD,DWORD);
BOOL (*pDeleteDC)(DC*);
BOOL (*pDeleteObject)(HGDIOBJ);
+ INT (*pDescribePixelFormat)(DC *,INT,UINT,PIXELFORMATDESCRIPTOR *);
DWORD (*pDeviceCapabilities)(LPSTR,LPCSTR,LPCSTR,WORD,LPSTR,LPDEVMODEA);
BOOL (*pEllipse)(DC*,INT,INT,INT,INT);
INT (*pEndDoc)(DC*);
@@ -206,6 +208,7 @@
BOOL (*pGetCharWidth)(DC*,UINT,UINT,LPINT);
BOOL (*pGetDCOrgEx)(DC*,LPPOINT);
COLORREF (*pGetPixel)(DC*,INT,INT);
+ INT (*pGetPixelFormat)(DC*);
BOOL (*pGetTextExtentPoint)(DC*,LPCWSTR,INT,LPSIZE);
BOOL (*pGetTextMetrics)(DC*,TEXTMETRICA*);
INT (*pIntersectClipRect)(DC*,INT,INT,INT,INT);
@@ -246,6 +249,7 @@
INT (*pSetMapMode)(DC*,INT);
DWORD (*pSetMapperFlags)(DC*,DWORD);
COLORREF (*pSetPixel)(DC*,INT,INT,COLORREF);
+ BOOL (*pSetPixelFormat)(DC*,INT,const PIXELFORMATDESCRIPTOR *);
INT (*pSetPolyFillMode)(DC*,INT);
INT (*pSetROP2)(DC*,INT);
INT (*pSetRelAbs)(DC*,INT);
@@ -265,6 +269,7 @@
const void *,const BITMAPINFO *,UINT,DWORD);
BOOL (*pStrokeAndFillPath)(DC*);
BOOL (*pStrokePath)(DC*);
+ BOOL (*pSwapBuffers)(DC*);
BOOL (*pWidenPath)(DC*);
} DC_FUNCTIONS;
diff --git a/include/wine_gl.h b/include/wine_gl.h
index ade4242..736d9d3 100644
--- a/include/wine_gl.h
+++ b/include/wine_gl.h
@@ -9,9 +9,13 @@
#include "config.h"
-#if defined(HAVE_LIBMESAGL) && defined(HAVE_GL_GLX_H)
+#if defined(HAVE_OPENGL)
-#define HAVE_MESAGL
+#include "x11drv.h"
+
+/* As GLX relies on X, this is needed */
+#define ENTER_GL() EnterCriticalSection( &X11DRV_CritSection )
+#define LEAVE_GL() LeaveCriticalSection( &X11DRV_CritSection )
#undef APIENTRY
#undef CALLBACK
@@ -20,6 +24,7 @@
#define XMD_H /* This is to prevent the Xmd.h inclusion bug to happen :-/ */
#include <GL/gl.h>
#include <GL/glx.h>
+#include <GL/glext.h>
#undef XMD_H
#undef APIENTRY
@@ -31,10 +36,6 @@
#define WINAPI __stdcall
#define APIENTRY WINAPI
-#else /* HAVE_LIBMESAGL */
-
-#undef HAVE_MESAGL
-
-#endif /* HAVE_LIBMESAGL */
+#endif /* HAVE_OPENGL */
#endif /* __WINE_WINE_GL_H */
diff --git a/include/x11drv.h b/include/x11drv.h
index 3a2bd49..822bf9a 100644
--- a/include/x11drv.h
+++ b/include/x11drv.h
@@ -19,6 +19,7 @@
#include "winbase.h"
#include "windef.h"
+#define MAX_PIXELFORMATS 8
struct tagBITMAPOBJ;
struct tagCLASS;
@@ -67,6 +68,9 @@
X_PHYSBRUSH brush;
int backgroundPixel;
int textPixel;
+ XVisualInfo *visuals[MAX_PIXELFORMATS];
+ int used_visuals;
+ int current_pf;
} X11DRV_PDEVICE;
@@ -153,6 +157,13 @@
LPBITMAPINFO info, UINT coloruse );
extern HANDLE X11DRV_LoadOEMResource( WORD id, WORD type );
+/* OpenGL / X11 driver functions */
+extern int X11DRV_ChoosePixelFormat(DC *dc, const PIXELFORMATDESCRIPTOR *pppfd) ;
+extern int X11DRV_DescribePixelFormat(DC *dc, int iPixelFormat, UINT nBytes, PIXELFORMATDESCRIPTOR *ppfd) ;
+extern int X11DRV_GetPixelFormat(DC *dc) ;
+extern BOOL X11DRV_SetPixelFormat(DC *dc, int iPixelFormat, const PIXELFORMATDESCRIPTOR *ppfd) ;
+extern BOOL X11DRV_SwapBuffers(DC *dc) ;
+
/* X11 driver internal functions */
extern BOOL X11DRV_BITMAP_Init(void);
diff --git a/loader/loadorder.c b/loader/loadorder.c
index fad87e2..2a974f1 100644
--- a/loader/loadorder.c
+++ b/loader/loadorder.c
@@ -59,6 +59,7 @@
/* we have to use libglide2x.so instead of glide2x.dll ... */
{"glide2x", "so,native"},
{"odbc32", "builtin"},
+ {"opengl32", "builtin,native"},
{NULL,NULL},
};
@@ -482,6 +483,8 @@
char *name;
int len;
+ TRACE("looking for %s\n", path);
+
assert(path != NULL);
/* Strip path information */