From 2ee59cee1b6130359b127c4d74d3d10bd01853a9 Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Wed, 9 Nov 2011 21:48:28 -0800 Subject: [PATCH] GCC: Guard some gcc flags so they're used when available and needed. --- SConstruct | 1 + src/SConscript | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) 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') -- 2.30.2