# Configuration options
if common.default_platform in ('linux', 'freebsd', 'darwin'):
- default_statetrackers = 'mesa'
+ default_statetrackers = 'all'
default_drivers = 'softpipe,failover,i915simple,i965simple'
default_winsys = 'xlib'
elif common.default_platform in ('winddk',):
- default_statetrackers = 'none'
+ default_statetrackers = 'all'
default_drivers = 'softpipe,i915simple'
- default_winsys = 'none'
+ default_winsys = 'all'
else:
+ default_statetrackers = 'all'
default_drivers = 'all'
default_winsys = 'all'
opts.Add(ListOption('drivers', 'pipe drivers to build', default_drivers,
['softpipe', 'failover', 'i915simple', 'i965simple', 'cell']))
opts.Add(ListOption('winsys', 'winsys drivers to build', default_winsys,
- ['xlib', 'intel']))
+ ['xlib', 'intel', 'gdi']))
env = Environment(
options = opts,
# derived options
x86 = machine == 'x86'
gcc = platform in ('linux', 'freebsd', 'darwin')
-msvc = platform in ('win32', 'winddk')
+msvc = platform in ('windows', 'winddk')
Export([
'debug',
# TODO: put the compiler specific settings in separate files
# TODO: auto-detect as much as possible
-common.generate(env)
-
if platform == 'winddk':
- env.Tool('winddk', ['.'])
+ env.Tool('winddk', ['scons'])
env.Append(CPPPATH = [
env['SDK_INC_PATH'],
env['CRT_INC_PATH'],
])
-# Optimization flags
-if gcc:
- if debug:
- env.Append(CFLAGS = '-O0 -g3')
- env.Append(CXXFLAGS = '-O0 -g3')
- else:
- env.Append(CFLAGS = '-O3 -g3')
- env.Append(CXXFLAGS = '-O3 -g3')
-
- env.Append(CFLAGS = '-Wall -Wmissing-prototypes -Wno-long-long -ffast-math -pedantic')
- env.Append(CXXFLAGS = '-Wall -pedantic')
-
- # Be nice to Eclipse
- env.Append(CFLAGS = '-fmessage-length=0')
- env.Append(CXXFLAGS = '-fmessage-length=0')
-
-if msvc:
- env.Append(CFLAGS = '/W3')
- if debug:
- cflags = [
- '/Od', # disable optimizations
- '/Oy-', # disable frame pointer omission
- ]
- else:
- cflags = [
- '/Ox', # maximum optimizations
- '/Os', # favor code space
- ]
- env.Append(CFLAGS = cflags)
- env.Append(CXXFLAGS = cflags)
- # Put debugging information in a separate .pdb file for each object file as
- # descrived in the scons manpage
- env['CCPDBFLAGS'] = '/Zi /Fd${TARGET}.pdb'
-
-# Defines
-if debug:
- if gcc:
- env.Append(CPPDEFINES = ['DEBUG'])
- if msvc:
- env.Append(CPPDEFINES = [
- ('DBG', '1'),
- ('DEBUG', '1'),
- ('_DEBUG', '1'),
- ])
-else:
- env.Append(CPPDEFINES = ['NDEBUG'])
+if platform == 'wince':
+ env.Tool('evc', ['scons'])
+
+common.generate(env)
# Includes
# x86 assembly
if x86:
- env.Append(CPPDEFINES = [
- 'USE_X86_ASM',
- 'USE_MMX_ASM',
- 'USE_3DNOW_ASM',
- 'USE_SSE_ASM',
- ])
if gcc:
env.Append(CFLAGS = '-m32')
env.Append(CXXFLAGS = '-m32')
# See also http://www.scons.org/wiki/UsingPkgConfig
env.ParseConfig('llvm-config --cflags --ldflags --libs')
env.Append(CPPDEFINES = ['MESA_LLVM'])
- env.Append(CXXFLAGS = ['-Wno-long-long'])
# Force C++ linkage
env['LINK'] = env['CXX']
# libGL
-if platform not in ('winddk',):
+if platform in ('linux', 'freebsd', 'darwin'):
env.Append(LIBS = [
'X11',
'Xext',
'Xfixes',
])
+# for debugging
+#print env.Dump()
+
Export('env')