SCons: restore Werror option in src/SConscript
Partial backout of cset 8b223e308b08. Although it's great that there's currently no need for Werror=false in the current tree, some of us have uncommitted code that still needs this option.
This commit is contained in:
parent
4bd61abb51
commit
29482e90ba
1 changed files with 9 additions and 3 deletions
|
@ -151,10 +151,11 @@ class SourceFile(object):
|
||||||
|
|
||||||
class Source(SourceFile):
|
class Source(SourceFile):
|
||||||
'''Add a c/c++ source file to the build'''
|
'''Add a c/c++ source file to the build'''
|
||||||
def __init__(self, source, swig = False, **guards):
|
def __init__(self, source, Werror=True, swig=False, **guards):
|
||||||
'''specify the source file, and any guards'''
|
'''specify the source file, and any guards'''
|
||||||
super(Source, self).__init__(source, **guards)
|
super(Source, self).__init__(source, **guards)
|
||||||
|
|
||||||
|
self.Werror = Werror
|
||||||
self.swig = swig
|
self.swig = swig
|
||||||
|
|
||||||
class PySource(SourceFile):
|
class PySource(SourceFile):
|
||||||
|
@ -843,10 +844,9 @@ def makeEnv(label, objsfx, strip = False, **kwargs):
|
||||||
new_env = env.Clone(OBJSUFFIX=objsfx, SHOBJSUFFIX=objsfx + 's')
|
new_env = env.Clone(OBJSUFFIX=objsfx, SHOBJSUFFIX=objsfx + 's')
|
||||||
new_env.Label = label
|
new_env.Label = label
|
||||||
new_env.Append(**kwargs)
|
new_env.Append(**kwargs)
|
||||||
# Always consider warnings errors
|
|
||||||
new_env.Append(CCFLAGS='-Werror')
|
|
||||||
|
|
||||||
swig_env = new_env.Clone()
|
swig_env = new_env.Clone()
|
||||||
|
swig_env.Append(CCFLAGS='-Werror')
|
||||||
if env['GCC']:
|
if env['GCC']:
|
||||||
swig_env.Append(CCFLAGS='-Wno-uninitialized')
|
swig_env.Append(CCFLAGS='-Wno-uninitialized')
|
||||||
swig_env.Append(CCFLAGS='-Wno-sign-compare')
|
swig_env.Append(CCFLAGS='-Wno-sign-compare')
|
||||||
|
@ -857,6 +857,10 @@ def makeEnv(label, objsfx, strip = False, **kwargs):
|
||||||
if env['CLANG']:
|
if env['CLANG']:
|
||||||
swig_env.Append(CCFLAGS=['-Wno-unused-label'])
|
swig_env.Append(CCFLAGS=['-Wno-unused-label'])
|
||||||
|
|
||||||
|
|
||||||
|
werror_env = new_env.Clone()
|
||||||
|
werror_env.Append(CCFLAGS='-Werror')
|
||||||
|
|
||||||
def make_obj(source, static, extra_deps = None):
|
def make_obj(source, static, extra_deps = None):
|
||||||
'''This function adds the specified source to the correct
|
'''This function adds the specified source to the correct
|
||||||
build environment, and returns the corresponding SCons Object
|
build environment, and returns the corresponding SCons Object
|
||||||
|
@ -864,6 +868,8 @@ def makeEnv(label, objsfx, strip = False, **kwargs):
|
||||||
|
|
||||||
if source.swig:
|
if source.swig:
|
||||||
env = swig_env
|
env = swig_env
|
||||||
|
elif source.Werror:
|
||||||
|
env = werror_env
|
||||||
else:
|
else:
|
||||||
env = new_env
|
env = new_env
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue