summaryrefslogtreecommitdiff
path: root/scons
diff options
context:
space:
mode:
Diffstat (limited to 'scons')
-rw-r--r--scons/gallium.py34
1 files changed, 26 insertions, 8 deletions
diff --git a/scons/gallium.py b/scons/gallium.py
index c7e74d7e59..0d5843603e 100644
--- a/scons/gallium.py
+++ b/scons/gallium.py
@@ -42,11 +42,17 @@ import SCons.Scanner
def quietCommandLines(env):
# Quiet command lines
# See also http://www.scons.org/wiki/HidingCommandLinesInOutput
+ env['ASCOMSTR'] = "Assembling $SOURCE ..."
env['CCCOMSTR'] = "Compiling $SOURCE ..."
+ env['SHCCCOMSTR'] = "Compiling $SOURCE ..."
env['CXXCOMSTR'] = "Compiling $SOURCE ..."
+ env['SHCXXCOMSTR'] = "Compiling $SOURCE ..."
env['ARCOMSTR'] = "Archiving $TARGET ..."
- env['RANLIBCOMSTR'] = ""
+ env['RANLIBCOMSTR'] = "Indexing $TARGET ..."
env['LINKCOMSTR'] = "Linking $TARGET ..."
+ env['SHLINKCOMSTR'] = "Linking $TARGET ..."
+ env['LDMODULECOMSTR'] = "Linking $TARGET ..."
+ env['SWIGCOMSTR'] = "Generating $TARGET ..."
def createConvenienceLibBuilder(env):
@@ -185,9 +191,8 @@ def num_jobs():
def generate(env):
"""Common environment generation code"""
- # FIXME: this is already too late
- #if env.get('quiet', False):
- # quietCommandLines(env)
+ if env.get('quiet', True):
+ quietCommandLines(env)
# Toolchain
platform = env['platform']
@@ -357,11 +362,24 @@ def generate(env):
'/GL-', # disable whole program optimization
]
else:
+ if env['machine'] == 'x86_64':
+ cflags += [
+ # Same as /O2, but without global optimizations or auto-inlining
+ # http://msdn.microsoft.com/en-us/library/8f8h5cxt.aspx
+ '/Ob1', # enable inline expansion, disable auto-inlining
+ '/Oi', # enable intrinsic functions
+ '/Ot', # favors fast code
+ '/Oy', # omit frame pointer
+ '/Gs', # enable stack probes
+ '/GF', # eliminate duplicate strings
+ '/Gy', # enable function-level linking
+ ]
+ else:
+ cflags += [
+ '/O2', # optimize for speed
+ ]
cflags += [
- '/Ox', # maximum optimizations
- '/Oi', # enable intrinsic functions
- '/Ot', # favor code speed
- #'/fp:fast', # fast floating point
+ #'/fp:fast', # fast floating point
]
if env['profile']:
cflags += [