summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2024-12-06 12:22:41 -0800
committerDylan Baker <dylan@pnwbakers.com>2025-10-20 15:15:53 -0700
commit8611d2ab020be70b7f47d361be6354e487c1bc15 (patch)
tree4a2dd35fc634d9a319e74fd1eea892f6e3121107
parent03cd1512a8fb00e5d14f40219e7efc1cc3ac82ab (diff)
downloadmeson-8611d2ab020be70b7f47d361be6354e487c1bc15.tar.gz
interpreter: port dependency cmake_package_version to typed_kwargs
-rw-r--r--mesonbuild/dependencies/base.py1
-rw-r--r--mesonbuild/dependencies/cmake.py2
-rw-r--r--mesonbuild/interpreter/interpreter.py1
-rw-r--r--mesonbuild/interpreter/kwargs.py1
-rw-r--r--mesonbuild/interpreter/type_checking.py1
5 files changed, 3 insertions, 3 deletions
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
index 146dca23e..b17dc5b07 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
@@ -42,6 +42,7 @@ if T.TYPE_CHECKING:
cmake_args: T.List[str]
cmake_module_path: T.List[str]
+ cmake_package_version: str
_MissingCompilerBase = Compiler
else:
diff --git a/mesonbuild/dependencies/cmake.py b/mesonbuild/dependencies/cmake.py
index 0c42f4ff1..4def2d2ae 100644
--- a/mesonbuild/dependencies/cmake.py
+++ b/mesonbuild/dependencies/cmake.py
@@ -127,8 +127,6 @@ class CMakeDependency(ExternalDependency):
self.cmakeinfo = cmakeinfo
package_version = kwargs.get('cmake_package_version', '')
- if not isinstance(package_version, str):
- raise DependencyException('Keyword "cmake_package_version" must be a string.')
components = [(x, True) for x in stringlistify(extract_as_list(kwargs, 'components'))] # type: ignore[arg-type]
modules = [(x, True) for x in stringlistify(extract_as_list(kwargs, 'modules'))] # type: ignore[arg-type]
modules += [(x, False) for x in stringlistify(extract_as_list(kwargs, 'optional_modules'))] # type: ignore[arg-type]
diff --git a/mesonbuild/interpreter/interpreter.py b/mesonbuild/interpreter/interpreter.py
index 43fdfea3c..445666d78 100644
--- a/mesonbuild/interpreter/interpreter.py
+++ b/mesonbuild/interpreter/interpreter.py
@@ -1788,7 +1788,6 @@ class Interpreter(InterpreterBase, HoldableObject):
search_dirs=search_dirs)
# When adding kwargs, please check if they make sense in dependencies.get_dep_identifier()
- @FeatureNewKwargs('dependency', '0.57.0', ['cmake_package_version'])
@FeatureNewKwargs('dependency', '0.54.0', ['components'])
@FeatureNewKwargs('dependency', '0.52.0', ['include_type'])
@FeatureNewKwargs('dependency', '0.50.0', ['not_found_message'])
diff --git a/mesonbuild/interpreter/kwargs.py b/mesonbuild/interpreter/kwargs.py
index d8b34c995..63edb44b0 100644
--- a/mesonbuild/interpreter/kwargs.py
+++ b/mesonbuild/interpreter/kwargs.py
@@ -497,3 +497,4 @@ class FuncDependency(TypedDict):
allow_fallback: T.Optional[bool]
cmake_args: T.List[str]
cmake_module_path: T.List[str]
+ cmake_package_version: str
diff --git a/mesonbuild/interpreter/type_checking.py b/mesonbuild/interpreter/type_checking.py
index a5fa69c06..332ef9b44 100644
--- a/mesonbuild/interpreter/type_checking.py
+++ b/mesonbuild/interpreter/type_checking.py
@@ -901,4 +901,5 @@ DEPENDENCY_KWS: T.List[KwargInfo] = [
KwargInfo('allow_fallback', (bool, NoneType), since='0.56.0'),
KwargInfo('cmake_args', ContainerTypeInfo(list, str), listify=True, default=[], since='0.50.0'),
KwargInfo('cmake_module_path', ContainerTypeInfo(list, str), listify=True, default=[], since='0.50.0'),
+ KwargInfo('cmake_package_version', str, default='', since='0.57.0'),
]