1848b8605SmrgImport('*')
2848b8605Smrg
3848b8605Smrgenv = env.Clone()
4848b8605Smrg
5848b8605Smrgenv.Append(CPPPATH = [
6848b8605Smrg    '#/src',
7848b8605Smrg    '#/src/mapi',
8848b8605Smrg    '#/src/mesa',
9848b8605Smrg    '#/src/mesa/main',
10848b8605Smrg    Dir('../../../mapi'), # src/mapi build path for python-generated GL API files/headers
11848b8605Smrg])
12848b8605Smrg
13848b8605Smrgenv.Append(CPPDEFINES = ['USE_XSHM'])
14848b8605Smrg
15848b8605Smrgenv.Prepend(LIBS = env['X11_LIBS'])
16848b8605Smrgenv.Prepend(LIBPATH = env['X11_LIBPATH'])
17848b8605Smrg
18848b8605Smrgenv.Prepend(LIBS = [
19848b8605Smrg    glapi,
20848b8605Smrg    mesautil,
21b8e80941Smrg    compiler,
22848b8605Smrg    glsl,
23848b8605Smrg    mesa,
24b8e80941Smrg    spirv,
25b8e80941Smrg    nir,
26848b8605Smrg])
27848b8605Smrg
28848b8605Smrgsources = [
29848b8605Smrg	'fakeglx.c',
30848b8605Smrg	'glxapi.c',
31848b8605Smrg	'xfonts.c',
32848b8605Smrg	'xm_api.c',
33848b8605Smrg	'xm_buffer.c',
34848b8605Smrg	'xm_dd.c',
35848b8605Smrg	'xm_line.c',
36848b8605Smrg	'xm_tri.c',
37848b8605Smrg]
38848b8605Smrg
39848b8605Smrgif env['platform'] != 'darwin':
40b8e80941Smrg    # Disallow undefined symbols, except with Address Sanitizer, since libasan
41b8e80941Smrg    # is not linked on shared libs, as it should be LD_PRELOAD'ed instead
42b8e80941Smrg    if not env['asan']:
43b8e80941Smrg        env.Append(SHLINKFLAGS = [
44b8e80941Smrg            '-Wl,-z,defs',
45b8e80941Smrg        ])
46848b8605Smrg
47848b8605Smrg# libGL.so.1.6
48848b8605Smrglibgl_1_6 = env.SharedLibrary(
49848b8605Smrg    target ='GL',
50848b8605Smrg    source = sources,
51848b8605Smrg    SHLIBSUFFIX = env['SHLIBSUFFIX'] + '.1.6',
52848b8605Smrg)
53848b8605Smrg
54848b8605Smrg# libGL.so.1
55848b8605Smrglibgl = env.subst('${SHLIBPREFIX}GL${SHLIBSUFFIX}')
56848b8605Smrglibgl_1 = libgl + '.1'
57848b8605Smrgenv.Command(libgl_1, libgl_1_6, "ln -sf ${SOURCE.file} ${TARGET}")
58848b8605Smrgenv.Command(libgl, libgl_1, "ln -sf ${SOURCE.file} ${TARGET}")
59848b8605Smrg
60848b8605Smrgenv.Alias('libgl-xlib-swrast', libgl)
61