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 Dir('../../../mapi/glapi'), # src/mapi/glapi build path ]) 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)