scons: Restrict whole program optimization to release builds.
It just takes forever, so it is inadequate for continuous testings (i.e., checked and profile build types).
This commit is contained in:
@@ -402,13 +402,19 @@ def generate(env):
|
|||||||
'/Od', # disable optimizations
|
'/Od', # disable optimizations
|
||||||
'/Oi', # enable intrinsic functions
|
'/Oi', # enable intrinsic functions
|
||||||
'/Oy-', # disable frame pointer omission
|
'/Oy-', # disable frame pointer omission
|
||||||
'/GL-', # disable whole program optimization
|
|
||||||
]
|
]
|
||||||
else:
|
else:
|
||||||
ccflags += [
|
ccflags += [
|
||||||
'/O2', # optimize for speed
|
'/O2', # optimize for speed
|
||||||
|
]
|
||||||
|
if env['build'] == 'release':
|
||||||
|
ccflags += [
|
||||||
'/GL', # enable whole program optimization
|
'/GL', # enable whole program optimization
|
||||||
]
|
]
|
||||||
|
else:
|
||||||
|
ccflags += [
|
||||||
|
'/GL-', # disable whole program optimization
|
||||||
|
]
|
||||||
ccflags += [
|
ccflags += [
|
||||||
'/fp:fast', # fast floating point
|
'/fp:fast', # fast floating point
|
||||||
'/W3', # warning level
|
'/W3', # warning level
|
||||||
@@ -498,7 +504,7 @@ def generate(env):
|
|||||||
else:
|
else:
|
||||||
env['_LIBFLAGS'] = '-Wl,--start-group ' + env['_LIBFLAGS'] + ' -Wl,--end-group'
|
env['_LIBFLAGS'] = '-Wl,--start-group ' + env['_LIBFLAGS'] + ' -Wl,--end-group'
|
||||||
if msvc:
|
if msvc:
|
||||||
if env['build'] != 'debug':
|
if env['build'] == 'release':
|
||||||
# enable Link-time Code Generation
|
# enable Link-time Code Generation
|
||||||
linkflags += ['/LTCG']
|
linkflags += ['/LTCG']
|
||||||
env.Append(ARFLAGS = ['/LTCG'])
|
env.Append(ARFLAGS = ['/LTCG'])
|
||||||
|
Reference in New Issue
Block a user