summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/x11/SConscript
blob: cd9eaa3ea89adecbc7afb3d0059e791fdf238b48 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Import('*')

env = env.Clone()

env.Append(CPPPATH = [
    '#/src',
    '#/src/mapi',
    '#/src/mesa',
    '#/src/mesa/main',
    Dir('../../../mapi'), # src/mapi build path for python-generated GL API files/headers
    Dir('../../../mapi/glapi/gen'), # src/mapi/glapi/gen build path for python-generated GL API files/headers
])

env.Append(CPPDEFINES = ['USE_XSHM'])

env.Prepend(LIBS = env['X11_LIBS'])
env.Prepend(LIBPATH = env['X11_LIBPATH'])

env.Prepend(LIBS = [
    glapi,
    mesautil,
    compiler,
    glsl,
    mesa,
    spirv,
    nir,
])

sources = [
	'fakeglx.c',
	'glxapi.c',
	'xfonts.c',
	'xm_api.c',
	'xm_buffer.c',
	'xm_dd.c',
	'xm_line.c',
	'xm_tri.c',
]

if env['platform'] != 'darwin':
    # Disallow undefined symbols, except with Address Sanitizer, since libasan
    # is not linked on shared libs, as it should be LD_PRELOAD'ed instead
    if not env['asan']:
        env.Append(SHLINKFLAGS = [
            '-Wl,-z,defs',
        ])

# libGL.so.1.6
libgl_1_6 = env.SharedLibrary(
    target ='GL',
    source = sources,
    SHLIBSUFFIX = env['SHLIBSUFFIX'] + '.1.6',
)

# libGL.so.1
libgl = env.subst('${SHLIBPREFIX}GL${SHLIBSUFFIX}')
libgl_1 = libgl + '.1'
env.Command(libgl_1, libgl_1_6, "ln -sf ${SOURCE.file} ${TARGET}")
env.Command(libgl, libgl_1, "ln -sf ${SOURCE.file} ${TARGET}")

env.Alias('libgl-xlib-swrast', libgl)