Skip to content

Commit f0d121e

Browse files
committed
interpreter: move dependency kwargs to shared module
We're going to use this in the Python module as well.
1 parent 05b39a2 commit f0d121e

File tree

3 files changed

+9
-2
lines changed

3 files changed

+9
-2
lines changed

mesonbuild/interpreter/interpreter.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@
6262
OUTPUT_KW,
6363
DEFAULT_OPTIONS,
6464
DEPENDENCIES_KW,
65+
DEPENDENCY_KWS,
6566
DEPENDS_KW,
6667
DEPEND_FILES_KW,
6768
DEPFILE_KW,
@@ -1789,7 +1790,7 @@ def func_find_program(self, node: mparser.BaseNode, args: T.Tuple[T.List[mesonli
17891790
@disablerIfNotFound
17901791
@permittedKwargs(permitted_dependency_kwargs)
17911792
@typed_pos_args('dependency', varargs=str, min_varargs=1)
1792-
@typed_kwargs('dependency', DEFAULT_OPTIONS.evolve(since='0.38.0'), allow_unknown=True)
1793+
@typed_kwargs('dependency', *DEPENDENCY_KWS, allow_unknown=True)
17931794
def func_dependency(self, node: mparser.BaseNode, args: T.Tuple[T.List[str]], kwargs: kwtypes.FuncDependency) -> Dependency:
17941795
# Replace '' by empty list of names
17951796
names = [n for n in args[0] if n]

mesonbuild/interpreter/type_checking.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -866,3 +866,8 @@ def _pkgconfig_define_convertor(x: T.List[str]) -> PkgConfigDefineType:
866866
default=[],
867867
convertor=_pkgconfig_define_convertor,
868868
)
869+
870+
871+
DEPENDENCY_KWS: T.List[KwargInfo] = [
872+
DEFAULT_OPTIONS.evolve(since='0.38.0'),
873+
]

mesonbuild/modules/python.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
from ..dependencies.python import BasicPythonExternalProgram, python_factory, _PythonDependencyBase
1717
from ..interpreter import extract_required_kwarg, permitted_dependency_kwargs, primitives as P_OBJ
1818
from ..interpreter.interpreterobjects import _ExternalProgramHolder
19-
from ..interpreter.type_checking import NoneType, PRESERVE_PATH_KW, SHARED_MOD_KWS
19+
from ..interpreter.type_checking import NoneType, DEPENDENCY_KWS, PRESERVE_PATH_KW, SHARED_MOD_KWS
2020
from ..interpreterbase import (
2121
noPosargs, noKwargs, permittedKwargs, ContainerTypeInfo,
2222
InvalidArguments, typed_pos_args, typed_kwargs, KwargInfo,
@@ -256,6 +256,7 @@ def _dependency_method_impl(self, kwargs: TYPE_kwargs) -> Dependency:
256256
@permittedKwargs(permitted_dependency_kwargs | {'embed'})
257257
@FeatureNewKwargs('python_installation.dependency', '0.53.0', ['embed'])
258258
@noPosargs
259+
@typed_kwargs('python_installation.dependency', *DEPENDENCY_KWS, allow_unknown=True)
259260
@InterpreterObject.method('dependency')
260261
def dependency_method(self, args: T.List['TYPE_var'], kwargs: 'TYPE_kwargs') -> 'Dependency':
261262
disabled, required, feature = extract_required_kwarg(kwargs, self.subproject)

0 commit comments

Comments
 (0)