import sys import os.path Import('*') if env['toolchain'] == 'crossmingw': # Cross-compilation not supported Return() if not env.Detect(['swig']): Return() env = env.Clone() env.Tool('python') env.Tool('swig') env.Append(SWIGPATH = ['#src/gallium/include', '#src/gallium/include/pipe']) env.Append(SWIGFLAGS = ['-python', '-keyword']) env.Append(CPPPATH = '.') if env['platform'] == 'windows': env.Append(LIBS = [ 'opengl32', 'gdi32', 'user32', 'kernel32', 'ws2_32', ]) else: env.Append(CPPDEFINES = ['GCC_HASCLASSVISIBILITY']) env.Append(LIBS = [ 'GL', 'X11', ]) sources = [ 'gallium.i', 'st_device.c', 'st_sample.c', 'st_hardpipe_winsys.c', 'st_softpipe_winsys.c', ] env.Prepend(LIBS = [ ws_null, trace, gallium, ]) if env['llvm']: env.Append(CPPDEFINES = ['HAVE_LLVMPIPE']) env.Prepend(LIBS = [llvmpipe]) if True: env.Append(CPPDEFINES = ['HAVE_SOFTPIPE']) env.Prepend(LIBS = [softpipe]) env['no_import_lib'] = 1 pyst = env.SharedLibrary( target = '_gallium', source = sources, ) env.Alias('python', pyst)