aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/dependencies/base.py
diff options
context:
space:
mode:
Diffstat (limited to 'mesonbuild/dependencies/base.py')
-rw-r--r--mesonbuild/dependencies/base.py26
1 files changed, 25 insertions, 1 deletions
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
index 63b817a..aca5d25 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
@@ -981,10 +981,14 @@ class ExternalProgram:
def get_name(self):
return self.name
+
class NonExistingExternalProgram(ExternalProgram):
+ "A program that will never exist"
def __init__(self):
- super().__init__(name = 'nonexistingprogram', silent = True)
+ self.name = 'nonexistingprogram'
+ self.command = [None]
+ self.path = None
def __repr__(self):
r = '<{} {!r} -> {!r}>'
@@ -993,6 +997,26 @@ class NonExistingExternalProgram(ExternalProgram):
def found(self):
return False
+
+class EmptyExternalProgram(ExternalProgram):
+ '''
+ A program object that returns an empty list of commands. Used for cases
+ such as a cross file exe_wrapper to represent that it's not required.
+ '''
+
+ def __init__(self):
+ self.name = None
+ self.command = []
+ self.path = None
+
+ def __repr__(self):
+ r = '<{} {!r} -> {!r}>'
+ return r.format(self.__class__.__name__, self.name, self.command)
+
+ def found(self):
+ return True
+
+
class ExternalLibrary(ExternalDependency):
def __init__(self, name, link_args, environment, language, silent=False):
super().__init__('external', environment, language, {})