Merge branch 'gallium-vertexelementcso'
[mesa.git] / src / gallium / drivers / llvmpipe / SConscript
1 Import('*')
2
3 env = env.Clone()
4
5 env.Tool('llvm')
6 if not env.has_key('LLVM_VERSION'):
7 print 'warning: LLVM not found: not building llvmpipe'
8 Return()
9
10 env.Tool('udis86')
11
12 env.Append(CPPPATH = ['.'])
13
14 env.CodeGenerate(
15 target = 'lp_tile_soa.c',
16 script = 'lp_tile_soa.py',
17 source = ['#src/gallium/auxiliary/util/u_format.csv'],
18 command = 'python $SCRIPT $SOURCE > $TARGET'
19 )
20
21 # XXX: Our dependency scanner only finds depended modules in relative dirs.
22 env.Depends('lp_tile_soa.c', [
23 '#src/gallium/auxiliary/util/u_format_parse.py',
24 '#src/gallium/auxiliary/util/u_format_pack.py',
25 '#src/gallium/auxiliary/util/u_format_access.py',
26 ])
27
28 llvmpipe = env.ConvenienceLibrary(
29 target = 'llvmpipe',
30 source = [
31 'lp_buffer.c',
32 'lp_clear.c',
33 'lp_context.c',
34 'lp_draw_arrays.c',
35 'lp_fence.c',
36 'lp_flush.c',
37 'lp_jit.c',
38 'lp_perf.c',
39 'lp_query.c',
40 'lp_rast.c',
41 'lp_rast_tri.c',
42 'lp_scene.c',
43 'lp_scene_queue.c',
44 'lp_screen.c',
45 'lp_setup.c',
46 'lp_setup_line.c',
47 'lp_setup_point.c',
48 'lp_setup_tri.c',
49 'lp_setup_vbuf.c',
50 'lp_state_blend.c',
51 'lp_state_clip.c',
52 'lp_state_derived.c',
53 'lp_state_fs.c',
54 'lp_state_rasterizer.c',
55 'lp_state_sampler.c',
56 'lp_state_surface.c',
57 'lp_state_vertex.c',
58 'lp_state_vs.c',
59 'lp_surface.c',
60 'lp_tex_sample_llvm.c',
61 'lp_texture.c',
62 'lp_tile_image.c',
63 'lp_tile_soa.c',
64 ])
65
66
67 if env['platform'] != 'embedded':
68 env = env.Clone()
69
70 env.Prepend(LIBS = [llvmpipe] + gallium)
71
72 tests = [
73 'format',
74 'blend',
75 'conv',
76 ]
77
78 for test in tests:
79 target = env.Program(
80 target = 'lp_test_' + test,
81 source = ['lp_test_' + test + '.c', 'lp_test_main.c'],
82 )
83 env.InstallProgram(target)
84
85 Export('llvmpipe')