1Import('*')
2
3env = env.Clone()
4
5env.Prepend(CPPPATH = [
6    '#src',
7    '#src/mapi',
8    '#src/mesa',
9    Dir('../../../mapi'), # src/mapi build path for python-generated GL API files/headers
10])
11
12env.Prepend(LIBS = [
13    mesautil,
14    glapi,
15    compiler,
16    mesa,
17    glsl,
18])
19
20sources = [
21    'osmesa.c',
22]
23
24if env['platform'] == 'windows':
25    env.AppendUnique(CPPDEFINES = [
26        '_GDI32_', # prevent wgl* being declared __declspec(dllimport)
27        'BUILD_GL32', # declare gl* as __declspec(dllexport) in Mesa headers
28    ])
29    if not env['gles']:
30        # prevent _glapi_* from being declared __declspec(dllimport)
31        env.Append(CPPDEFINES = ['_GLAPI_NO_EXPORTS'])
32
33    sources += ['osmesa.def']
34
35osmesa = env.SharedLibrary(
36    target ='osmesa',
37    source = sources,
38)
39
40env.Alias('osmesa', osmesa)
41