diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index 72eebe7c8..5201be2f6 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -1704,6 +1704,8 @@ class Interpreter(): 'for the dependency', mlog.bold(name)) raise dep = self.subprojects[dirname].get_variable_method([varname], {}) + if not isinstance(dep, (DependencyHolder, InternalDependencyHolder)): + raise InterpreterException('Fallback variable is not a dependency object.') # Check if the version of the declared dependency matches what we want if 'version' in kwargs: wanted = kwargs['version'] diff --git a/mesonbuild/modules/windows.py b/mesonbuild/modules/windows.py index 7bf031913..cd4e3436a 100644 --- a/mesonbuild/modules/windows.py +++ b/mesonbuild/modules/windows.py @@ -38,6 +38,8 @@ class WindowsModule: rescomp = dependencies.ExternalProgram(rescomp_name, silent=True) res_args = extra_args + ['@INPUT@', '@OUTPUT@'] suffix = 'o' + if not rescomp.found(): + raise MesonException('Could not find Windows resource compiler %s.' % ' '.join(rescomp.get_command())) res_files = mesonlib.stringlistify(args) res_kwargs = {'output' : '@BASENAME@.' + suffix, 'arguments': res_args}