Clone of mesa.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. Import('*')
  2. env = env.Clone()
  3. env.Tool('llvm')
  4. if not env.has_key('LLVM_VERSION'):
  5. print 'warning: LLVM not found: not building llvmpipe'
  6. Return()
  7. env.Tool('udis86')
  8. env.Append(CPPPATH = ['.'])
  9. env.CodeGenerate(
  10. target = 'lp_tile_soa.c',
  11. script = 'lp_tile_soa.py',
  12. source = ['#src/gallium/auxiliary/util/u_format.csv'],
  13. command = 'python $SCRIPT $SOURCE > $TARGET'
  14. )
  15. llvmpipe = env.ConvenienceLibrary(
  16. target = 'llvmpipe',
  17. source = [
  18. 'lp_bld_alpha.c',
  19. 'lp_bld_arit.c',
  20. 'lp_bld_blend_aos.c',
  21. 'lp_bld_blend_logicop.c',
  22. 'lp_bld_blend_soa.c',
  23. 'lp_bld_const.c',
  24. 'lp_bld_conv.c',
  25. 'lp_bld_debug.c',
  26. 'lp_bld_depth.c',
  27. 'lp_bld_flow.c',
  28. 'lp_bld_format_aos.c',
  29. 'lp_bld_format_query.c',
  30. 'lp_bld_format_soa.c',
  31. 'lp_bld_interp.c',
  32. 'lp_bld_intr.c',
  33. 'lp_bld_misc.cpp',
  34. 'lp_bld_pack.c',
  35. 'lp_bld_sample.c',
  36. 'lp_bld_sample_soa.c',
  37. 'lp_bld_struct.c',
  38. 'lp_bld_logic.c',
  39. 'lp_bld_swizzle.c',
  40. 'lp_bld_tgsi_soa.c',
  41. 'lp_bld_type.c',
  42. 'lp_buffer.c',
  43. 'lp_clear.c',
  44. 'lp_context.c',
  45. 'lp_draw_arrays.c',
  46. 'lp_flush.c',
  47. 'lp_jit.c',
  48. 'lp_prim_vbuf.c',
  49. 'lp_setup.c',
  50. 'lp_query.c',
  51. 'lp_screen.c',
  52. 'lp_state_blend.c',
  53. 'lp_state_clip.c',
  54. 'lp_state_derived.c',
  55. 'lp_state_fs.c',
  56. 'lp_state_rasterizer.c',
  57. 'lp_state_sampler.c',
  58. 'lp_state_surface.c',
  59. 'lp_state_vertex.c',
  60. 'lp_state_vs.c',
  61. 'lp_surface.c',
  62. 'lp_tex_cache.c',
  63. 'lp_tex_sample_llvm.c',
  64. 'lp_texture.c',
  65. 'lp_tile_cache.c',
  66. 'lp_tile_soa.c',
  67. ])
  68. if env['platform'] != 'embedded':
  69. env = env.Clone()
  70. env.Prepend(LIBS = [llvmpipe] + gallium)
  71. tests = [
  72. 'format',
  73. 'blend',
  74. 'conv',
  75. ]
  76. for test in tests:
  77. target = env.Program(
  78. target = 'lp_test_' + test,
  79. source = ['lp_test_' + test + '.c', 'lp_test_main.c'],
  80. )
  81. env.InstallProgram(target)
  82. Export('llvmpipe')