Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  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'])
  22.     env.Prepend(LIBS = [trace, rbug])
  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.     'HAVE_LIBDRM',
  33. ])
  34.  
  35. env.Prepend(LIBS = [
  36.     st_dri,
  37.     svgadrm,
  38.     svga,
  39.     ws_dri,
  40.     ws_kms_dri,
  41.     softpipe,
  42.     libloader,
  43.     mesautil,
  44.     mesa,
  45.     glsl,
  46.     gallium,
  47.     megadrivers_stub,
  48.     dri_common,
  49. ])
  50.  
  51. module = env.LoadableModule(
  52.     target = 'gallium_dri.so',
  53.     source = 'target.c',
  54.     SHLIBPREFIX = '',
  55. )
  56.  
  57. # vmwgfx_dri.so
  58. env.Command('vmwgfx_dri.so', 'gallium_dri.so', "ln -f ${SOURCE} ${TARGET}")
  59. # swrast_dri.so
  60. env.Command('swrast_dri.so', 'gallium_dri.so', "ln -f ${SOURCE} ${TARGET}")
  61. # kms_swrast_dri.so
  62. env.Command('kms_swrast_dri.so', 'gallium_dri.so', "ln -f ${SOURCE} ${TARGET}")
  63.  
  64. env.Alias('dri-vmwgfx', module)
  65. env.Alias('dri-swrast', module)
  66. env.Alias('dri-kms-swrast', module)
  67.