diff options
Diffstat (limited to 'mesonbuild/interpreterbase.py')
-rw-r--r-- | mesonbuild/interpreterbase.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/mesonbuild/interpreterbase.py b/mesonbuild/interpreterbase.py index 9f323d1..52dad72 100644 --- a/mesonbuild/interpreterbase.py +++ b/mesonbuild/interpreterbase.py @@ -17,6 +17,7 @@ from . import mparser, mesonlib, mlog from . import environment, dependencies +from . import coredata import os, copy, re, types from functools import wraps @@ -123,6 +124,22 @@ class permittedKwargs: return f(*wrapped_args, **wrapped_kwargs) return wrapped +class featureVersion: + """Checks for newer/deprecated features""" + + def __init__(self, feature_name, wanted_version): + self.feature_name = feature_name + self.wanted_version = wanted_version + + def __call__(self, f): + @wraps(f) + def wrapped(*wrapped_args, **wrapped_kwargs): + tv = coredata.target_version + if tv == '': + return + return f(*wrapped_args, **wrapped_kwargs) + return wrapped + class InterpreterException(mesonlib.MesonException): pass |