build: process dependencies before main build check
[dpdk.git] / lib / meson.build
index e5ff838..8ea3671 100644 (file)
@@ -66,6 +66,19 @@ foreach l:libraries
        dir_name = 'librte_' + l
        subdir(dir_name)
 
+       if build
+               shared_deps = ext_deps
+               static_deps = ext_deps
+               foreach d:deps
+                       if not is_variable('shared_rte_' + d)
+                               error('Missing internal dependency "@0@" for @1@ [@2@]'
+                                               .format(d, name, 'lib/' + dir_name))
+                       endif
+                       shared_deps += [get_variable('shared_rte_' + d)]
+                       static_deps += [get_variable('static_rte_' + d)]
+               endforeach
+       endif
+
        if not build
                dpdk_libs_disabled += name
                set_variable(name.underscorify() + '_disable_reason', reason)
@@ -82,16 +95,6 @@ foreach l:libraries
                        shared_dep = declare_dependency(include_directories: includes)
                        static_dep = shared_dep
                else
-                       shared_deps = ext_deps
-                       static_deps = ext_deps
-                       foreach d:deps
-                               if not is_variable('shared_rte_' + d)
-                                       error('Missing dependency ' + d +
-                                               ' for library ' + libname)
-                               endif
-                               shared_deps += [get_variable('shared_rte_' + d)]
-                               static_deps += [get_variable('static_rte_' + d)]
-                       endforeach
 
                        if allow_experimental_apis
                                cflags += '-DALLOW_EXPERIMENTAL_API'
@@ -154,7 +157,9 @@ foreach l:libraries
                        dpdk_static_libraries = [static_lib] + dpdk_static_libraries
                endif # sources.length() > 0
 
-               set_variable('shared_' + libname, shared_dep)
-               set_variable('static_' + libname, static_dep)
+               set_variable('shared_rte_' + name, shared_dep)
+               set_variable('static_rte_' + name, static_dep)
+               message('lib/@0@: Defining dependency "@1@"'.format(
+                               dir_name, name))
        endif # if build
 endforeach