scons: Updates for targets/egl-static.
[mesa.git] / src / gallium / SConscript
index 8be84cddbe727df6187556b9fdda6a12bb31633c..2265f1de46c44a3242ce8e8e83499e9a0dd1d705 100644 (file)
-import os
+Import('env')
 
-Import('*')
+# 
+# Auxiliary modules
+#
 
-env = env.Clone()
+SConscript('auxiliary/SConscript')
 
-auxiliaries = []
+#
+# Drivers
+#
 
-Export('auxiliaries')
+SConscript([
+    'drivers/failover/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', 
+        'drivers/i965/SConscript',
+        'drivers/r300/SConscript',
+    ])
+
+if env['drm']:
+    # These drivers depend on drm headers
+    if env['drm_radeon']:
+        SConscript([
+            'drivers/r600/SConscript',
+        ])
+    # XXX: nouveau drivers have a tight dependency on libdrm, so to enable
+    # we need some version logic before we enable them. Also, ATM there is
+    # no nouveau target in scons
+    # if env['drm_nouveau']:
+    #     SConscript([
+    #         'drivers/nouveau/SConscript', 
+    #         'drivers/nv50/SConscript', 
+    #         'drivers/nvfx/SConscript',
+    #     ])
+
+#
+# State trackers
+#
+
+# Needed by some state trackers
+SConscript('winsys/sw/null/SConscript')
+
+SConscript('state_trackers/python/SConscript')
+if env['platform'] != 'embedded':
+    SConscript('state_trackers/vega/SConscript')
+    SConscript('state_trackers/egl/SConscript')
+
+    if env['x11']:
+        SConscript('state_trackers/glx/xlib/SConscript')
+
+    if env['dri']:
+        SConscript('state_trackers/dri/SConscript')
 
+    if env['dri'] and env['xorg']:
+        SConscript('state_trackers/xorg/SConscript')
 
-if llvm:
-       SConscript(['auxiliary/gallivm/SConscript'])
+if env['platform'] == 'windows':
+    SConscript('state_trackers/wgl/SConscript')
+
+#
+# Winsys
+# 
+
+SConscript('winsys/SConscript')
+
+#
+# Targets
+#
 
 SConscript([
-       # NOTE: order matters!
-       'auxiliary/util/SConscript',
-       'auxiliary/rtasm/SConscript',
-       'auxiliary/tgsi/SConscript',
-       'auxiliary/cso_cache/SConscript',
-       'auxiliary/translate/SConscript',
-       'auxiliary/draw/SConscript',
-       'auxiliary/pipebuffer/SConscript',
-       'auxiliary/indices/SConscript',
-       'auxiliary/rbug/SConscript',
-       'auxiliary/vl/SConscript',
+    'targets/graw-null/SConscript',
 ])
 
-for driver in env['drivers']:
-       SConscript(os.path.join('drivers', driver, 'SConscript'))
+if env['platform'] != 'embedded':
+    SConscript([
+        'targets/egl-static/SConscript'
+    ])
 
-SConscript('state_trackers/python/SConscript')
-SConscript('state_trackers/glx/xlib/SConscript')
-SConscript('state_trackers/dri/SConscript')
-SConscript('state_trackers/xorg/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['dri']:
+    SConscript([
+        'targets/SConscript.dri',
+        'targets/dri-swrast/SConscript',
+        'targets/dri-vmwgfx/SConscript',
+        #'targets/dri-nouveau/SConscript',
+    ])
+    if env['drm_intel']:
+        SConscript([
+            'targets/dri-i915/SConscript',
+            'targets/dri-i965/SConscript',
+        ])
+    if env['drm_radeon']:
+        SConscript([
+            'targets/dri-r300/SConscript',
+            'targets/dri-r600/SConscript',
+        ])
+
+if env['xorg'] and env['drm']:
+    SConscript([
+        #'targets/xorg-i915/SConscript',
+        #'targets/xorg-i965/SConscript',
+        #'targets/xorg-nouveau/SConscript',
+        #'targets/xorg-radeon/SConscript',
+        'targets/xorg-vmwgfx/SConscript',
+    ])
+
+
+#
+# Unit tests & tools
+#
 
-if platform == 'windows':
-       SConscript('state_trackers/wgl/SConscript')
+if env['platform'] != 'embedded':
+    SConscript('tests/unit/SConscript')
+    SConscript('tests/graw/SConscript')