From: Bruce Richardson Date: Wed, 29 Aug 2018 16:19:20 +0000 (+0100) Subject: build: add configuration summary at end of config X-Git-Url: http://git.droids-corp.org/?p=dpdk.git;a=commitdiff_plain;h=806c45dd483dfec319028758210d9faee731ca8e build: add configuration summary at end of config After running meson to configure a DPDK build, it can be useful to know what was automatically enabled or disabled. Therefore, print out by way of summary a categorised list of libraries and drivers to be built. Signed-off-by: Bruce Richardson --- diff --git a/drivers/meson.build b/drivers/meson.build index f94e2fe672..b6ce974de3 100644 --- a/drivers/meson.build +++ b/drivers/meson.build @@ -24,6 +24,7 @@ foreach class:driver_classes # version file for linking subdir(class) + class_drivers = [] foreach drv:drivers drv_path = join_paths(class, drv) @@ -51,6 +52,8 @@ foreach class:driver_classes subdir(drv_path) if build + class_drivers += name + dpdk_conf.set(config_flag_fmt.format(name.to_upper()),1) lib_name = driver_name_fmt.format(name) @@ -141,4 +144,6 @@ foreach class:driver_classes set_variable('static_@0@'.format(lib_name), static_dep) endif # build endforeach + + set_variable(class + '_drivers', class_drivers) endforeach diff --git a/lib/meson.build b/lib/meson.build index 71f35d162e..3acc67e6ed 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -30,6 +30,8 @@ default_cflags = machine_args if cc.has_argument('-Wno-format-truncation') default_cflags += '-Wno-format-truncation' endif + +enabled_libs = [] # used to print summary at the end foreach l:libraries build = true name = l @@ -55,6 +57,7 @@ foreach l:libraries subdir(dir_name) if build + enabled_libs += name dpdk_conf.set('RTE_LIBRTE_' + name.to_upper(), 1) install_headers(headers) diff --git a/meson.build b/meson.build index 84af32ecef..7332e75b54 100644 --- a/meson.build +++ b/meson.build @@ -73,3 +73,34 @@ pkg.generate(name: meson.project_name(), subdirs: [get_option('include_subdir_arch'), '.'], extra_cflags: ['-include', 'rte_config.h'] + machine_args ) + +# final output, list all the libs and drivers to be built +# this does not affect any part of the build, for information only. +output_message = '\n=================\nLibraries Enabled\n=================\n' +output_message += '\nlibs:\n\t' +output_count = 0 +foreach lib:enabled_libs + output_message += lib + ', ' + output_count += 1 + if output_count == 8 + output_message += '\n\t' + output_count = 0 + endif +endforeach +message(output_message + '\n') + +output_message = '\n===============\nDrivers Enabled\n===============\n' +foreach class:driver_classes + class_drivers = get_variable(class + '_drivers') + output_message += '\n' + class + ':\n\t' + output_count = 0 + foreach drv:class_drivers + output_message += drv + ', ' + output_count += 1 + if output_count == 8 + output_message += '\n\t' + output_count = 0 + endif + endforeach +endforeach +message(output_message + '\n')