GLEW: Define static + enabled and includes via SCons

This allows us not to have to hack our definitions in the upstream files,
making it easier to upgrade to newer versions in the future.

For the include paths to work, the headers are moved to a GL subfolder to
match their upstream location.
This commit is contained in:
Rémi Verschelde 2016-06-07 19:59:33 +02:00
parent 4c658dc523
commit 768e925271
12 changed files with 23 additions and 29 deletions

View file

@ -80,8 +80,6 @@
#define __glew_h__
#define __GLEW_H__
#define GLEW_STATIC
#if defined(__gl_h_) || defined(__GL_H__) || defined(__X_GL_H)
#error gl.h included before glew.h
#endif

View file

@ -80,8 +80,6 @@
#define __glxew_h__
#define __GLXEW_H__
#define GLEW_STATIC
#ifdef __glxext_h_
#error glxext.h included before glxew.h
#endif
@ -99,7 +97,7 @@
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/Xmd.h>
#include "drivers/gl_context/glew.h"
#include <GL/glew.h>
#ifdef __cplusplus
extern "C" {

View file

@ -56,8 +56,6 @@
#define __wglew_h__
#define __WGLEW_H__
#define GLEW_STATIC
#ifdef __wglext_h_
#error wglext.h included before wglew.h
#endif

View file

@ -1,5 +1,11 @@
Import('env')
Export('env');
env.add_source_files(env.drivers_sources,"*.cpp")
env.add_source_files(env.drivers_sources,"*.c")
if (env.get('glew') == 'yes'):
env.add_source_files(env.drivers_sources,"glew.c")
env.Append(CPPFLAGS = ['-DGLEW_ENABLED'])
env.Append(CPPFLAGS = ['-DGLEW_STATIC'])
env.Append(CPPPATH = ['.'])
Export('env')

View file

@ -1,4 +1,3 @@
#ifdef GLEW_ENABLED
/*
** The OpenGL Extension Wrangler Library
** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
@ -30,11 +29,11 @@
** THE POSSIBILITY OF SUCH DAMAGE.
*/
#include "drivers/gl_context/glew.h"
#include <GL/glew.h>
#if defined(_WIN32)
# include "drivers/gl_context/wglew.h"
# include <GL/wglew.h>
#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
# include "drivers/gl_context/glxew.h"
# include <GL/glxew.h>
#endif
/*
@ -15156,5 +15155,3 @@ GLboolean glxewIsSupported (const char* name)
}
#endif /* _WIN32 */
#endif

View file

@ -23,7 +23,8 @@ def get_opts():
def get_flags():
return [
('builtin_zlib', 'no')
('builtin_zlib', 'no'),
#('glew', 'yes'), # TODO: investigate the GLEW situation on Haiku
]
def configure(env):
@ -52,7 +53,6 @@ def configure(env):
#env.Append(CCFLAGS=['-DFREETYPE_ENABLED'])
env.Append(CPPFLAGS = ['-DPTHREAD_NO_RENAME']) # TODO: enable when we have pthread_setname_np
#env.Append(CPPFLAGS = ['-DGLEW_ENABLED']) # TODO: investigate the GLEW situation on Haiku
env.Append(CPPFLAGS = ['-DOPENGL_ENABLED', '-DMEDIA_KIT_ENABLED'])
env.Append(CPPFLAGS = ['-DUNIX_ENABLED', '-DGLES2_ENABLED', '-DGLES_OVER_GL'])
env.Append(LIBS = ['be', 'game', 'media', 'network', 'bnetapi', 'z', 'GL'])

View file

@ -28,10 +28,10 @@ def get_opts():
def get_flags():
return [
('opengl', 'no'),
('legacygl', 'yes'),
('builtin_zlib', 'no'),
('freetype','builtin'), #use builtin freetype
('glew', 'yes'),
]
@ -94,11 +94,8 @@ def configure(env):
# env.Append(LIBPATH=['#platform/osx/lib'])
#if env['opengl'] == 'yes':
# env.Append(CPPFLAGS=['-DOPENGL_ENABLED','-DGLEW_ENABLED'])
env.Append(CPPFLAGS=["-DAPPLE_STYLE_KEYS"])
env.Append(CPPFLAGS=['-DUNIX_ENABLED','-DGLES2_ENABLED','-DGLEW_ENABLED', '-DOSX_ENABLED'])
env.Append(CPPFLAGS=['-DUNIX_ENABLED','-DGLES2_ENABLED','-DOSX_ENABLED'])
env.Append(LIBS=['pthread'])
#env.Append(CPPFLAGS=['-F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks', '-isysroot', '/Developer/SDKs/MacOSX10.4u.sdk', '-mmacosx-version-min=10.4'])
#env.Append(LINKFLAGS=['-mmacosx-version-min=10.4', '-isysroot', '/Developer/SDKs/MacOSX10.4u.sdk', '-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk'])

View file

@ -27,6 +27,5 @@
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/*************************************************************************/
#include <alloca.h>
#define GLES2_INCLUDE_H "gl_context/glew.h"
#define GLES1_INCLUDE_H "gl_context/glew.h"
#define GLES2_INCLUDE_H "gl_context/GL/glew.h"
#define PTHREAD_RENAME_SELF

View file

@ -169,6 +169,7 @@ def get_flags():
return [
('freetype','builtin'), #use builtin freetype
('glew','yes'),
('openssl','builtin'), #use builtin openssl
]
@ -242,7 +243,6 @@ def configure(env):
env.Append(CCFLAGS=['/DGLES2_ENABLED'])
env.Append(CCFLAGS=['/DGLEW_ENABLED'])
LIBS=['winmm','opengl32','dsound','kernel32','ole32','oleaut32','user32','gdi32', 'IPHLPAPI','Shlwapi', 'wsock32', 'shell32','advapi32','dinput8','dxguid']
env.Append(LINKFLAGS=[p+env["LIBSUFFIX"] for p in LIBS])
@ -369,7 +369,7 @@ def configure(env):
env.Append(CCFLAGS=['-DWINDOWS_ENABLED','-mwindows'])
env.Append(CPPFLAGS=['-DRTAUDIO_ENABLED'])
env.Append(CCFLAGS=['-DGLES2_ENABLED','-DGLEW_ENABLED'])
env.Append(CCFLAGS=['-DGLES2_ENABLED'])
env.Append(LIBS=['mingw32','opengl32', 'dsound', 'ole32', 'd3d9','winmm','gdi32','iphlpapi','shlwapi','wsock32','kernel32', 'oleaut32', 'dinput8', 'dxguid'])
# if (env["bits"]=="32"):

View file

@ -30,6 +30,6 @@
//#else
//#include <alloca.h>
//#endif
#define GLES2_INCLUDE_H "gl_context/glew.h"
#define GLES2_INCLUDE_H "gl_context/GL/glew.h"

View file

@ -65,6 +65,7 @@ def get_flags():
return [
('builtin_zlib', 'no'),
('glew', 'yes'),
("openssl", "yes"),
#("theora","no"),
]
@ -147,7 +148,7 @@ def configure(env):
env.Append(CPPPATH=['#drivers/freetype/freetype/include'])
env.Append(CPPFLAGS=['-DOPENGL_ENABLED','-DGLEW_ENABLED'])
env.Append(CPPFLAGS=['-DOPENGL_ENABLED'])
if os.system("pkg-config --exists alsa")==0:
print("Enabling ALSA")

View file

@ -34,6 +34,6 @@
#define PTHREAD_BSD_SET_NAME
#endif
#define GLES2_INCLUDE_H "gl_context/glew.h"
#define GLES2_INCLUDE_H "gl_context/GL/glew.h"