blob: a4dabb7804cca9a361958b7a3b192e17d4f79614 [file] [log] [blame]
#######################################################################
# SConscript for xlib winsys
Import('*')
if env['platform'] != 'linux':
Return()
if 'mesa' not in env['statetrackers']:
print 'warning: Mesa state tracker disabled: skipping build of xlib libGL.so'
Return()
if env['dri']:
print 'warning: DRI enabled: skipping build of xlib libGL.so'
Return()
if 'trace' not in env['drivers']:
print 'warning: trace pipe driver disabled: skipping build of xlib libGL.so'
Return()
if not set(('softpipe', 'llvmpipe', 'trace')).intersection(env['drivers']):
print 'warning: no supported pipe driver: skipping build of xlib libGL.so'
Return()
env = env.Clone()
env.Append(CPPPATH = [
'#/src/mesa',
'#/src/mesa/main',
'#src/gallium/state_trackers/glx/xlib',
])
env.Append(CPPDEFINES = ['USE_XSHM'])
sources = [
'xlib.c',
]
drivers = [trace]
if 'softpipe' in env['drivers']:
env.Append(CPPDEFINES = 'GALLIUM_SOFTPIPE')
sources += ['xlib_softpipe.c']
drivers += [softpipe]
if 'llvmpipe' in env['drivers']:
env.Tool('llvm')
if 'LLVM_VERSION' in env:
env.Append(CPPDEFINES = 'GALLIUM_LLVMPIPE')
env.Tool('udis86')
sources += ['xlib_llvmpipe.c']
drivers += [llvmpipe]
if 'cell' in env['drivers']:
env.Append(CPPDEFINES = 'GALLIUM_CELL')
sources += ['xlib_cell.c']
drivers += [cell]
# TODO: write a wrapper function http://www.scons.org/wiki/WrapperFunctions
libgl = env.SharedLibrary(
target ='GL',
source = sources,
LIBS = st_xlib + glapi + mesa + glsl + drivers + gallium + env['LIBS'],
)
if not env['dri']:
# Only install this libGL.so if DRI not enabled
env.InstallSharedLibrary(libgl, version=(1, 5))