summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosé Fonseca <jfonseca@vmware.com>2010-09-29 14:24:52 +0100
committerJosé Fonseca <jfonseca@vmware.com>2010-09-29 14:24:52 +0100
commite3a3a5378e4a1b45f30fcb26730d6c73e623cfac (patch)
tree70b879c69e35d89fe0216509d82fd15f603bed72
parent67450f0644f61fc17ab1315124dfe50537d36e9e (diff)
scons: New build= option, with support for checked builds.
Where checked build is compiler optimizations plus debugging checks -- ideal for testing CPU bound loads and running test automation loads.
-rw-r--r--scons/gallium.py5
-rw-r--r--scons/llvm.py2
-rw-r--r--scons/wcesdk.py2
3 files changed, 4 insertions, 5 deletions
diff --git a/scons/gallium.py b/scons/gallium.py
index 97b4721663..b065b7bc49 100644
--- a/scons/gallium.py
+++ b/scons/gallium.py
@@ -130,7 +130,6 @@ def generate(env):
env['msvc'] = env['CC'] == 'cl'
# shortcuts
- debug = env['debug']
machine = env['machine']
platform = env['platform']
x86 = env['machine'] == 'x86'
@@ -412,7 +411,7 @@ def generate(env):
if env['platform'] == 'windows' and msvc:
# Choose the appropriate MSVC CRT
# http://msdn.microsoft.com/en-us/library/2kzt1wy3.aspx
- if env['debug']:
+ if env['build'] in ('debug', 'checked'):
env.Append(CCFLAGS = ['/MTd'])
env.Append(SHCCFLAGS = ['/LDd'])
else:
@@ -444,7 +443,7 @@ def generate(env):
else:
env['_LIBFLAGS'] = '-Wl,--start-group ' + env['_LIBFLAGS'] + ' -Wl,--end-group'
if msvc:
- if not env['debug']:
+ if env['build'] != 'debug':
# enable Link-time Code Generation
linkflags += ['/LTCG']
env.Append(ARFLAGS = ['/LTCG'])
diff --git a/scons/llvm.py b/scons/llvm.py
index d88d6e3a5a..39fbb910b6 100644
--- a/scons/llvm.py
+++ b/scons/llvm.py
@@ -124,7 +124,7 @@ def generate(env):
# Some of the LLVM C headers use the inline keyword without
# defining it.
env.Append(CPPDEFINES = [('inline', '__inline')])
- if env['debug']:
+ if env['build'] in ('debug', 'checked'):
# LLVM libraries are static, build with /MT, and they
# automatically link agains LIBCMT. When we're doing a
# debug build we'll be linking against LIBCMTD, so disable
diff --git a/scons/wcesdk.py b/scons/wcesdk.py
index bf73c2d73f..e82f255c51 100644
--- a/scons/wcesdk.py
+++ b/scons/wcesdk.py
@@ -122,7 +122,7 @@ def get_wce600_paths(env):
host_cpu = os.environ.get('_HOSTCPUTYPE', 'i386')
target_cpu = os.environ.get('_TGTCPU', 'x86')
- if env['debug']:
+ if env['build'] == 'debug':
build = 'debug'
else:
build = 'retail'