X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fscreen%2Fextensions.cxx;h=8ef03a6aa740ebe42b7cfe9db29488735a6cf440;hb=33970663435dd1a12941b017739285341205acf4;hp=491618123389babf8000d7915c1c12ff01298769;hpb=63c4873d8a138562acfdbe1a7f14df44dcadd522;p=simgear.git diff --git a/simgear/screen/extensions.cxx b/simgear/screen/extensions.cxx index 49161812..8ef03a6a 100644 --- a/simgear/screen/extensions.cxx +++ b/simgear/screen/extensions.cxx @@ -22,13 +22,11 @@ * */ -#include #include "extensions.hxx" -#include -#if !defined(WIN32) && !defined( GLX_VERSION_1_4 ) -# include -#endif + +#include +#include // for glGetString bool SGSearchExtensionsString(const char *extString, const char *extName) { // Returns GL_TRUE if the *extName string appears in the *extString string, @@ -56,7 +54,7 @@ bool SGSearchExtensionsString(const char *extString, const char *extName) { return GL_FALSE; } -bool SGIsOpenGLExtensionSupported(char *extName) { +bool SGIsOpenGLExtensionSupported(const char *extName) { // Returns GL_TRUE if the OpenGL Extension whose name is *extName // is supported by the system, or GL_FALSE otherwise. // @@ -65,74 +63,3 @@ bool SGIsOpenGLExtensionSupported(char *extName) { return SGSearchExtensionsString((const char *)glGetString(GL_EXTENSIONS),extName); } - -#ifdef __APPLE__ - -#include - -void* macosxGetGLProcAddress(const char *func) { - - /* We may want to cache the bundleRef at some point */ - static CFBundleRef bundle = 0; - - if (!bundle) { - - CFURLRef bundleURL = CFURLCreateWithFileSystemPath (kCFAllocatorDefault, - CFSTR("/System/Library/Frameworks/OpenGL.framework"), kCFURLPOSIXPathStyle, true); - - bundle = CFBundleCreate (kCFAllocatorDefault, bundleURL); - CFRelease (bundleURL); - } - - if (!bundle) - return 0; - - CFStringRef functionName = CFStringCreateWithCString - (kCFAllocatorDefault, func, kCFStringEncodingASCII); - - void *function; - - function = CFBundleGetFunctionPointerForName (bundle, functionName); - - CFRelease (functionName); - - return function; -} - -#elif !defined( WIN32 ) && !defined(GLX_VERSION_1_4) - -void *SGGetGLProcAddress(const char *func) { - static void *libHandle = NULL; - void *fptr = NULL; - - /* - * Clear the error buffer - */ - dlerror(); - - /* - * Since libGL must be linked to the binary we run on, this is the - * right handle. That 'current binary' handle also avoids conflicts which - * arise from linking with a different libGL at link time an than later - * use the standard libGL at runtime ... - */ - if (libHandle == NULL) - libHandle = dlopen(NULL, RTLD_LAZY); - - if (libHandle != NULL) { - fptr = dlsym(libHandle, func); - -#if defined (__FreeBSD__) - const char *error = dlerror(); -#else - char *error = dlerror(); -#endif - if (error) - SG_LOG(SG_GENERAL, SG_INFO, error); - } - - return fptr; -} - -#endif -