Avoid building problematic module/drivers on windows.
diff --git a/src/SConscript b/src/SConscript
index 5b09943..e2ee50d 100644
--- a/src/SConscript
+++ b/src/SConscript
@@ -1,7 +1,8 @@
 Import('*')
 
-SConscript([
-	'gallium/SConscript',
-	'mesa/SConscript',
-	'gallium/winsys/SConscript',
-])
+SConscript('gallium/SConscript')
+
+if 'mesa' in env['state_trackers']:
+	SConscript('mesa/SConscript')
+
+SConscript('gallium/winsys/SConscript')
diff --git a/src/gallium/SConscript b/src/gallium/SConscript
index a08b4b8..210fd7d 100644
--- a/src/gallium/SConscript
+++ b/src/gallium/SConscript
@@ -23,7 +23,12 @@
 SConscript([
 	'drivers/softpipe/SConscript',
 	'drivers/i915simple/SConscript',
-	'drivers/i965simple/SConscript',
 	'drivers/failover/SConscript',
-	#'drivers/cell/SConscript',
 ])
+
+if not msvc:
+	SConscript(['drivers/i965simple/SConscript'])
+
+#if cell:
+#	SConscript(['drivers/cell/SConscript'])
+	
\ No newline at end of file
diff --git a/src/gallium/winsys/SConscript b/src/gallium/winsys/SConscript
index 32215d8..3f0596e 100644
--- a/src/gallium/winsys/SConscript
+++ b/src/gallium/winsys/SConscript
@@ -4,7 +4,8 @@
 	SConscript([
 		'dri/SConscript',
 	])
-else:
+	
+if env['x11'] and not dri and platform != 'winddk':
 	SConscript([
 		'xlib/SConscript',
 	])