diff options
author | Keith Whitwell <[email protected]> | 2010-05-14 10:55:07 +0100 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2010-05-14 12:19:57 +0100 |
commit | 39087f636afcee058fc9af2c58cb1e2474c9b258 (patch) | |
tree | 0cb0f94e0a05315126edc4ee8a0c24090acf2109 | |
parent | fc4d1b9ba965f26c504e6f5fea12e2bac2d71d72 (diff) |
scons: add 'targets' variable, for specifying ... targets
Ideally scons should be able to work backwards from the list of
targets to figure out which drivers, state trackers and other
convenience libraries need to be built.
-rw-r--r-- | SConstruct | 23 | ||||
-rw-r--r-- | src/gallium/targets/SConscript | 20 |
2 files changed, 37 insertions, 6 deletions
diff --git a/SConstruct b/SConstruct index 28ed6ea78c0..c843b41b0dc 100644 --- a/SConstruct +++ b/SConstruct @@ -31,6 +31,7 @@ import common # Configuration options default_statetrackers = 'mesa' +default_targets = 'none' if common.default_platform in ('linux', 'freebsd', 'darwin'): default_drivers = 'softpipe,failover,svga,i915,i965,trace,identity,llvmpipe' @@ -54,6 +55,28 @@ opts.Add(ListVariable('drivers', 'pipe drivers to build', default_drivers, opts.Add(ListVariable('winsys', 'winsys drivers to build', default_winsys, ['xlib', 'vmware', 'i915', 'i965', 'gdi', 'radeon', 'graw-xlib'])) +opts.Add(ListVariable('targets', 'driver targets to build', default_targets, + ['dri-i915', + 'dri-i965', + 'dri-nouveau', + 'dri-radeong', + 'dri-swrast', + 'dri-vmwgfx', + 'egl-i915', + 'egl-i965', + 'egl-nouveau', + 'egl-radeon', + 'egl-swrast', + 'egl-vmwgfx', + 'graw-xlib', + 'libgl-gdi', + 'libgl-xlib', + 'xorg-i915', + 'xorg-i965', + 'xorg-nouveau', + 'xorg-radeon', + 'xorg-vmwgfx'])) + opts.Add(EnumVariable('MSVS_VERSION', 'MS Visual C++ version', None, allowed_values=('7.1', '8.0', '9.0'))) env = Environment( diff --git a/src/gallium/targets/SConscript b/src/gallium/targets/SConscript index ca3e1ec1327..9077cbf6a45 100644 --- a/src/gallium/targets/SConscript +++ b/src/gallium/targets/SConscript @@ -1,5 +1,8 @@ +import os Import('*') +# Compatibility with old build scripts: +# if 'xlib' in env['winsys']: SConscript([ 'libgl-xlib/SConscript', @@ -10,12 +13,7 @@ if 'gdi' in env['winsys']: 'libgl-gdi/SConscript', ]) -if env['platform'] == 'linux' and 'xlib' in env['winsys'] and 'graw-xlib' in env['winsys']: - SConscript([ - 'graw-xlib/SConscript', - ]) -else: - if not env['msvc']: +if not 'graw-xlib' in env['targets'] and not env['msvc']: # XXX: disable until MSVC can link correctly SConscript('graw-null/SConscript') @@ -30,3 +28,13 @@ if 'xorg' in env['statetrackers']: SConscript([ 'xorg-vmwgfx/SConscript', ]) + +# Ideally all non-target directories would produce convenience +# libraries, and the actual shared libraries and other installables +# would be finally assembled in the targets subtree: +# +for target in env['targets']: + SConscript(os.path.join(target, 'SConscript')) + + + |