diff options
author | Dylan Baker <dylan@pnwbakers.com> | 2020-10-02 15:12:30 -0700 |
---|---|---|
committer | Xavier Claessens <xclaesse@gmail.com> | 2021-03-19 08:47:10 -0400 |
commit | 9016e4596c4c7e413322c8c4b898298b6d48b7e5 (patch) | |
tree | 9c5f81bb57e2149b3bf034654915908b35de88fe | |
parent | 97c1283baaf75dee50e9edf3db345e3299481212 (diff) | |
download | meson-9016e4596c4c7e413322c8c4b898298b6d48b7e5.zip meson-9016e4596c4c7e413322c8c4b898298b6d48b7e5.tar.gz meson-9016e4596c4c7e413322c8c4b898298b6d48b7e5.tar.bz2 |
Move OverrideProgram to programs
-rw-r--r-- | mesonbuild/interpreter.py | 6 | ||||
-rw-r--r-- | mesonbuild/modules/gnome.py | 4 | ||||
-rw-r--r-- | mesonbuild/programs.py | 5 |
3 files changed, 8 insertions, 7 deletions
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index f4e296d..5cf3dde 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -22,7 +22,7 @@ from . import compilers from .wrap import wrap, WrapMode from . import mesonlib from .mesonlib import FileMode, MachineChoice, OptionKey, Popen_safe, listify, extract_as_list, has_path_sep, unholder -from .programs import ExternalProgram, NonExistingExternalProgram +from .programs import ExternalProgram, NonExistingExternalProgram, OverrideProgram from .dependencies import InternalDependency, Dependency, NotFoundDependency, DependencyException from .depfile import DepFile from .interpreterbase import InterpreterBase, typed_pos_args @@ -72,10 +72,6 @@ def stringifyUserArguments(args, quote=False): raise InvalidArguments('Function accepts only strings, integers, lists, dictionaries and lists thereof.') -class OverrideProgram(ExternalProgram): - pass - - class FeatureOptionHolder(InterpreterObject, ObjectHolder[coredata.UserFeatureOption]): def __init__(self, env: 'Environment', name: str, option: coredata.UserFeatureOption): InterpreterObject.__init__(self) diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py index 6ca866f..8a48ca8 100644 --- a/mesonbuild/modules/gnome.py +++ b/mesonbuild/modules/gnome.py @@ -34,8 +34,8 @@ from ..mesonlib import ( join_args, unholder, ) from ..dependencies import Dependency, PkgConfigDependency, InternalDependency -from ..programs import ExternalProgram from ..interpreterbase import noPosargs, noKwargs, permittedKwargs, FeatureNew, FeatureNewKwargs, FeatureDeprecatedKwargs +from ..programs import ExternalProgram, OverrideProgram if T.TYPE_CHECKING: from ..compilers import Compiler @@ -492,7 +492,7 @@ class GnomeModule(ExtensionModule): exe = self.giscanner if hasattr(exe, 'held_object'): exe = exe.held_object - if isinstance(exe, interpreter.OverrideProgram): + if isinstance(exe, OverrideProgram): # Handle overridden g-ir-scanner assert option in ['--extra-library', '--sources-top-dirs'] return True diff --git a/mesonbuild/programs.py b/mesonbuild/programs.py index b436a15..1d93b8a 100644 --- a/mesonbuild/programs.py +++ b/mesonbuild/programs.py @@ -333,6 +333,11 @@ class EmptyExternalProgram(ExternalProgram): # lgtm [py/missing-call-to-init] return True +class OverrideProgram(ExternalProgram): + + """A script overriding a program.""" + + def find_external_program(env: 'Environment', for_machine: MachineChoice, name: str, display_name: str, default_names: T.List[str], allow_default_for_cross: bool = True) -> T.Generator['ExternalProgram', None, None]: |