summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlexander von Gluck IV <[email protected]>2012-01-16 12:42:05 +0000
committerJosé Fonseca <[email protected]>2012-01-17 20:01:14 +0000
commit64ae209d50e2d28f46a3f0c6880e40e94ba23569 (patch)
tree541e10e7fcfea05238fa6467b6423f15a478a437 /src
parent4ba4853c0a613f771b44806cd5ce376838479802 (diff)
scons: Add Haiku build support
Enables building stock Mesa under the Haiku operating system.
Diffstat (limited to 'src')
-rw-r--r--src/SConscript5
-rw-r--r--src/gallium/SConscript14
-rw-r--r--src/glu/sgi/SConscript16
3 files changed, 24 insertions, 11 deletions
diff --git a/src/SConscript b/src/SConscript
index 0a30838def9..ba6be0be1a0 100644
--- a/src/SConscript
+++ b/src/SConscript
@@ -22,10 +22,11 @@ SConscript('mesa/SConscript')
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 4f4650698bd..8efd04c8412 100644
--- a/src/gallium/SConscript
+++ b/src/gallium/SConscript
@@ -10,16 +10,22 @@ SConscript('auxiliary/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',
])
+# 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 @@ SConscript('winsys/sw/null/SConscript')
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 @@ SConscript([
])
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 94c74267fd2..97405d86911 100644
--- a/src/glu/sgi/SConscript
+++ b/src/glu/sgi/SConscript
@@ -122,12 +122,18 @@ else:
])
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')