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.richard...@intel.com>
---
 drivers/meson.build | 4 ++++
 lib/meson.build     | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/drivers/meson.build b/drivers/meson.build
index 82cc8ed49..f94e2fe67 100644
--- a/drivers/meson.build
+++ b/drivers/meson.build
@@ -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
diff --git a/lib/meson.build b/lib/meson.build
index 4384813f8..71f35d162 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -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
-- 
2.17.0

Reply via email to