From patchwork Thu Oct 22 14:59:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 81806 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 40995A04DD; Thu, 22 Oct 2020 17:01:07 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 55EF7AC43; Thu, 22 Oct 2020 17:00:10 +0200 (CEST) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id EC527AA23 for ; Thu, 22 Oct 2020 17:00:05 +0200 (CEST) IronPort-SDR: 8rhzfepe5Gl2LUzBe2NgslAzcHFPqDat0HXfJD0Ww5TFqRcGmrVbtTMqnnnMADqZOJwYPNjfDM uMyP4yATriGQ== X-IronPort-AV: E=McAfee;i="6000,8403,9781"; a="185219014" X-IronPort-AV: E=Sophos;i="5.77,404,1596524400"; d="scan'208";a="185219014" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Oct 2020 08:00:03 -0700 IronPort-SDR: HyvnjX4d5dvcwxxxBXa0Bvq8cfAbZqLmDPzR65xfAuXAYBa7K4J4gDTT4QEXVyqazRW77OYquC +iQi+r9WooMg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,404,1596524400"; d="scan'208";a="533997630" Received: from silpixa00399126.ir.intel.com ([10.237.222.4]) by orsmga005.jf.intel.com with ESMTP; 22 Oct 2020 08:00:02 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Date: Thu, 22 Oct 2020 15:59:44 +0100 Message-Id: <20201022145944.470054-4-bruce.richardson@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201022145944.470054-1-bruce.richardson@intel.com> References: <20201022145944.470054-1-bruce.richardson@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [RFC PATCH 3/3] build: write messages to dpdk build log file X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Add additional info into the DPDK-specific logs by copying or replacing all "message()" calls with writes to the log file, making the build configuration, including lists of enabled/disabled drivers etc. available after the meson run has completed. Signed-off-by: Bruce Richardson --- app/test/meson.build | 2 +- config/arm/meson.build | 2 ++ config/x86/meson.build | 2 ++ drivers/meson.build | 6 ++++-- examples/meson.build | 1 + lib/meson.build | 5 +++-- meson.build | 6 ++++++ 7 files changed, 19 insertions(+), 5 deletions(-) diff --git a/app/test/meson.build b/app/test/meson.build index 8bfb02890..b2d90cfd8 100644 --- a/app/test/meson.build +++ b/app/test/meson.build @@ -439,7 +439,7 @@ dpdk_test = executable('dpdk-test', install: true) has_hugepage = run_command('has-hugepage.sh').stdout().strip() != '0' -message('hugepage availability: @0@'.format(has_hugepage)) +run_command(log, 'hugepage availability: @0@'.format(has_hugepage)) # some perf tests (eg: memcpy perf autotest)take very long # to complete, so timeout to 10 minutes diff --git a/config/arm/meson.build b/config/arm/meson.build index b49203fa8..31ac79480 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -182,6 +182,7 @@ else endforeach message('Implementer : ' + machine[0]) + run_command(log, 'config/arm/meson.build: Implementer = ' + machine[0]) foreach flag: machine[1] if flag.length() > 0 dpdk_conf.set(flag[0], flag[1]) @@ -205,6 +206,7 @@ else endforeach endif message(machine_args) +run_command(log, 'config/arm/meson.build: machine_args = ', machine_args) if (cc.get_define('__ARM_NEON', args: machine_args) != '' or cc.get_define('__aarch64__', args: machine_args) != '') diff --git a/config/x86/meson.build b/config/x86/meson.build index 31bfa63b1..0008717b8 100644 --- a/config/x86/meson.build +++ b/config/x86/meson.build @@ -13,6 +13,8 @@ endif # we require SSE4.2 for DPDK if cc.get_define('__SSE4_2__', args: machine_args) == '' message('SSE 4.2 not enabled by default, explicitly enabling') + run_command(log, 'config/x86/meson.build:', + 'SSE 4.2 not enabled by default, explicitly enabling') machine_args += '-msse4' endif diff --git a/drivers/meson.build b/drivers/meson.build index c008abd4a..fd925114e 100644 --- a/drivers/meson.build +++ b/drivers/meson.build @@ -90,8 +90,10 @@ foreach subpath:subdirs if not is_variable('shared_rte_' + d) build = false reason = 'Missing internal dependency, "@0@"'.format(d) - message('Disabling @1@ [@2@]: missing internal dependency "@0@"' - .format(d, name, 'drivers/' + drv_path)) + log_msg = 'Disabling @1@ [@2@]: missing internal dependency "@0@"'.format( + d, name, 'drivers/' + drv_path) + message(log_msg) + run_command(log, log_msg) else shared_deps += [get_variable('shared_rte_' + d)] static_deps += [get_variable('static_rte_' + d)] diff --git a/examples/meson.build b/examples/meson.build index 414ec55cc..8f9922cad 100644 --- a/examples/meson.build +++ b/examples/meson.build @@ -105,5 +105,6 @@ foreach example: examples error('Cannot build requested example "' + name + '"') else message('Skipping example "' + name + '"') + run_command(log, 'Skipping example "' + name + '"') endif endforeach diff --git a/lib/meson.build b/lib/meson.build index 2715c0f66..aac07eb50 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -112,8 +112,9 @@ foreach l:libraries static_dep = shared_dep else if is_windows and use_function_versioning - message('@0@: Function versioning is not supported by Windows.' - .format(name)) + log_msg = '@0@: Function versioning is not supported by Windows.'.format(name) + message(log_msg) + run_command(log, log_msg) endif if use_function_versioning diff --git a/meson.build b/meson.build index 8333d264f..a587579f3 100644 --- a/meson.build +++ b/meson.build @@ -15,6 +15,8 @@ project('DPDK', 'C', subdir('buildtools') run_command(log, '======= Starting meson =======') +run_command(log, 'Meson version', meson.version()) +run_command(log, 'DPDK version', meson.project_version()) # set up some global vars for compiler, platform, configuration, etc. cc = meson.get_compiler('c') @@ -76,6 +78,7 @@ foreach lib:enabled_libs endif endforeach message(output_message + '\n') +run_command(log, output_message) output_message = '\n===============\nDrivers Enabled\n===============\n' foreach class:dpdk_driver_classes @@ -92,6 +95,7 @@ foreach class:dpdk_driver_classes endforeach endforeach message(output_message + '\n') +run_command(log, output_message) output_message = '\n=================\nContent Skipped\n=================\n' output_message += '\nlibs:\n\t' @@ -105,3 +109,5 @@ foreach drv:dpdk_drvs_disabled output_message += drv + ':\t' + reason + '\n\t' endforeach message(output_message + '\n') +run_command(log, output_message) +run_command(log, 'Meson done\n')