base: Add compiler macros to add deprecation warnings

Gcc and clang both provide an attribute that can be used to flag a
function as deprecated at compile time. This changeset adds a gem5
compiler macro for that compiler feature. The macro can be used to
indicate that a legacy API within gem5 has been deprecated and provide
a graceful migration to the new API.
This commit is contained in:
Andreas Sandberg
2015-02-11 10:23:24 -05:00
parent c9b8616c51
commit 9e6f803254
2 changed files with 8 additions and 1 deletions

View File

@@ -1061,7 +1061,12 @@ def makeEnv(env, label, objsfx, strip = False, **kwargs):
new_env.Append(LINKFLAGS='-fsanitize=undefined')
werror_env = new_env.Clone()
werror_env.Append(CCFLAGS='-Werror')
# Treat warnings as errors but white list some warnings that we
# want to allow (e.g., deprecation warnings).
werror_env.Append(CCFLAGS=['-Werror',
'-Wno-error=deprecated-declarations',
'-Wno-error=deprecated',
])
def make_obj(source, static, extra_deps = None):
'''This function adds the specified source to the correct