gallium: Add a dumb drm/kms winsys backed swrast provider
[mesa.git] / src / gallium / targets / dri / SConscript
1 Import('*')
2
3 env = drienv.Clone()
4
5 if env['suncc']:
6 print 'warning: not building dri-vmwgfx'
7 Return()
8
9 env.Append(CPPPATH = [
10 '#/src/loader',
11 '#/src/mapi',
12 '#/src/mesa',
13 '#/src/mesa/drivers/dri/common',
14 '#/src/gallium/state_trackers/dri',
15 ])
16
17 if env['build'] == 'release':
18 env.Append(CPPDEFINES = ['GALLIUM_RBUG'])
19 env.Prepend(LIBS = [rbug])
20 else:
21 env.Append(CPPDEFINES = ['GALLIUM_TRACE', 'GALLIUM_RBUG', 'GALLIUM_GALAHAD'])
22 env.Prepend(LIBS = [trace, rbug, galahad])
23
24 if env['llvm']:
25 env.Append(CPPDEFINES = 'GALLIUM_LLVMPIPE')
26 env.Prepend(LIBS = [llvmpipe])
27
28 env.Append(CPPDEFINES = [
29 'GALLIUM_VMWGFX',
30 'GALLIUM_SOFTPIPE',
31 'DRI_TARGET',
32 ])
33
34 env.Prepend(LIBS = [
35 st_dri,
36 svgadrm,
37 svga,
38 ws_dri,
39 ws_kms_dri,
40 softpipe,
41 libloader,
42 mesa,
43 glsl,
44 gallium,
45 megadrivers_stub,
46 dri_common,
47 ])
48
49 module = env.LoadableModule(
50 target = 'gallium_dri.so',
51 source = 'target.c',
52 SHLIBPREFIX = '',
53 )
54
55 # vmwgfx_dri.so
56 env.Command('vmwgfx_dri.so', 'gallium_dri.so', "ln -f ${SOURCE} ${TARGET}")
57 # swrast_dri.so
58 env.Command('swrast_dri.so', 'gallium_dri.so', "ln -f ${SOURCE} ${TARGET}")
59 # kms_swrast_dri.so
60 env.Command('kms_swrast_dri.so', 'gallium_dri.so', "ln -f ${SOURCE} ${TARGET}")
61
62 env.Alias('dri-vmwgfx', module)
63 env.Alias('dri-swrast', module)
64 env.Alias('dri-kms-swrast', module)