diff options
author | Andreas Fänger <a.faenger@e-sign.com> | 2016-03-08 11:04:00 +0000 |
---|---|---|
committer | Emil Velikov <emil.l.velikov@gmail.com> | 2016-05-30 17:53:45 +0100 |
commit | 9601815b4be886f4d92bf74916de98f3bdb7275c (patch) | |
tree | 07d53ae73b827123a109efdb7800877107bf7904 | |
parent | 3689ef32afdafbb030069e560aac0e563fc29048 (diff) |
scons: build osmesa swrast and gallium
This patch makes it possible to build classic osmesa/swrast on windows
again. It was removed in commit 69db422218b0264b5b8eef45bd003a2544e9cbd6.
Although there is a gallium version of osmesa now, the swrast version
still has more features lacking in llvmpipe, e.g. anisotropic filtering.
Tested-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
[Emil Velikov: remove trailing whitespace]
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
-rw-r--r-- | src/mesa/drivers/SConscript | 2 | ||||
-rw-r--r-- | src/mesa/drivers/osmesa/SConscript | 40 | ||||
-rw-r--r-- | src/mesa/drivers/osmesa/osmesa.def | 15 |
3 files changed, 57 insertions, 0 deletions
diff --git a/src/mesa/drivers/SConscript b/src/mesa/drivers/SConscript index 5d654f538b..476425be27 100644 --- a/src/mesa/drivers/SConscript +++ b/src/mesa/drivers/SConscript @@ -1,5 +1,7 @@ Import('*') +SConscript('osmesa/SConscript') + if env['x11']: SConscript('x11/SConscript') diff --git a/src/mesa/drivers/osmesa/SConscript b/src/mesa/drivers/osmesa/SConscript new file mode 100644 index 0000000000..728031446e --- /dev/null +++ b/src/mesa/drivers/osmesa/SConscript @@ -0,0 +1,40 @@ +Import('*') + +env = env.Clone() + +env.Prepend(CPPPATH = [ + '#src', + '#src/mapi', + '#src/mesa', + Dir('../../../mapi'), # src/mapi build path for python-generated GL API files/headers +]) + +env.Prepend(LIBS = [ + mesautil, + glapi, + compiler, + mesa, + glsl, +]) + +sources = [ + 'osmesa.c', +] + +if env['platform'] == 'windows': + env.AppendUnique(CPPDEFINES = [ + '_GDI32_', # prevent wgl* being declared __declspec(dllimport) + 'BUILD_GL32', # declare gl* as __declspec(dllexport) in Mesa headers + ]) + if not env['gles']: + # prevent _glapi_* from being declared __declspec(dllimport) + env.Append(CPPDEFINES = ['_GLAPI_NO_EXPORTS']) + + sources += ['osmesa.def'] + +osmesa = env.SharedLibrary( + target ='osmesa', + source = sources, +) + +env.Alias('osmesa', osmesa) diff --git a/src/mesa/drivers/osmesa/osmesa.def b/src/mesa/drivers/osmesa/osmesa.def new file mode 100644 index 0000000000..06afab72b0 --- /dev/null +++ b/src/mesa/drivers/osmesa/osmesa.def @@ -0,0 +1,15 @@ +;DESCRIPTION 'Mesa OSMesa lib for Win32' +VERSION 4.1 + +EXPORTS + OSMesaColorClamp + OSMesaCreateContext + OSMesaCreateContextExt + OSMesaDestroyContext + OSMesaMakeCurrent + OSMesaGetCurrentContext + OSMesaPixelStore + OSMesaGetIntegerv + OSMesaGetDepthBuffer + OSMesaGetColorBuffer + OSMesaGetProcAddress |