From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 02D9DC433B4 for ; Fri, 16 Apr 2021 17:05:58 +0000 (UTC) Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by mail.kernel.org (Postfix) with ESMTP id AA76061073 for ; Fri, 16 Apr 2021 17:05:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AA76061073 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=dev-bounces@dpdk.org Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D8E3B161A50; Fri, 16 Apr 2021 19:05:24 +0200 (CEST) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id 392EF161A08 for ; Fri, 16 Apr 2021 19:05:13 +0200 (CEST) IronPort-SDR: NY3lR38X3NdJL9f8sAh6C8wKbqQUiX730iwbnDXk6T0sjpMzbN3vo2+Gaf3qtB5p9AM1au+UHz qQ5uaNhynskg== X-IronPort-AV: E=McAfee;i="6200,9189,9956"; a="280388229" X-IronPort-AV: E=Sophos;i="5.82,226,1613462400"; d="scan'208";a="280388229" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Apr 2021 10:05:12 -0700 IronPort-SDR: jy54BaEWRcul/SIYWMBQRy7ygWn/Ne+ybI8EReSIj9srMXKHUI/MhZlOzK3ShbNeACuV/GcjzP iSy3AxWezssw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,226,1613462400"; d="scan'208";a="384375828" Received: from silpixa00399126.ir.intel.com ([10.237.223.116]) by orsmga006.jf.intel.com with ESMTP; 16 Apr 2021 10:05:11 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Date: Fri, 16 Apr 2021 18:04:50 +0100 Message-Id: <20210416170458.50188-7-bruce.richardson@intel.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20210416170458.50188-1-bruce.richardson@intel.com> References: <20210401115009.1063844-1-bruce.richardson@intel.com> <20210416170458.50188-1-bruce.richardson@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH 06/14] build: reduce indentation in examples build spec X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" As with the lib and drivers directories, we can use "continue" keyword to reduce the indentation level of the majority of the foreach block. At the same time, we can also replace tab indentation with spaces. Signed-off-by: Bruce Richardson --- examples/meson.build | 177 ++++++++++++++++++++++++------------------- 1 file changed, 99 insertions(+), 78 deletions(-) diff --git a/examples/meson.build b/examples/meson.build index d065a6a08..07e682401 100644 --- a/examples/meson.build +++ b/examples/meson.build @@ -3,109 +3,130 @@ link_whole_libs = [] if get_option('default_library') == 'static' - link_whole_libs = dpdk_static_libraries + dpdk_drivers + link_whole_libs = dpdk_static_libraries + dpdk_drivers endif # list of all example apps. Keep 1-3 per line, in alphabetical order. all_examples = [ - 'bbdev_app', 'bond', - 'cmdline', - 'distributor', 'ethtool', - 'eventdev_pipeline', - 'fips_validation', 'flow_classify', - 'flow_filtering', 'helloworld', - 'ioat', - 'ip_fragmentation', 'ip_pipeline', - 'ip_reassembly', 'ipsec-secgw', - 'ipv4_multicast', 'kni', - 'l2fwd', 'l2fwd-cat', 'l2fwd-event', - 'l2fwd-crypto', 'l2fwd-jobstats', - 'l2fwd-keepalive', 'l3fwd', - 'l3fwd-acl', 'l3fwd-power', 'l3fwd-graph', - 'link_status_interrupt', - 'multi_process/client_server_mp/mp_client', - 'multi_process/client_server_mp/mp_server', - 'multi_process/hotplug_mp', - 'multi_process/simple_mp', - 'multi_process/symmetric_mp', - 'ntb', 'packet_ordering', - 'performance-thread/l3fwd-thread', - 'performance-thread/pthread_shim', - 'pipeline', - 'ptpclient', - 'qos_meter', 'qos_sched', - 'rxtx_callbacks', - 'server_node_efd/node', - 'server_node_efd/server', - 'service_cores', - 'skeleton', - 'timer', 'vdpa', - 'vhost', 'vhost_crypto', - 'vhost_blk', 'vm_power_manager', - 'vm_power_manager/guest_cli', - 'vmdq', 'vmdq_dcb', + 'bbdev_app', + 'bond', + 'cmdline', + 'distributor', + 'ethtool', + 'eventdev_pipeline', + 'fips_validation', + 'flow_classify', + 'flow_filtering', + 'helloworld', + 'ioat', + 'ip_fragmentation', + 'ip_pipeline', + 'ip_reassembly', + 'ipsec-secgw', + 'ipv4_multicast', + 'kni', + 'l2fwd', + 'l2fwd-cat', + 'l2fwd-crypto', + 'l2fwd-event', + 'l2fwd-jobstats', + 'l2fwd-keepalive', + 'l3fwd', + 'l3fwd-acl', + 'l3fwd-graph', + 'l3fwd-power', + 'link_status_interrupt', + 'multi_process/client_server_mp/mp_client', + 'multi_process/client_server_mp/mp_server', + 'multi_process/hotplug_mp', + 'multi_process/simple_mp', + 'multi_process/symmetric_mp', + 'ntb', + 'packet_ordering', + 'performance-thread/l3fwd-thread', + 'performance-thread/pthread_shim', + 'pipeline', + 'ptpclient', + 'qos_meter', + 'qos_sched', + 'rxtx_callbacks', + 'server_node_efd/node', + 'server_node_efd/server', + 'service_cores', + 'skeleton', + 'timer', + 'vdpa', + 'vhost', + 'vhost_blk', + 'vhost_crypto', + 'vm_power_manager', + 'vm_power_manager/guest_cli', + 'vmdq', + 'vmdq_dcb', ] # on install, skip copying all meson.build files ex_file_excludes = ['meson.build'] foreach ex:all_examples - ex_file_excludes += [ex + '/meson.build'] + ex_file_excludes += [ex + '/meson.build'] endforeach if get_option('examples') == '' - subdir_done() + subdir_done() endif if get_option('examples').to_lower() == 'all' - examples = all_examples - allow_skips = true # don't flag an error if we can't build an app + examples = all_examples + allow_skips = true # don't flag an error if we can't build an app else - examples = get_option('examples').split(',') - allow_skips = false # error out if we can't build a requested app + examples = get_option('examples').split(',') + allow_skips = false # error out if we can't build a requested app endif default_cflags = machine_args if cc.has_argument('-Wno-format-truncation') - default_cflags += '-Wno-format-truncation' + default_cflags += '-Wno-format-truncation' endif default_ldflags = dpdk_extra_ldflags if get_option('default_library') == 'static' and not is_windows - default_ldflags += ['-Wl,--export-dynamic'] + default_ldflags += ['-Wl,--export-dynamic'] endif foreach example: examples - name = example.split('/')[-1] - build = true - sources = [] - allow_experimental_apis = false - cflags = default_cflags - ldflags = default_ldflags + name = example.split('/')[-1] + build = true + sources = [] + allow_experimental_apis = false + cflags = default_cflags + ldflags = default_ldflags - ext_deps = [] - includes = [include_directories(example)] - deps = ['eal', 'mempool', 'net', 'mbuf', 'ethdev', 'cmdline'] - subdir(example) + ext_deps = [] + includes = [include_directories(example)] + deps = ['eal', 'mempool', 'net', 'mbuf', 'ethdev', 'cmdline'] + subdir(example) - if build - dep_objs = ext_deps - foreach d:deps - var_name = get_option('default_library') + '_rte_' + d - if not is_variable(var_name) - error('Missing dependency "@0@" for example "@1@"'.format(d, name)) - endif - dep_objs += [get_variable(var_name)] - endforeach - if allow_experimental_apis - cflags += '-DALLOW_EXPERIMENTAL_API' - endif - executable('dpdk-' + name, sources, - include_directories: includes, - link_whole: link_whole_libs, - link_args: ldflags, - c_args: cflags, - dependencies: dep_objs) - elif not allow_skips - error('Cannot build requested example "' + name + '"') - else - message('Skipping example "' + name + '"') - endif + if not build + if not allow_skips + error('Cannot build requested example "' + name + '"') + endif + message('Skipping example "' + name + '"') + continue + endif + + dep_objs = ext_deps + foreach d:deps + var_name = get_option('default_library') + '_rte_' + d + if not is_variable(var_name) + error('Missing dependency "@0@" for example "@1@"'.format(d, name)) + endif + dep_objs += [get_variable(var_name)] + endforeach + if allow_experimental_apis + cflags += '-DALLOW_EXPERIMENTAL_API' + endif + executable('dpdk-' + name, sources, + include_directories: includes, + link_whole: link_whole_libs, + link_args: ldflags, + c_args: cflags, + dependencies: dep_objs) endforeach -- 2.27.0