1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- #include "idlib/precompiled.h"
- #pragma hdrstop
- dnl =====================================================
- dnl utils
- dnl =====================================================
- define(`forloop',
- `pushdef(`$1', `$2')_forloop(`$1', `$2', `$3', `$4')popdef(`$1')')
- define(`_forloop',
- `$4`'ifelse($1, `$3', ,
- `define(`$1', incr($1))_forloop(`$1', `$2', `$3', `$4')')')
-
- dnl =====================================================
- dnl GL extensions
- dnl =====================================================
- typedef struct {
- const char *ext_name;
- } glExtName_t;
- glExtName_t glExtNames[] = {
- NULL
- };
- static void StubFunction( void ) { }
- GLExtension_t GLimp_ExtensionPointer( const char *name ) {
- if ( strstr( name, "wgl" ) == name ) {
- common->DPrintf( "WARNING: GLimp_ExtensionPointer for '%s'\n", name );
- }
- #ifdef ID_DEDICATED
- common->Printf("GLimp_ExtensionPointer %s\n", name);
- return StubFunction;
- #else
- #if 0
- glExtName_t *n;
- for ( n = glExtNames ; n->ext_name ; n++ ) {
- if ( !strcmp( name, n->ext_name ) ) {
- common->DPrintf("matched GL extension: %s\n", name );
- break;
- }
- }
- if ( ! n->ext_name ) {
- common->DPrintf("unmatched GL extension name: %s\n", name );
- }
- #endif
- GLExtension_t ret;
- #if defined(__linux__)
- // for some reason glXGetProcAddressARB doesn't work on RH9?
- ret = qglXGetProcAddressARB((const GLubyte *) name);
- if ( !ret ) {
- common->Printf("glXGetProcAddressARB failed: \"%s\"\n", name);
- return StubFunction;
- }
- #else
- #error Need OS define
- #endif
- return ret;
- #endif
- }
|