diff --git a/src/SConscript b/src/SConscript
index 0a30838..ba6be0b 100644
--- a/src/SConscript
+++ b/src/SConscript
@@ -22,10 +22,11 @@
 SConscript('mapi/vgapi/SConscript')
 
 if not env['embedded']:
-    if env['platform'] not in ['windows', 'darwin']:
+    if env['platform'] not in ['windows', 'darwin', 'haiku']:
         SConscript('glx/SConscript')
-    if env['platform'] not in ['darwin']:
+    if env['platform'] not in ['darwin', 'haiku']:
         SConscript('egl/main/SConscript')
+    if env['platform'] not in ['darwin']:
         SConscript('glu/sgi/SConscript')
 
     if env['gles']:
diff --git a/src/gallium/SConscript b/src/gallium/SConscript
index 4f46506..8efd04c 100644
--- a/src/gallium/SConscript
+++ b/src/gallium/SConscript
@@ -10,16 +10,22 @@
 # 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',
 ])
 
+# These drivers do not build on Haiku
+if env['platform'] not in ['haiku']:
+    SConscript([
+        'drivers/llvmpipe/SConscript',
+        'drivers/svga/SConscript',
+    ])
+
 if not env['msvc']:
     # These drivers do not build on MSVC compilers
     SConscript([
@@ -53,7 +59,7 @@
 
 if not env['embedded']:
     SConscript('state_trackers/vega/SConscript')
-    if env['platform'] not in ['darwin']:
+    if env['platform'] not in ['darwin', 'haiku']:
         SConscript('state_trackers/egl/SConscript')
 
     if env['x11']:
@@ -83,7 +89,7 @@
 ])
 
 if not env['embedded']:
-    if env['platform'] not in ['darwin']:
+    if env['platform'] not in ['darwin', 'haiku']:
         SConscript([
             'targets/egl-static/SConscript'
         ])
diff --git a/src/glu/sgi/SConscript b/src/glu/sgi/SConscript
index 94c7426..97405d8 100644
--- a/src/glu/sgi/SConscript
+++ b/src/glu/sgi/SConscript
@@ -122,12 +122,18 @@
     ])
     target = 'glu'
 
-glu = env.SharedLibrary(
-    target = target,
-    source = sources
-)
+if env['platform'] == 'haiku':
+    glu = env.StaticLibrary(
+        target = target,
+        source = sources
+    )
+else:
+    glu = env.SharedLibrary(
+        target = target,
+        source = sources
+    )
+    env.Alias('glu', env.InstallSharedLibrary(glu, version=(1, 3, 0)))
 
-env.Alias('glu', env.InstallSharedLibrary(glu, version=(1, 3, 0)))
 
 if env['platform'] == 'windows':
     glu = env.FindIxes(glu, 'LIBPREFIX', 'LIBSUFFIX')
