support an 'embedded' platform target which turns off most parts of the
authorAlan Hourihane <alanh@vmware.com>
Tue, 26 Jan 2010 20:58:11 +0000 (20:58 +0000)
committerAlan Hourihane <alanh@vmware.com>
Tue, 26 Jan 2010 20:59:12 +0000 (20:59 +0000)
build.

SConstruct
common.py
progs/SConscript
src/SConscript
src/gallium/SConscript

index 3a40244d88714c68afd38fbeffb326b89047ca85..3b8a9e0341ecc3c202c6cd7bfeb9fe4f2dd52a61 100644 (file)
@@ -38,6 +38,9 @@ if common.default_platform in ('linux', 'freebsd', 'darwin'):
 elif common.default_platform in ('winddk',):
        default_drivers = 'softpipe,svga,i915,i965,trace,identity'
        default_winsys = 'all'
+elif common.default_platform in ('embedded',):
+       default_drivers = 'softpipe,llvmpipe'
+       default_winsys = 'xlib'
 else:
        default_drivers = 'all'
        default_winsys = 'all'
@@ -83,7 +86,7 @@ platform = env['platform']
 # derived options
 x86 = machine == 'x86'
 ppc = machine == 'ppc'
-gcc = platform in ('linux', 'freebsd', 'darwin')
+gcc = platform in ('linux', 'freebsd', 'darwin', 'embedded')
 msvc = platform in ('windows', 'winddk')
 
 Export([
@@ -114,7 +117,7 @@ if env['msvc']:
 
 
 # Posix
-if platform in ('posix', 'linux', 'freebsd', 'darwin'):
+if platform in ('posix', 'linux', 'freebsd', 'darwin', 'embedded'):
        env.Append(CPPDEFINES = [
                '_POSIX_SOURCE',
                ('_POSIX_C_SOURCE', '199309L'), 
@@ -132,9 +135,13 @@ if platform in ('posix', 'linux', 'freebsd', 'darwin'):
        env.Append(LIBS = [
                'm',
                'pthread',
-               'expat',
                'dl',
        ])
+       if platform != 'embedded':
+               env.Append(LIBS = [
+                       'expat',
+               ])
+               
 
 
 # DRI
index 101fc558f40f276a4a55a895fa7c8c8c27ed42bb..928a4496f78f6c504f169c129330c560f157d7c6 100644 (file)
--- a/common.py
+++ b/common.py
@@ -59,9 +59,8 @@ def AddOptions(opts):
        opts.Add(EnumOption('machine', 'use machine-specific assembly code', default_machine,
                                                                                         allowed_values=('generic', 'ppc', 'x86', 'x86_64')))
        opts.Add(EnumOption('platform', 'target platform', default_platform,
-                                                                                        allowed_values=('linux', 'cell', 'windows', 'winddk', 'wince', 'darwin')))
+                                                                                        allowed_values=('linux', 'cell', 'windows', 'winddk', 'wince', 'darwin', 'embedded')))
        opts.Add(EnumOption('toolchain', 'compiler toolchain', 'default',
                                                                                         allowed_values=('default', 'crossmingw', 'winsdk', 'winddk')))
        opts.Add(BoolOption('llvm', 'use LLVM', 'no'))
        opts.Add(BoolOption('dri', 'build DRI drivers', default_dri))
-
index 3b180d00bc2396af24e44f8b63392422a379601d..66a1745271d8c5767760760078cfb2392a74b089 100644 (file)
@@ -15,38 +15,39 @@ if progs_env['platform'] == 'windows':
         'gdi32',
     ])
 
-# OpenGL
-if progs_env['platform'] == 'windows':
-    progs_env.Prepend(LIBS = ['glu32', 'opengl32'])
-else:
-    progs_env.Prepend(LIBS = ['GLU', 'GL'])
-
-# Glut
-progs_env.Prepend(LIBS = [glut])
-
-# GLEW
-progs_env.Prepend(LIBS = [glew])
-
-progs_env.Prepend(CPPPATH = [
-       '#progs/util',
-])
-
-progs_env.Prepend(LIBS = [
-       util,
-])
-
-Export('progs_env')
-
-SConscript([
-    'demos/SConscript',
-    'glsl/SConscript',
-    'redbook/SConscript',
-    'samples/SConscript',
-    'tests/SConscript',
-    'trivial/SConscript',
-    'vp/SConscript',
-    'vpglsl/SConscript',
-    'fp/SConscript',
-    'wgl/SConscript',
-    'perf/SConscript',
-])
+if platform != 'embedded':
+       # OpenGL
+       if progs_env['platform'] == 'windows':
+               progs_env.Prepend(LIBS = ['glu32', 'opengl32'])
+       else:
+               progs_env.Prepend(LIBS = ['GLU', 'GL'])
+
+       # Glut
+       progs_env.Prepend(LIBS = [glut])
+
+       # GLEW
+       progs_env.Prepend(LIBS = [glew])
+
+       progs_env.Prepend(CPPPATH = [
+               '#progs/util',
+       ])
+
+       progs_env.Prepend(LIBS = [
+               util,
+       ])
+
+       Export('progs_env')
+
+       SConscript([
+           'demos/SConscript',
+           'glsl/SConscript',
+           'redbook/SConscript',
+           'samples/SConscript',
+           'tests/SConscript',
+           'trivial/SConscript',
+           'vp/SConscript',
+           'vpglsl/SConscript',
+           'fp/SConscript',
+           'wgl/SConscript',
+           'perf/SConscript',
+       ])
index 6083fcbec98cc903930696e7a5572eedf0067f19..cd4896ada401935a25d97d798773981f86fe7b04 100644 (file)
@@ -8,5 +8,6 @@ if 'mesa' in env['statetrackers']:
 
 SConscript('gallium/winsys/SConscript')
 
-SConscript('glut/glx/SConscript')
-SConscript('glew/SConscript')
+if platform != 'embedded':
+       SConscript('glut/glx/SConscript')
+       SConscript('glew/SConscript')
index eea32b1314b1a28e4b906095a17c5f7bb14550a5..d56c5c84617a3b1be30a929b8785a59375e163bc 100644 (file)
@@ -8,9 +8,10 @@ for driver in env['drivers']:
        SConscript(os.path.join('drivers', driver, 'SConscript'))
 
 SConscript('state_trackers/python/SConscript')
-SConscript('state_trackers/glx/xlib/SConscript')
-SConscript('state_trackers/dri/SConscript')
-SConscript('state_trackers/xorg/SConscript')
+if platform != 'embedded':
+       SConscript('state_trackers/glx/xlib/SConscript')
+       SConscript('state_trackers/dri/SConscript')
+       SConscript('state_trackers/xorg/SConscript')
 
 if platform == 'windows':
        SConscript('state_trackers/wgl/SConscript')