Commit 39087f63 authored by Keith Whitwell's avatar Keith Whitwell

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.
parent fc4d1b9b
......@@ -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(
......
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'))
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment