From fdd0675661ad5aac74ee449f14b4a17ca1bd44b5 Mon Sep 17 00:00:00 2001 From: Jussi Pakkanen Date: Thu, 5 Jan 2017 18:35:08 +0200 Subject: [PATCH] Better error messages. Closes #1284. --- mesonbuild/build.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mesonbuild/build.py b/mesonbuild/build.py index f895531e6..7d3a5c4d2 100644 --- a/mesonbuild/build.py +++ b/mesonbuild/build.py @@ -726,11 +726,14 @@ class BuildTarget(): elif isinstance(dep, dependencies.Dependency): self.external_deps.append(dep) self.process_sourcelist(dep.get_sources()) + elif isinstance(dep, BuildTarget): + raise InvalidArguments('''Tried to use a build target as a dependency. +You probably should put it in link_with instead.''') else: # This is a bit of a hack. We do not want Build to know anything # about the interpreter so we can't import it and use isinstance. # This should be reliable enough. - if hasattr(dep, 'subproject'): + if hasattr(dep, 'args_frozen'): raise InvalidArguments('Tried to use subproject object as a dependency.\n' 'You probably wanted to use a dependency declared in it instead.\n' 'Access it by calling get_variable() on the subproject object.')