scons: Revamp how to specify targets to build.
[mesa.git] / src / gallium / state_trackers / python / SConscript
index aadeaa0a35918dd9fb7fb6cfabbd58d98252581f..5cb7960f9b59e5fec1708cfbb428995b14845016 100644 (file)
@@ -3,57 +3,61 @@ import os.path
 
 Import('*')
 
-if 'python' in env['statetrackers']:
-
-    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['toolchain'] == 'crossmingw':
+    # Cross-compilation not supported
+    Return()
+
+env = env.Clone()
+
+env.Tool('python')
 
-    if env['llvm']:
-        env.Append(CPPDEFINES = ['HAVE_LLVMPIPE'])
-        env.Prepend(LIBS = [llvmpipe])
-    if True:
-        env.Append(CPPDEFINES = ['HAVE_SOFTPIPE'])
-        env.Prepend(LIBS = [softpipe])
+env.Tool('swig')
+env.Append(SWIGPATH = ['#src/gallium/include', '#src/gallium/include/pipe'])
+env.Append(SWIGFLAGS = ['-python', '-keyword'])
 
-    env['no_import_lib'] = 1
+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',
+    ])
 
-    env.SharedLibrary(
-        target = '_gallium',
-        source = sources,
-    )
+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)