Move OverrideProgram to programs

pull/8563/head
Dylan Baker 5 years ago committed by Xavier Claessens
parent 97c1283baa
commit 9016e4596c
  1. 6
      mesonbuild/interpreter.py
  2. 4
      mesonbuild/modules/gnome.py
  3. 5
      mesonbuild/programs.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)

@ -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

@ -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]:

Loading…
Cancel
Save