67 lines
1.8 KiB
Python
67 lines
1.8 KiB
Python
#######################################################################
|
|
# SConscript for xlib winsys
|
|
|
|
Import('*')
|
|
|
|
if env['platform'] == 'linux' \
|
|
and 'mesa' in env['statetrackers'] \
|
|
and set(('softpipe', 'llvmpipe', 'i915simple', 'trace')).intersection(env['drivers']) \
|
|
and not env['dri']:
|
|
|
|
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 = []
|
|
|
|
if 'softpipe' in env['drivers']:
|
|
env.Append(CPPDEFINES = 'GALLIUM_SOFTPIPE')
|
|
sources += ['xlib_softpipe.c']
|
|
drivers += [softpipe]
|
|
|
|
if 'llvmpipe' in env['drivers']:
|
|
env.Append(CPPDEFINES = 'GALLIUM_LLVMPIPE')
|
|
env.Tool('udis86')
|
|
env.ParseConfig('llvm-config --libs jit interpreter nativecodegen')
|
|
env['LINK'] = env['CXX']
|
|
sources += ['xlib_llvmpipe.c']
|
|
drivers += [llvmpipe]
|
|
|
|
if 'i965simple' in env['drivers']:
|
|
env.Append(CPPDEFINES = 'GALLIUM_I965SIMPLE')
|
|
sources += [
|
|
'xlib_brw_aub.c',
|
|
'xlib_brw_context.c',
|
|
'xlib_brw_screen.c',
|
|
]
|
|
drivers += [i965simple]
|
|
|
|
if 'cell' in env['drivers']:
|
|
env.Append(CPPDEFINES = 'GALLIUM_CELL')
|
|
sources += ['xlib_cell.c']
|
|
drivers += [cell]
|
|
|
|
if 'trace' in env['drivers']:
|
|
env.Append(CPPDEFINES = 'GALLIUM_TRACE')
|
|
sources += ['xlib_trace.c']
|
|
drivers += [trace]
|
|
|
|
# TODO: write a wrapper function http://www.scons.org/wiki/WrapperFunctions
|
|
libgl = env.SharedLibrary(
|
|
target ='GL',
|
|
source = sources,
|
|
LIBS = st_xlib + glapi + mesa + drivers + auxiliaries + env['LIBS'],
|
|
)
|
|
|
|
env.InstallSharedLibrary(libgl, version=(1, 5))
|