scons: move SConscript from gallium/targets/ to mesa/drivers/dri/common/
[mesa.git] / src / gallium / SConscript
index b8c04f72379c0cfbbb7d2bf1ba4c36d790ef5059..6e27be2c06288d91733027d78948d5e581f543d9 100644 (file)
-import os
+Import('env')
 
-Import('*')
+# 
+# Auxiliary modules
+#
 
 SConscript('auxiliary/SConscript')
 
-for driver in env['drivers']:
-       SConscript(os.path.join('drivers', driver, 'SConscript'))
+#
+# Drivers
+#
+
+# These are common and work across all platforms
+SConscript([
+    'drivers/galahad/SConscript',
+    'drivers/identity/SConscript',
+    'drivers/llvmpipe/SConscript',
+    'drivers/rbug/SConscript',
+    'drivers/softpipe/SConscript',
+    'drivers/svga/SConscript',
+    'drivers/trace/SConscript',
+])
+
+if not env['msvc']:
+    # These drivers do not build on MSVC compilers
+    SConscript([
+        'drivers/i915/SConscript',
+    ])
+
+#
+# State trackers
+#
 
 # Needed by some state trackers
 SConscript('winsys/sw/null/SConscript')
 
-SConscript('state_trackers/python/SConscript')
-if platform != 'embedded':
-       SConscript('state_trackers/glx/xlib/SConscript')
-       SConscript('state_trackers/dri/SConscript')
-       SConscript('state_trackers/xorg/SConscript')
+if not env['embedded']:
+    SConscript('state_trackers/vega/SConscript')
+    if env['platform'] not in ('cygwin', 'darwin', 'haiku', 'sunos'):
+        SConscript('state_trackers/egl/SConscript')
+
+    if env['x11']:
+        SConscript('state_trackers/glx/xlib/SConscript')
+
+    if env['dri']:
+        SConscript('state_trackers/dri/SConscript')
+
+    if env['platform'] == 'windows':
+        SConscript('state_trackers/wgl/SConscript')
+
+#
+# Winsys
+# 
+
+SConscript([
+    'winsys/sw/wrapper/SConscript',
+])
+    
+if env['x11']:
+    SConscript([
+        'winsys/sw/xlib/SConscript',
+    ])
+
+if env['platform'] == 'windows':
+    SConscript([
+        'winsys/sw/gdi/SConscript',
+    ])
+
+if not env['msvc']:
+    SConscript([
+        'winsys/i915/sw/SConscript',
+    ])
+
+if env['platform'] == 'haiku':
+    SConscript([
+        'winsys/sw/hgl/SConscript',
+    ])
+
+if env['dri']:
+    SConscript([
+        'winsys/sw/dri/SConscript',
+    ])
+
+    SConscript([
+        'winsys/svga/drm/SConscript',
+    ])
+
+    if env['drm_intel']:
+        SConscript([
+            'winsys/i915/drm/SConscript',
+        ])
+
+#
+# Targets
+#
+
+SConscript([
+    'targets/graw-null/SConscript',
+])
+
+if not env['embedded']:
+    if env['platform'] not in ('cygwin', 'darwin', 'freebsd', 'haiku', 'sunos'):
+        SConscript([
+            'targets/egl-static/SConscript'
+        ])
+
+    if env['x11']:
+        SConscript([
+            'targets/graw-xlib/SConscript',
+            'targets/libgl-xlib/SConscript',
+        ])
+
+    if env['platform'] == 'windows':
+        SConscript([
+            'targets/graw-gdi/SConscript',
+            'targets/libgl-gdi/SConscript',
+        ])
+
+    if env['platform'] == 'haiku':
+        SConscript([
+            'targets/haiku-softpipe/SConscript',
+            'targets/libgl-haiku/SConscript',
+        ])
+
+    if env['dri']:
+        SConscript([
+            'targets/dri-swrast/SConscript',
+            'targets/dri-vmwgfx/SConscript',
+        ])
+        if env['drm_intel']:
+            SConscript([
+                'targets/dri-i915/SConscript',
+            ])
 
-if platform == 'windows':
-       SConscript('state_trackers/wgl/SConscript')
 
-SConscript('winsys/SConscript')
+#
+# Unit tests & tools
+#
 
-SConscript('targets/SConscript')
+if not env['embedded']:
+    SConscript('tests/unit/SConscript')
+    SConscript('tests/graw/SConscript')