build: improve error message for missing dependency
Checks
Commit Message
When building a driver or library and a required internal dependency
is missing, the error message printed was:
Tried to get unknown variable "shared_rte_<libname>".
However, a better way to handle this is to catch the missing variable
earlier and convert it into a proper message, informing the user
that the required dependency is missing, and most importantly, what
library or driver wanted that dependency.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/meson.build | 4 ++++
lib/meson.build | 4 ++++
2 files changed, 8 insertions(+)
Comments
20/07/2018 15:28, Bruce Richardson:
> When building a driver or library and a required internal dependency
> is missing, the error message printed was:
>
> Tried to get unknown variable "shared_rte_<libname>".
>
> However, a better way to handle this is to catch the missing variable
> earlier and convert it into a proper message, informing the user
> that the required dependency is missing, and most importantly, what
> library or driver wanted that dependency.
>
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Applied, thanks
@@ -62,6 +62,10 @@ foreach class:driver_classes
shared_objs = []
static_objs = []
foreach d:deps
+ if not is_variable('shared_rte_' + d)
+ error('Missing dependency ' + d +
+ ' for driver ' + lib_name)
+ endif
shared_objs += [get_variable('shared_rte_' + d)]
static_objs += [get_variable('static_rte_' + d)]
endforeach
@@ -69,6 +69,10 @@ foreach l:libraries
shared_deps = ext_deps
static_deps = ext_deps
foreach d:deps
+ if not is_variable('shared_rte_' + d)
+ error('Missing dependency ' + d +
+ ' for library ' + lib_name)
+ endif
shared_deps += [get_variable('shared_rte_' + d)]
static_deps += [get_variable('static_rte_' + d)]
endforeach