SConscript revision 848b8605
1#######################################################################
2# SConscript for xlib winsys
3
4Import('*')
5
6env = env.Clone()
7
8env.Append(CPPPATH = [
9    '#/src/mapi',
10    '#/src/mesa',
11    '#/src/mesa/main',
12    '#src/gallium/state_trackers/glx/xlib',
13    Dir('../../../mapi'), # src/mapi build path for python-generated GL API files/headers
14])
15
16env.Append(CPPDEFINES = ['USE_XSHM'])
17
18env.Prepend(LIBS = env['X11_LIBS'])
19env.Prepend(LIBPATH = env['X11_LIBPATH'])
20
21# when GLES is enabled, gl* and _glapi_* belong to bridge_glapi and
22# shared_glapi respectively
23if env['gles']:
24    env.Prepend(LIBPATH = [shared_glapi.dir])
25    glapi = [bridge_glapi, 'glapi']
26
27env.Prepend(LIBS = [
28    st_xlib,
29    ws_xlib,
30    glapi,
31    mesautil,
32    mesa,
33    glsl,
34    gallium,
35])
36
37sources = [
38    'xlib.c',
39]
40
41if True:
42    env.Append(CPPDEFINES = ['GALLIUM_TRACE', 'GALLIUM_RBUG', 'GALLIUM_GALAHAD', 'GALLIUM_SOFTPIPE'])
43    env.Prepend(LIBS = [trace, rbug, galahad, softpipe])
44
45if env['llvm']:
46    env.Append(CPPDEFINES = ['GALLIUM_LLVMPIPE'])
47    env.Prepend(LIBS = [llvmpipe])
48
49# Disallow undefined symbols
50if env['platform'] != 'darwin':
51    env.Append(SHLINKFLAGS = ['-Wl,-z,defs'])
52
53# libGL.so.1.5
54libgl_1_5 = env.SharedLibrary(
55    target ='GL',
56    source = sources,
57    SHLIBSUFFIX = env['SHLIBSUFFIX'] + '.1.5',
58)
59
60# libGL.so.1
61libgl = env.subst('${SHLIBPREFIX}GL${SHLIBSUFFIX}')
62libgl_1 = libgl + '.1'
63env.Command(libgl_1, libgl_1_5, "ln -sf ${SOURCE.file} ${TARGET}")
64env.Command(libgl, libgl_1, "ln -sf ${SOURCE.file} ${TARGET}")
65
66env.Alias('libgl-xlib', libgl)
67