'enable static code analysis where available', 'no'))
opts.Add(BoolOption('asan', 'enable Address Sanitizer', 'no'))
opts.Add('toolchain', 'compiler toolchain', default_toolchain)
- opts.Add(BoolOption('gles', 'EXPERIMENTAL: enable OpenGL ES support',
- 'no'))
opts.Add(BoolOption('llvm', 'use LLVM', default_llvm))
opts.Add(BoolOption('openmp', 'EXPERIMENTAL: compile with openmp (swrast)',
'no'))
if env['platform'] != 'windows':
SConscript('loader/SConscript')
-# When env['gles'] is set, the targets defined in mapi/glapi/SConscript are not
-# used. libgl-xlib and libgl-gdi adapt themselves to use the targets defined
-# in mapi/glapi-shared/SConscript. mesa/SConscript also adapts itself to
-# enable OpenGL ES support.
SConscript('mapi/glapi/gen/SConscript')
SConscript('mapi/glapi/SConscript')
if env['platform'] == 'haiku':
SConscript('egl/SConscript')
- if env['gles']:
- SConscript('mapi/shared-glapi/SConscript')
-
SConscript('gallium/SConscript')
env.AppendUnique(CPPDEFINES = [
'BUILD_GL32', # declare gl* as __declspec(dllexport) in Mesa headers
'WIN32_LEAN_AND_MEAN', # http://msdn2.microsoft.com/en-us/library/6dwk3a1z.aspx
+ '_GLAPI_NO_EXPORTS', # prevent _glapi_* from being declared __declspec(dllimport)
])
- if not env['gles']:
- # prevent _glapi_* from being declared __declspec(dllimport)
- env.Append(CPPDEFINES = ['_GLAPI_NO_EXPORTS'])
st_osmesa = env.ConvenienceLibrary(
target ='st_osmesa',
'_GDI32_', # prevent wgl* being declared __declspec(dllimport)
'BUILD_GL32', # declare gl* as __declspec(dllexport) in Mesa headers
'WIN32_LEAN_AND_MEAN', # http://msdn2.microsoft.com/en-us/library/6dwk3a1z.aspx
+ '_GLAPI_NO_EXPORTS', # prevent _glapi_* from being declared __declspec(dllimport)
])
-if not env['gles']:
- # prevent _glapi_* from being declared __declspec(dllimport)
- env.Append(CPPDEFINES = ['_GLAPI_NO_EXPORTS'])
wgl = env.ConvenienceLibrary(
target ='wgl',
env['no_import_lib'] = 1
-# when GLES is enabled, gl* and _glapi_* belong to bridge_glapi and
-# shared_glapi respectively
-if env['gles']:
- env.Prepend(LIBPATH = [shared_glapi.dir])
- glapi = [bridge_glapi, 'libglapi']
-
opengl32 = env.SharedLibrary(
target ='opengl32',
source = sources,
env.Prepend(LIBS = env['X11_LIBS'])
env.Prepend(LIBPATH = env['X11_LIBPATH'])
-# when GLES is enabled, gl* and _glapi_* belong to bridge_glapi and
-# shared_glapi respectively
-if env['gles']:
- env.Prepend(LIBPATH = [shared_glapi.dir])
- glapi = [bridge_glapi, 'glapi']
-
env.Prepend(LIBS = [
st_xlib,
ws_xlib,
'_GDI32_', # prevent gl* being declared __declspec(dllimport) in MS headers
'BUILD_GL32', # declare gl* as __declspec(dllexport) in Mesa headers
'KHRONOS_DLL_EXPORTS', # declare gl* as __declspec(dllexport) in Khronos headers
+ '_GLAPI_NO_EXPORTS', # prevent _glapi_* from being declared __declspec(dllimport)
])
- if env['gles']:
- env.Append(CPPDEFINES = ['_GLAPI_DLL_EXPORTS'])
- else:
- # prevent _glapi_* from being declared __declspec(dllimport)
- env.Append(CPPDEFINES = ['_GLAPI_NO_EXPORTS'])
env.Append(CPPPATH = [
'#/src',
else:
shared_glapi = env.FindIxes(shared_glapi, 'SHLIBPREFIX', 'SHLIBSUFFIX')
-# build glapi bridge as a convenience libarary for libgl-xlib/libgl-gdi
-bridge_glapi_objects = mapi_objects(env, 'glapi', 'bridge')
-bridge_glapi = env.ConvenienceLibrary(
- target = 'glapi_bridge',
- source = bridge_glapi_objects,
-)
-
-Export(['shared_glapi', 'bridge_glapi'])
+Export(['shared_glapi'])
env.Append(CPPDEFINES = [
'_GDI32_', # prevent gl* being declared __declspec(dllimport) in MS headers
'BUILD_GL32', # declare gl* as __declspec(dllexport) in Mesa headers
+ '_GLAPI_NO_EXPORTS', # prevent _glapi_* from being declared __declspec(dllimport)
])
- if not env['gles']:
- # prevent _glapi_* from being declared __declspec(dllimport)
- env.Append(CPPDEFINES = ['_GLAPI_NO_EXPORTS'])
# parse Makefile.sources
source_lists = env.ParseSourceList('Makefile.sources')
env.AppendUnique(CPPDEFINES = [
'_GDI32_', # prevent wgl* being declared __declspec(dllimport)
'BUILD_GL32', # declare gl* as __declspec(dllexport) in Mesa headers
+ '_GLAPI_NO_EXPORTS', # prevent _glapi_* from being declared __declspec(dllimport)
])
- if not env['gles']:
- # prevent _glapi_* from being declared __declspec(dllimport)
- env.Append(CPPDEFINES = ['_GLAPI_NO_EXPORTS'])
sources += ['osmesa.def']