Squashed commit of the following:
[profile/ivi/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 ])
26
27 llvmpipe = env.ConvenienceLibrary(
28         target = 'llvmpipe',
29         source = [
30                 'lp_clear.c',
31                 'lp_context.c',
32                 'lp_draw_arrays.c',
33                 'lp_fence.c',
34                 'lp_flush.c',
35                 'lp_jit.c',
36                 'lp_perf.c',
37                 'lp_query.c',
38                 'lp_rast.c',
39                 'lp_rast_tri.c',
40                 'lp_scene.c',
41                 'lp_scene_queue.c',
42                 'lp_screen.c',
43                 'lp_setup.c',
44                 'lp_setup_line.c',
45                 'lp_setup_point.c',
46                 'lp_setup_tri.c',
47                 'lp_setup_vbuf.c',
48                 'lp_state_blend.c',
49                 'lp_state_clip.c',
50                 'lp_state_derived.c',
51                 'lp_state_fs.c',
52                 'lp_state_rasterizer.c',
53                 'lp_state_sampler.c',
54                 'lp_state_surface.c',
55                 'lp_state_vertex.c',
56                 'lp_state_vs.c',
57                 'lp_surface.c',
58                 'lp_tex_sample_llvm.c',
59                 'lp_texture.c',
60                 'lp_tile_image.c',
61                 'lp_tile_soa.c',
62         ])
63
64
65 if env['platform'] != 'embedded':
66     env = env.Clone()
67
68     env.Prepend(LIBS = [llvmpipe] + gallium)
69
70     tests = [
71         'blend',
72         'conv',
73     ]
74
75     for test in tests:
76         target = env.Program(
77             target = 'lp_test_' + test,
78             source = ['lp_test_' + test + '.c', 'lp_test_main.c'],
79         )
80         env.InstallProgram(target)
81
82     Export('llvmpipe')