From c47a9bf56024fc5443d6a1ae11790b796f6ea18a Mon Sep 17 00:00:00 2001 From: Jussi Pakkanen Date: Mon, 17 Apr 2023 12:46:46 +0300 Subject: Add kernel and userland properties to machine objects. --- mesonbuild/interpreter/interpreterobjects.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'mesonbuild/interpreter/interpreterobjects.py') diff --git a/mesonbuild/interpreter/interpreterobjects.py b/mesonbuild/interpreter/interpreterobjects.py index fa9171485..680732102 100644 --- a/mesonbuild/interpreter/interpreterobjects.py +++ b/mesonbuild/interpreter/interpreterobjects.py @@ -639,6 +639,8 @@ class MachineHolder(ObjectHolder['MachineInfo']): 'cpu': self.cpu_method, 'cpu_family': self.cpu_family_method, 'endian': self.endian_method, + 'kernel': self.kernel_method, + 'userland': self.userland_method, }) @noPosargs @@ -661,6 +663,21 @@ class MachineHolder(ObjectHolder['MachineInfo']): def endian_method(self, args: T.List[TYPE_var], kwargs: TYPE_kwargs) -> str: return self.held_object.endian + @noPosargs + @noKwargs + def kernel_method(self, args: T.List[TYPE_var], kwargs: TYPE_kwargs) -> str: + if self.held_object.kernel is not None: + return self.held_object.kernel + raise InterpreterException('Kernel not defined or could not be autodetected.') + + @noPosargs + @noKwargs + def userland_method(self, args: T.List[TYPE_var], kwargs: TYPE_kwargs) -> str: + if self.held_object.userland is not None: + return self.held_object.userland + raise InterpreterException('Userland not defined or could not be autodetected.') + + class IncludeDirsHolder(ObjectHolder[build.IncludeDirs]): pass -- cgit v1.2.1