From: Gabe Black Date: Thu, 10 Nov 2011 05:48:28 +0000 (-0800) Subject: GCC: Guard some gcc flags so they're used when available and needed. X-Git-Tag: stable_2012_02_02~28 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2ee59cee1b6130359b127c4d74d3d10bd01853a9;p=gem5.git GCC: Guard some gcc flags so they're used when available and needed. --- diff --git a/SConstruct b/SConstruct index 06e1c3f16..89761a4f1 100755 --- a/SConstruct +++ b/SConstruct @@ -487,6 +487,7 @@ if main['GCC']: # Note CCVERSION doesn't work here because it is run with the CC # before we override it from the command line gcc_version = readCommand([main['CXX'], '-dumpversion'], exception=False) + main['GCC_VERSION'] = gcc_version if not compareVersions(gcc_version, '4.4.1') or \ not compareVersions(gcc_version, '4.4.2'): print 'Info: Tree vectorizer in GCC 4.4.1 & 4.4.2 is buggy, disabling.' diff --git a/src/SConscript b/src/SConscript index 391a832ba..0a4bb57f4 100755 --- a/src/SConscript +++ b/src/SConscript @@ -51,7 +51,7 @@ Export('env') build_env = [(opt, env[opt]) for opt in export_vars] -from m5.util import code_formatter +from m5.util import code_formatter, compareVersions ######################################################################## # Code for adding source files of various types @@ -851,8 +851,9 @@ def makeEnv(label, objsfx, strip = False, **kwargs): swig_env.Append(CCFLAGS='-Wno-uninitialized') swig_env.Append(CCFLAGS='-Wno-sign-compare') swig_env.Append(CCFLAGS='-Wno-parentheses') - swig_env.Append(CCFLAGS='-Wno-unused-label') - swig_env.Append(CCFLAGS='-Wno-unused-but-set-variable') + if compareVersions(env['GCC_VERSION'], '4.6.0') != -1: + swig_env.Append(CCFLAGS='-Wno-unused-label') + swig_env.Append(CCFLAGS='-Wno-unused-but-set-variable') werror_env = new_env.Clone() werror_env.Append(CCFLAGS='-Werror')