mirror of
https://github.com/glfw/glfw.git
synced 2024-11-10 00:51:47 +00:00
Finished initial window/context backend split.
This commit is contained in:
parent
4ce92262f7
commit
34d383399c
108
CMakeLists.txt
108
CMakeLists.txt
@ -19,6 +19,10 @@ option(GLFW_USE_EGL "Build for EGL and OpenGL ES platform (Currently only X11)"
|
||||
if (GLFW_USE_EGL)
|
||||
set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/CMake/modules)
|
||||
find_package(EGL REQUIRED)
|
||||
|
||||
set(GLFW_BUILD_EXAMPLES OFF)
|
||||
set(GLFW_BUILD_TESTS OFF)
|
||||
message(STATUS "NOTE: Examples and tests are disabled for EGL")
|
||||
else()
|
||||
find_package(OpenGL REQUIRED)
|
||||
endif()
|
||||
@ -47,25 +51,39 @@ if (BUILD_SHARED_LIBS)
|
||||
endif()
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
# Detect and select target platform
|
||||
# Detect and select target APIs
|
||||
#--------------------------------------------------------------------
|
||||
if (WIN32)
|
||||
set(_GLFW_WIN32_WGL 1)
|
||||
message(STATUS "Building GLFW for WGL on a Win32 system")
|
||||
elseif (UNIX AND APPLE)
|
||||
set(_GLFW_COCOA_NSGL 1)
|
||||
message(STATUS "Building GLFW for Cocoa and NSOpenGL on Mac OS X")
|
||||
elseif (UNIX AND NOT APPLE)
|
||||
set(_GLFW_X11 1)
|
||||
set(_GLFW_WIN32 1)
|
||||
message(STATUS "Using Win32 for window creation")
|
||||
|
||||
if (GLFW_USE_EGL)
|
||||
set(_GLFW_X11_EGL 1)
|
||||
set(GLFW_BUILD_EXAMPLES 0)
|
||||
set(GLFW_BUILD_TESTS 0)
|
||||
message(STATUS "Building GLFW for X11 and EGL on a Unix-like system")
|
||||
message(STATUS "NOTE: Examples and tests are disabled for EGL")
|
||||
set(_GLFW_EGL 1)
|
||||
message(STATUS "Using EGL for context creation")
|
||||
else()
|
||||
set(_GLFW_X11_GLX 1)
|
||||
message(STATUS "Building GLFW for X11 and GLX on a Unix-like system")
|
||||
set(_GLFW_WGL 1)
|
||||
message(STATUS "Using WGL for context creation")
|
||||
endif()
|
||||
elseif (APPLE)
|
||||
set(_GLFW_COCOA 1)
|
||||
message(STATUS "Using Cocoa for window creation")
|
||||
|
||||
if (GLFW_USE_EGL)
|
||||
message(FATAL_ERROR "EGL not supported on Mac OS X")
|
||||
else()
|
||||
set(_GLFW_NSGL 1)
|
||||
message(STATUS "Using NSGL for context creation")
|
||||
endif()
|
||||
elseif (UNIX)
|
||||
set(_GLFW_X11 1)
|
||||
message(STATUS "Using X11 for window creation")
|
||||
|
||||
if (GLFW_USE_EGL)
|
||||
set(_GLFW_EGL 1)
|
||||
message(STATUS "Using EGL for context creation")
|
||||
else()
|
||||
set(_GLFW_GLX 1)
|
||||
message(STATUS "Using GLX for context creation")
|
||||
endif()
|
||||
else()
|
||||
message(FATAL_ERROR "No supported platform was detected")
|
||||
@ -74,7 +92,7 @@ endif()
|
||||
#--------------------------------------------------------------------
|
||||
# Set up GLFW for Win32 and WGL on Windows
|
||||
#--------------------------------------------------------------------
|
||||
if (_GLFW_WIN32_WGL)
|
||||
if (_GLFW_WIN32)
|
||||
|
||||
# Set up library and include paths
|
||||
list(APPEND glfw_INCLUDE_DIRS ${OPENGL_INCLUDE_DIR})
|
||||
@ -160,16 +178,12 @@ if (_GLFW_X11)
|
||||
set(GLFW_PKG_LIBS "${GLFW_PKG_LIBS} -lm")
|
||||
endif()
|
||||
|
||||
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
set(_GLFW_USE_LINUX_JOYSTICKS 1)
|
||||
endif()
|
||||
|
||||
endif()
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
# GLX Context
|
||||
#--------------------------------------------------------------------
|
||||
if (_GLFW_X11_GLX)
|
||||
if (_GLFW_GLX)
|
||||
|
||||
# Set up library and include paths
|
||||
list(APPEND glfw_INCLUDE_DIRS ${OPENGL_INCLUDE_DIR})
|
||||
@ -223,42 +237,44 @@ endif()
|
||||
#--------------------------------------------------------------------
|
||||
# EGL Context
|
||||
#--------------------------------------------------------------------
|
||||
if (_GLFW_X11_EGL)
|
||||
if (_GLFW_EGL)
|
||||
|
||||
# Set up library and include paths
|
||||
list(APPEND glfw_INCLUDE_DIRS ${EGL_INCLUDE_DIR})
|
||||
list(APPEND glfw_LIBRARIES ${EGL_LIBRARY})
|
||||
|
||||
set(GLFW_PKG_DEPS "${GLFW_PKG_DEPS} egl")
|
||||
|
||||
include(CheckFunctionExists)
|
||||
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${EGL_LIBRARY})
|
||||
|
||||
check_function_exists(eglGetProcAddress _GLFW_HAS_EGLGETPROCADDRESS)
|
||||
if (_GLFW_X11)
|
||||
set(GLFW_PKG_DEPS "${GLFW_PKG_DEPS} egl")
|
||||
|
||||
if (NOT _GLFW_HAS_EGLGETPROCADDRESS)
|
||||
message(WARNING "No eglGetProcAddress found")
|
||||
include(CheckFunctionExists)
|
||||
|
||||
# Check for dlopen support as a fallback
|
||||
check_function_exists(eglGetProcAddress _GLFW_HAS_EGLGETPROCADDRESS)
|
||||
|
||||
find_library(DL_LIBRARY dl)
|
||||
mark_as_advanced(DL_LIBRARY)
|
||||
if (DL_LIBRARY)
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${DL_LIBRARY})
|
||||
else()
|
||||
set(CMAKE_REQUIRED_LIBRARIES "")
|
||||
endif()
|
||||
if (NOT _GLFW_HAS_EGLGETPROCADDRESS)
|
||||
message(WARNING "No eglGetProcAddress found")
|
||||
|
||||
check_function_exists(dlopen _GLFW_HAS_DLOPEN)
|
||||
# Check for dlopen support as a fallback
|
||||
|
||||
if (NOT _GLFW_HAS_DLOPEN)
|
||||
message(FATAL_ERROR "No entry point retrieval mechanism found")
|
||||
endif()
|
||||
find_library(DL_LIBRARY dl)
|
||||
mark_as_advanced(DL_LIBRARY)
|
||||
if (DL_LIBRARY)
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${DL_LIBRARY})
|
||||
else()
|
||||
set(CMAKE_REQUIRED_LIBRARIES "")
|
||||
endif()
|
||||
|
||||
if (DL_LIBRARY)
|
||||
list(APPEND glfw_LIBRARIES ${DL_LIBRARY})
|
||||
set(GLFW_PKG_LIBS "${GLFW_PKG_LIBS} -ldl")
|
||||
check_function_exists(dlopen _GLFW_HAS_DLOPEN)
|
||||
|
||||
if (NOT _GLFW_HAS_DLOPEN)
|
||||
message(FATAL_ERROR "No entry point retrieval mechanism found")
|
||||
endif()
|
||||
|
||||
if (DL_LIBRARY)
|
||||
list(APPEND glfw_LIBRARIES ${DL_LIBRARY})
|
||||
set(GLFW_PKG_LIBS "${GLFW_PKG_LIBS} -ldl")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -267,7 +283,7 @@ endif()
|
||||
#--------------------------------------------------------------------
|
||||
# Set up GLFW for Cocoa and NSOpenGL on Mac OS X
|
||||
#--------------------------------------------------------------------
|
||||
if (_GLFW_COCOA_NSGL)
|
||||
if (_GLFW_COCOA AND _GLFW_NSGL)
|
||||
|
||||
option(GLFW_BUILD_UNIVERSAL "Build GLFW as a Universal Binary" OFF)
|
||||
|
||||
@ -349,7 +365,7 @@ install(FILES COPYING.txt readme.html
|
||||
#--------------------------------------------------------------------
|
||||
# Create and install pkg-config file on supported platforms
|
||||
#--------------------------------------------------------------------
|
||||
if (_GLFW_X11_GLX OR _GLFW_COCOA_NSGL)
|
||||
if (UNIX)
|
||||
configure_file(${GLFW_SOURCE_DIR}/src/glfw3.pc.in
|
||||
${GLFW_BINARY_DIR}/src/glfw3.pc @ONLY)
|
||||
|
||||
|
@ -10,11 +10,11 @@ set(common_HEADERS ${GLFW_SOURCE_DIR}/include/GL/glfw3.h internal.h)
|
||||
set(common_SOURCES clipboard.c fullscreen.c gamma.c init.c input.c
|
||||
joystick.c opengl.c time.c window.c)
|
||||
|
||||
if (_GLFW_COCOA_NSGL)
|
||||
if (_GLFW_COCOA)
|
||||
set(glfw_HEADERS ${common_HEADERS} cocoa_platform.h)
|
||||
set(glfw_SOURCES ${common_SOURCES} cocoa_clipboard.m cocoa_fullscreen.m
|
||||
cocoa_gamma.c cocoa_init.m cocoa_joystick.m
|
||||
cocoa_opengl.m cocoa_time.c cocoa_window.m)
|
||||
cocoa_gamma.c cocoa_init.m cocoa_joystick.m cocoa_time.c
|
||||
cocoa_window.m)
|
||||
|
||||
if (GLFW_NATIVE_API)
|
||||
list(APPEND glfw_SOURCES cocoa_native.m)
|
||||
@ -22,30 +22,38 @@ if (_GLFW_COCOA_NSGL)
|
||||
|
||||
# For some reason, CMake doesn't know about .m
|
||||
set_source_files_properties(${glfw_SOURCES} PROPERTIES LANGUAGE C)
|
||||
elseif (_GLFW_WIN32_WGL)
|
||||
elseif (_GLFW_WIN32)
|
||||
set(glfw_HEADERS ${common_HEADERS} win32_platform.h)
|
||||
set(glfw_SOURCES ${common_SOURCES} wgl_opengl.c win32_clipboard.c
|
||||
win32_fullscreen.c win32_gamma.c win32_init.c
|
||||
win32_joystick.c win32_time.c win32_window.c)
|
||||
set(glfw_SOURCES ${common_SOURCES} win32_clipboard.c win32_fullscreen.c
|
||||
win32_gamma.c win32_init.c win32_joystick.c win32_time.c
|
||||
win32_window.c)
|
||||
|
||||
if (GLFW_NATIVE_API)
|
||||
list(APPEND glfw_SOURCES win32_native.c)
|
||||
endif()
|
||||
elseif (_GLFW_X11_GLX)
|
||||
elseif (_GLFW_X11)
|
||||
set(glfw_HEADERS ${common_HEADERS} x11_platform.h)
|
||||
set(glfw_SOURCES ${common_SOURCES} glx_opengl.c x11_clipboard.c
|
||||
x11_fullscreen.c x11_gamma.c x11_init.c x11_joystick.c
|
||||
x11_keysym2unicode.c x11_time.c x11_window.c)
|
||||
set(glfw_SOURCES ${common_SOURCES} x11_clipboard.c x11_fullscreen.c
|
||||
x11_gamma.c x11_init.c x11_joystick.c x11_keysym2unicode.c
|
||||
x11_time.c x11_window.c)
|
||||
|
||||
if (GLFW_NATIVE_API)
|
||||
list(APPEND glfw_SOURCES x11_native.c)
|
||||
endif()
|
||||
elseif (_GLFW_X11_EGL)
|
||||
set(glfw_HEADERS ${common_HEADERS} x11_platform.h egl_platform.h)
|
||||
set(glfw_SOURCES ${common_SOURCES} egl_opengl.c x11_clipboard.c
|
||||
x11_fullscreen.c x11_gamma.c x11_init.c
|
||||
x11_joystick.c x11_keysym2unicode.c x11_time.c
|
||||
x11_window.c)
|
||||
endif()
|
||||
|
||||
if (_GLFW_EGL)
|
||||
list(APPEND glfw_HEADERS ${common_HEADERS} egl_platform.h)
|
||||
list(APPEND glfw_SOURCES ${common_SOURCES} egl_opengl.c)
|
||||
elseif (_GLFW_NSGL)
|
||||
list(APPEND glfw_HEADERS ${common_HEADERS} nsgl_platform.h)
|
||||
list(APPEND glfw_SOURCES ${common_SOURCES} nsgl_opengl.c)
|
||||
elseif (_GLFW_WGL)
|
||||
list(APPEND glfw_HEADERS ${common_HEADERS} wgl_platform.h)
|
||||
list(APPEND glfw_SOURCES ${common_SOURCES} wgl_opengl.c)
|
||||
elseif (_GLFW_X11)
|
||||
list(APPEND glfw_HEADERS ${common_HEADERS} glx_platform.h)
|
||||
list(APPEND glfw_SOURCES ${common_SOURCES} glx_opengl.c)
|
||||
endif()
|
||||
|
||||
add_library(glfw ${glfw_SOURCES} ${glfw_HEADERS})
|
||||
@ -58,7 +66,7 @@ if (BUILD_SHARED_LIBS)
|
||||
set_target_properties(glfw PROPERTIES SOVERSION ${GLFW_VERSION_MAJOR})
|
||||
endif()
|
||||
|
||||
if (_GLFW_WIN32_WGL)
|
||||
if (_GLFW_WIN32)
|
||||
# The GLFW DLL needs a special compile-time macro and import library name
|
||||
set_target_properties(glfw PROPERTIES PREFIX "" IMPORT_PREFIX "")
|
||||
|
||||
@ -67,7 +75,7 @@ if (BUILD_SHARED_LIBS)
|
||||
else()
|
||||
set_target_properties(glfw PROPERTIES IMPORT_SUFFIX "dll.lib")
|
||||
endif()
|
||||
elseif (_GLFW_COCOA_NSGL)
|
||||
elseif (_GLFW_COCOA)
|
||||
# Append -fno-common to the compile flags to work around a bug in the Apple GCC
|
||||
get_target_property(glfw_CFLAGS glfw COMPILE_FLAGS)
|
||||
if (NOT glfw_CFLAGS)
|
||||
|
@ -1,6 +1,6 @@
|
||||
//========================================================================
|
||||
// GLFW - An OpenGL library
|
||||
// Platform: Cocoa/NSOpenGL
|
||||
// Platform: Cocoa
|
||||
// API Version: 3.0
|
||||
// WWW: http://www.glfw.org/
|
||||
//------------------------------------------------------------------------
|
||||
@ -27,13 +27,12 @@
|
||||
//
|
||||
//========================================================================
|
||||
|
||||
#ifndef _platform_h_
|
||||
#define _platform_h_
|
||||
#ifndef _cocoa_platform_h_
|
||||
#define _cocoa_platform_h_
|
||||
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
|
||||
#if defined(__OBJC__)
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#else
|
||||
@ -41,12 +40,13 @@
|
||||
typedef void* id;
|
||||
#endif
|
||||
|
||||
#if defined(_GLFW_NSGL)
|
||||
#include "nsgl_platform.h"
|
||||
#endif
|
||||
|
||||
#define _GLFW_PLATFORM_WINDOW_STATE _GLFWwindowNS NS
|
||||
#define _GLFW_PLATFORM_LIBRARY_WINDOW_STATE _GLFWlibraryNS NS
|
||||
|
||||
#define _GLFW_PLATFORM_CONTEXT_STATE _GLFWcontextNSGL NSGL
|
||||
#define _GLFW_PLATFORM_LIBRARY_OPENGL_STATE _GLFWlibraryNSGL NSGL
|
||||
|
||||
|
||||
//========================================================================
|
||||
// GLFW platform specific types
|
||||
@ -58,16 +58,6 @@ typedef void* id;
|
||||
typedef intptr_t GLFWintptr;
|
||||
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
// Platform-specific OpenGL context structure
|
||||
//------------------------------------------------------------------------
|
||||
typedef struct _GLFWcontextNSGL
|
||||
{
|
||||
id pixelFormat;
|
||||
id context;
|
||||
} _GLFWcontextNSGL;
|
||||
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
// Platform-specific window structure
|
||||
//------------------------------------------------------------------------
|
||||
@ -99,16 +89,6 @@ typedef struct _GLFWlibraryNS
|
||||
} _GLFWlibraryNS;
|
||||
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
// Platform-specific library global data for NSGL
|
||||
//------------------------------------------------------------------------
|
||||
typedef struct _GLFWlibraryNSGL
|
||||
{
|
||||
// dlopen handle for dynamically loading OpenGL extension entry points
|
||||
void* framework;
|
||||
} _GLFWlibraryNSGL;
|
||||
|
||||
|
||||
//========================================================================
|
||||
// Prototypes for platform specific internal functions
|
||||
//========================================================================
|
||||
@ -128,4 +108,4 @@ void _glfwRestoreVideoMode(void);
|
||||
int _glfwInitOpenGL(void);
|
||||
void _glfwTerminateOpenGL(void);
|
||||
|
||||
#endif // _platform_h_
|
||||
#endif // _cocoa_platform_h_
|
||||
|
@ -35,14 +35,21 @@
|
||||
// it. Instead, you should modify the config.h.in file.
|
||||
//========================================================================
|
||||
|
||||
// Define this to 1 if building GLFW for X11/GLX
|
||||
#cmakedefine _GLFW_X11_GLX
|
||||
// Define this to 1 if building GLFW for X11/EGL
|
||||
#cmakedefine _GLFW_X11_EGL
|
||||
// Define this to 1 if building GLFW for Win32/WGL
|
||||
#cmakedefine _GLFW_WIN32_WGL
|
||||
// Define this to 1 if building GLFW for Cocoa/NSOpenGL
|
||||
#cmakedefine _GLFW_COCOA_NSGL
|
||||
// Define this to 1 if building GLFW for X11
|
||||
#cmakedefine _GLFW_X11
|
||||
// Define this to 1 if building GLFW for Win32
|
||||
#cmakedefine _GLFW_WIN32
|
||||
// Define this to 1 if building GLFW for Cocoa
|
||||
#cmakedefine _GLFW_COCOA
|
||||
|
||||
// Define this to 1 if building GLFW for EGL
|
||||
#cmakedefine _GLFW_EGL
|
||||
// Define this to 1 if building GLFW for GLX
|
||||
#cmakedefine _GLFW_GLX
|
||||
// Define this to 1 if building GLFW for WGL
|
||||
#cmakedefine _GLFW_WGL
|
||||
// Define this to 1 if building GLFW for NSGL
|
||||
#cmakedefine _GLFW_NSGL
|
||||
|
||||
// Define this to 1 if building as a shared library / dynamic library / DLL
|
||||
#cmakedefine _GLFW_BUILD_DLL
|
||||
|
@ -208,7 +208,7 @@ static int createContext(_GLFWwindow* window,
|
||||
// Retrieve the corresponding visual
|
||||
// NOTE: This is the only non-portable code in this file.
|
||||
// Maybe it would not hurt too much to add #ifdefs for different platforms?
|
||||
#if defined(_GLFW_X11_EGL)
|
||||
#if defined(_GLFW_X11)
|
||||
{
|
||||
int mask;
|
||||
EGLint redBits, greenBits, blueBits, alphaBits, visualID = 0;
|
||||
|
@ -71,7 +71,7 @@ typedef struct _GLFWcontextEGL
|
||||
EGLContext context;
|
||||
EGLSurface surface;
|
||||
|
||||
#if defined(_GLFW_X11_EGL)
|
||||
#if defined(_GLFW_X11)
|
||||
XVisualInfo* visual;
|
||||
#endif
|
||||
} _GLFWcontextEGL;
|
||||
|
@ -65,11 +65,11 @@ typedef struct _GLFWlibrary _GLFWlibrary;
|
||||
// extensions and not all operating systems come with an up-to-date version
|
||||
#include "../support/GL/glext.h"
|
||||
|
||||
#if defined(_GLFW_COCOA_NSGL)
|
||||
#if defined(_GLFW_COCOA)
|
||||
#include "cocoa_platform.h"
|
||||
#elif defined(_GLFW_WIN32_WGL)
|
||||
#elif defined(_GLFW_WIN32)
|
||||
#include "win32_platform.h"
|
||||
#elif defined(_GLFW_X11_GLX) || defined(_GLFW_X11_EGL)
|
||||
#elif defined(_GLFW_X11)
|
||||
#include "x11_platform.h"
|
||||
#else
|
||||
#error "No supported platform selected"
|
||||
|
62
src/nsgl_platform.h
Normal file
62
src/nsgl_platform.h
Normal file
@ -0,0 +1,62 @@
|
||||
//========================================================================
|
||||
// GLFW - An OpenGL library
|
||||
// Platform: NSOpenGL
|
||||
// API Version: 3.0
|
||||
// WWW: http://www.glfw.org/
|
||||
//------------------------------------------------------------------------
|
||||
// Copyright (c) 2009-2010 Camilla Berglund <elmindreda@elmindreda.org>
|
||||
//
|
||||
// This software is provided 'as-is', without any express or implied
|
||||
// warranty. In no event will the authors be held liable for any damages
|
||||
// arising from the use of this software.
|
||||
//
|
||||
// Permission is granted to anyone to use this software for any purpose,
|
||||
// including commercial applications, and to alter it and redistribute it
|
||||
// freely, subject to the following restrictions:
|
||||
//
|
||||
// 1. The origin of this software must not be misrepresented; you must not
|
||||
// claim that you wrote the original software. If you use this software
|
||||
// in a product, an acknowledgment in the product documentation would
|
||||
// be appreciated but is not required.
|
||||
//
|
||||
// 2. Altered source versions must be plainly marked as such, and must not
|
||||
// be misrepresented as being the original software.
|
||||
//
|
||||
// 3. This notice may not be removed or altered from any source
|
||||
// distribution.
|
||||
//
|
||||
//========================================================================
|
||||
|
||||
#ifndef _nsgl_platform_h_
|
||||
#define _nsgl_platform_h_
|
||||
|
||||
|
||||
#define _GLFW_PLATFORM_CONTEXT_STATE _GLFWcontextNSGL NSGL
|
||||
#define _GLFW_PLATFORM_LIBRARY_OPENGL_STATE _GLFWlibraryNSGL NSGL
|
||||
|
||||
|
||||
//========================================================================
|
||||
// GLFW platform specific types
|
||||
//========================================================================
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
// Platform-specific OpenGL context structure
|
||||
//------------------------------------------------------------------------
|
||||
typedef struct _GLFWcontextNSGL
|
||||
{
|
||||
id pixelFormat;
|
||||
id context;
|
||||
} _GLFWcontextNSGL;
|
||||
|
||||
|
||||
//------------------------------------------------------------------------
|
||||
// Platform-specific library global data for NSGL
|
||||
//------------------------------------------------------------------------
|
||||
typedef struct _GLFWlibraryNSGL
|
||||
{
|
||||
// dlopen handle for dynamically loading OpenGL extension entry points
|
||||
void* framework;
|
||||
} _GLFWlibraryNSGL;
|
||||
|
||||
|
||||
#endif // _nsgl_platform_h_
|
@ -232,6 +232,11 @@ int _glfwPlatformTerminate(void)
|
||||
const char* _glfwPlatformGetVersionString(void)
|
||||
{
|
||||
const char* version = _GLFW_VERSION_FULL
|
||||
#if defined(_GLFW_WGL)
|
||||
" WGL"
|
||||
#elif defined(_GLFW_EGL)
|
||||
" EGL"
|
||||
#endif
|
||||
#if defined(__MINGW32__)
|
||||
" MinGW"
|
||||
#elif defined(_MSC_VER)
|
||||
|
@ -105,9 +105,9 @@ typedef DWORD (WINAPI * TIMEGETTIME_T) (void);
|
||||
#define _GLFW_WNDCLASSNAME L"GLFW30"
|
||||
|
||||
|
||||
#if defined(_GLFW_WIN32_WGL)
|
||||
#if defined(_GLFW_WGL)
|
||||
#include "wgl_platform.h"
|
||||
#elif defined(_GLFW_WIN32_EGL)
|
||||
#elif defined(_GLFW_EGL)
|
||||
#define _GLFW_EGL_NATIVE_WINDOW window->Win32.handle
|
||||
#define _GLFW_EGL_NATIVE_DISPLAY NULL
|
||||
#include "egl_platform.h"
|
||||
|
@ -449,7 +449,7 @@ GLFWvidmode* _glfwPlatformGetVideoModes(int* found)
|
||||
rgbs = (int*) malloc(sizeof(int) * visualCount);
|
||||
rgbCount = 0;
|
||||
|
||||
#if !defined(_GLFW_X11_EGL)
|
||||
#if defined(_GLFW_GLX)
|
||||
for (i = 0; i < visualCount; i++)
|
||||
{
|
||||
int gl, rgba, rgb, r, g, b;
|
||||
|
@ -693,9 +693,9 @@ int _glfwPlatformTerminate(void)
|
||||
const char* _glfwPlatformGetVersionString(void)
|
||||
{
|
||||
const char* version = _GLFW_VERSION_FULL
|
||||
#if defined(_GLFW_X11_GLX)
|
||||
#if defined(_GLFW_GLX)
|
||||
" GLX"
|
||||
#elif defined(_GLFW_X11_EGL)
|
||||
#elif defined(_GLFW_EGL)
|
||||
" EGL"
|
||||
#endif
|
||||
#if defined(_GLFW_HAS_XRANDR)
|
||||
|
@ -53,10 +53,10 @@
|
||||
#include <X11/XKBlib.h>
|
||||
#endif
|
||||
|
||||
#if defined(_GLFW_X11_GLX)
|
||||
#if defined(_GLFW_GLX)
|
||||
#define _GLFW_X11_CONTEXT_VISUAL window->GLX.visual
|
||||
#include "glx_platform.h"
|
||||
#elif defined(_GLFW_X11_EGL)
|
||||
#elif defined(_GLFW_EGL)
|
||||
#define _GLFW_X11_CONTEXT_VISUAL window->EGL.visual
|
||||
#define _GLFW_EGL_NATIVE_WINDOW window->X11.handle
|
||||
#define _GLFW_EGL_NATIVE_DISPLAY _glfwLibrary.X11.display
|
||||
|
Loading…
Reference in New Issue
Block a user