From f88b0b892204d071a46a629b00424a8d47055ba4 Mon Sep 17 00:00:00 2001 From: David Marchand Date: Fri, 22 Oct 2021 22:55:31 +0200 Subject: [PATCH] devtools: forbid indent with tabs in Meson The rule for indentation in Meson in DPDK is 4 spaces. Any tab should be flagged as an issue, let's extend the check and fix existing offenders. Fixes: 4ad4b20a7905 ("drivers: change indentation in build files") Fixes: 2457705e6474 ("crypto/cnxk: add driver skeleton") Fixes: 634b73104482 ("app/testpmd: build on Windows") Fixes: 3a6bfc37eaf4 ("net/ice: support QoS config VF bandwidth in DCF") Fixes: 8ef09fdc506b ("build: add optional NUMA and CPU counts detection") Fixes: e1369718f553 ("common/octeontx: enable build only on 64-bit Linux") Fixes: 2b504721bfda ("app/bbdev: enable la12xx") Fixes: 6cc51b1293ce ("mem: instrument allocator for ASan") Fixes: c75542ae4200 ("crypto/ipsec_mb: introduce IPsec_mb framework") Fixes: 918fd2f1466b ("crypto/ipsec_mb: move aesni_mb PMD") Fixes: 746825e5c0ea ("crypto/ipsec_mb: move aesni_gcm PMD") Fixes: bc9ef81c42b4 ("crypto/ipsec_mb: move kasumi PMD") Fixes: 4f1cfda59ad3 ("crypto/ipsec_mb: move snow3g PMD") Fixes: cde8df1bda9d ("crypto/ipsec_mb: move zuc PMD") Fixes: f16662885472 ("crypto/ipsec_mb: add chacha_poly PMD") Signed-off-by: David Marchand Acked-by: Bruce Richardson Acked-by: Stephen Hemminger --- app/pdump/meson.build | 6 +-- app/proc-info/meson.build | 6 +-- app/test-acl/meson.build | 6 +-- app/test-bbdev/meson.build | 8 ++-- app/test-cmdline/meson.build | 6 +-- app/test-compress-perf/meson.build | 6 +-- app/test-crypto-perf/meson.build | 6 +-- app/test-eventdev/meson.build | 6 +-- app/test-fib/meson.build | 6 +-- app/test-flow-perf/meson.build | 6 +-- app/test-pipeline/meson.build | 6 +-- app/test-regex/meson.build | 6 +-- app/test-sad/meson.build | 6 +-- app/test/meson.build | 6 +-- config/meson.build | 60 +++++++++++++-------------- devtools/check-meson.py | 3 ++ drivers/compress/octeontx/meson.build | 6 +-- drivers/crypto/cnxk/meson.build | 6 +-- drivers/crypto/ipsec_mb/meson.build | 42 +++++++++---------- drivers/crypto/qat/meson.build | 2 +- drivers/net/ice/meson.build | 12 +++--- 21 files changed, 111 insertions(+), 106 deletions(-) diff --git a/app/pdump/meson.build b/app/pdump/meson.build index db1fcadbfe..fb282bba1f 100644 --- a/app/pdump/meson.build +++ b/app/pdump/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2018 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files('main.c') diff --git a/app/proc-info/meson.build b/app/proc-info/meson.build index 82ed05bb0b..1062e0ef86 100644 --- a/app/proc-info/meson.build +++ b/app/proc-info/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2018 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files('main.c') diff --git a/app/test-acl/meson.build b/app/test-acl/meson.build index 14d36b33e9..c0dc4b221a 100644 --- a/app/test-acl/meson.build +++ b/app/test-acl/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2019 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files('main.c') diff --git a/app/test-bbdev/meson.build b/app/test-bbdev/meson.build index a726a5b3fa..76d4c26999 100644 --- a/app/test-bbdev/meson.build +++ b/app/test-bbdev/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2018 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files( @@ -24,5 +24,5 @@ if dpdk_conf.has('RTE_BASEBAND_ACC100') deps += ['baseband_acc100'] endif if dpdk_conf.has('RTE_LIBRTE_PMD_BBDEV_LA12XX') - deps += ['baseband_la12xx'] + deps += ['baseband_la12xx'] endif diff --git a/app/test-cmdline/meson.build b/app/test-cmdline/meson.build index 0898821200..6027f67919 100644 --- a/app/test-cmdline/meson.build +++ b/app/test-cmdline/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2019 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files('commands.c', 'cmdline_test.c') diff --git a/app/test-compress-perf/meson.build b/app/test-compress-perf/meson.build index f29c6ee863..34dcfe5b8e 100644 --- a/app/test-compress-perf/meson.build +++ b/app/test-compress-perf/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2018 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files( diff --git a/app/test-crypto-perf/meson.build b/app/test-crypto-perf/meson.build index ef3582a87c..7b02b518f0 100644 --- a/app/test-crypto-perf/meson.build +++ b/app/test-crypto-perf/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2018 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files( diff --git a/app/test-eventdev/meson.build b/app/test-eventdev/meson.build index 17be360677..ab8769c755 100644 --- a/app/test-eventdev/meson.build +++ b/app/test-eventdev/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2017 Cavium, Inc if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files( diff --git a/app/test-fib/meson.build b/app/test-fib/meson.build index 3360ea02b0..eb36772cf3 100644 --- a/app/test-fib/meson.build +++ b/app/test-fib/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2019 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files('main.c') diff --git a/app/test-flow-perf/meson.build b/app/test-flow-perf/meson.build index a33cad9078..766e4516ad 100644 --- a/app/test-flow-perf/meson.build +++ b/app/test-flow-perf/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2020 Mellanox Technologies, Ltd if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files( diff --git a/app/test-pipeline/meson.build b/app/test-pipeline/meson.build index 7d123e32fb..3add6b637b 100644 --- a/app/test-pipeline/meson.build +++ b/app/test-pipeline/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2019 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files( diff --git a/app/test-regex/meson.build b/app/test-regex/meson.build index 02b101980e..e3ba060e55 100644 --- a/app/test-regex/meson.build +++ b/app/test-regex/meson.build @@ -2,9 +2,9 @@ # Copyright 2020 Mellanox Technologies, Ltd if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files('main.c') diff --git a/app/test-sad/meson.build b/app/test-sad/meson.build index 3d15727a01..a50616a9c7 100644 --- a/app/test-sad/meson.build +++ b/app/test-sad/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2019 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif sources = files('main.c') diff --git a/app/test/meson.build b/app/test/meson.build index 20f36a1803..3d9470df23 100644 --- a/app/test/meson.build +++ b/app/test/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2017 Intel Corporation if is_windows - build = false - reason = 'not supported on Windows' - subdir_done() + build = false + reason = 'not supported on Windows' + subdir_done() endif if not get_option('tests') diff --git a/config/meson.build b/config/meson.build index 59e3d5c573..17b5bec406 100644 --- a/config/meson.build +++ b/config/meson.build @@ -324,47 +324,47 @@ endif max_lcores = get_option('max_lcores') if max_lcores == 'detect' - # discovery makes sense only for non-cross builds - if meson.is_cross_build() - error('Discovery of max_lcores is not supported for cross-compilation.') - endif - # overwrite the default value with discovered values - max_lcores = run_command(get_cpu_count_cmd).stdout().to_int() - min_lcores = 2 - # DPDK must be built for at least 2 cores - if max_lcores < min_lcores - message('Found less than @0@ cores, building for @0@ cores'.format(min_lcores)) - max_lcores = min_lcores - else - message('Found @0@ cores'.format(max_lcores)) - endif - dpdk_conf.set('RTE_MAX_LCORE', max_lcores) + # discovery makes sense only for non-cross builds + if meson.is_cross_build() + error('Discovery of max_lcores is not supported for cross-compilation.') + endif + # overwrite the default value with discovered values + max_lcores = run_command(get_cpu_count_cmd).stdout().to_int() + min_lcores = 2 + # DPDK must be built for at least 2 cores + if max_lcores < min_lcores + message('Found less than @0@ cores, building for @0@ cores'.format(min_lcores)) + max_lcores = min_lcores + else + message('Found @0@ cores'.format(max_lcores)) + endif + dpdk_conf.set('RTE_MAX_LCORE', max_lcores) elif max_lcores != 'default' - # overwrite the default value from arch_subdir with user input - dpdk_conf.set('RTE_MAX_LCORE', max_lcores.to_int()) + # overwrite the default value from arch_subdir with user input + dpdk_conf.set('RTE_MAX_LCORE', max_lcores.to_int()) endif max_numa_nodes = get_option('max_numa_nodes') if max_numa_nodes == 'detect' - # discovery makes sense only for non-cross builds - if meson.is_cross_build() - error('Discovery of max_numa_nodes not supported for cross-compilation.') - endif - # overwrite the default value with discovered values - max_numa_nodes = run_command(get_numa_count_cmd).stdout().to_int() - message('Found @0@ numa nodes'.format(max_numa_nodes)) - dpdk_conf.set('RTE_MAX_NUMA_NODES', max_numa_nodes) + # discovery makes sense only for non-cross builds + if meson.is_cross_build() + error('Discovery of max_numa_nodes not supported for cross-compilation.') + endif + # overwrite the default value with discovered values + max_numa_nodes = run_command(get_numa_count_cmd).stdout().to_int() + message('Found @0@ numa nodes'.format(max_numa_nodes)) + dpdk_conf.set('RTE_MAX_NUMA_NODES', max_numa_nodes) elif max_numa_nodes != 'default' - # overwrite the default value from arch_subdir with user input - dpdk_conf.set('RTE_MAX_NUMA_NODES', max_numa_nodes.to_int()) + # overwrite the default value from arch_subdir with user input + dpdk_conf.set('RTE_MAX_NUMA_NODES', max_numa_nodes.to_int()) endif # check that CPU and NUMA counts are set if not dpdk_conf.has('RTE_MAX_LCORE') - error('Number of CPU cores not specified.') + error('Number of CPU cores not specified.') endif if not dpdk_conf.has('RTE_MAX_NUMA_NODES') - error('Number of NUMA nodes not specified.') + error('Number of NUMA nodes not specified.') endif # set the install path for the drivers @@ -429,7 +429,7 @@ if get_option('b_sanitize') == 'address' or get_option('b_sanitize') == 'address endif if is_linux and arch_subdir == 'x86' and dpdk_conf.get('RTE_ARCH_64') - dpdk_conf.set10('RTE_MALLOC_ASAN', true) + dpdk_conf.set10('RTE_MALLOC_ASAN', true) endif endif diff --git a/devtools/check-meson.py b/devtools/check-meson.py index 29f7887968..4b2338828d 100755 --- a/devtools/check-meson.py +++ b/devtools/check-meson.py @@ -8,6 +8,7 @@ import sys import os +import re from os.path import relpath, join from argparse import ArgumentParser @@ -50,6 +51,8 @@ def check_indentation(filename, contents): code, comments = split_code_comments(line) if not code.strip(): continue + if re.match('^ *\t', code): + print(f'Error parsing {filename}:{lineno}, got some tabulation') if code.endswith('files('): if infiles: raise(f'Error parsing {filename}:{lineno}, got "files(" when already parsing files list') diff --git a/drivers/compress/octeontx/meson.build b/drivers/compress/octeontx/meson.build index cd8687fde3..3a29c3e609 100644 --- a/drivers/compress/octeontx/meson.build +++ b/drivers/compress/octeontx/meson.build @@ -2,9 +2,9 @@ # Copyright(c) 2018 Cavium, Inc if not is_linux or not dpdk_conf.get('RTE_ARCH_64') - build = false - reason = 'only supported on 64-bit Linux' - subdir_done() + build = false + reason = 'only supported on 64-bit Linux' + subdir_done() endif sources = files('otx_zip.c', 'otx_zip_pmd.c') diff --git a/drivers/crypto/cnxk/meson.build b/drivers/crypto/cnxk/meson.build index 024109f7e9..23a1cc3aac 100644 --- a/drivers/crypto/cnxk/meson.build +++ b/drivers/crypto/cnxk/meson.build @@ -3,9 +3,9 @@ # if not is_linux or not dpdk_conf.get('RTE_ARCH_64') - build = false - reason = 'only supported on 64-bit Linux' - subdir_done() + build = false + reason = 'only supported on 64-bit Linux' + subdir_done() endif sources = files( diff --git a/drivers/crypto/ipsec_mb/meson.build b/drivers/crypto/ipsec_mb/meson.build index d7037daea1..b4a81efa8e 100644 --- a/drivers/crypto/ipsec_mb/meson.build +++ b/drivers/crypto/ipsec_mb/meson.build @@ -4,30 +4,30 @@ IMB_required_ver = '1.0.0' lib = cc.find_library('IPSec_MB', required: false) if not lib.found() - build = false - reason = 'missing dependency, "libIPSec_MB"' + build = false + reason = 'missing dependency, "libIPSec_MB"' else - ext_deps += lib + ext_deps += lib - # version comes with quotes, so we split based on " and take the middle - imb_ver = cc.get_define('IMB_VERSION_STR', - prefix : '#include').split('"')[1] - - if (imb_ver == '') or (imb_ver.version_compare('<' + IMB_required_ver)) - reason = 'IPSec_MB version >= @0@ is required, found version @1@'.format( - IMB_required_ver, imb_ver) - build = false - endif + # version comes with quotes, so we split based on " and take the middle + imb_ver = cc.get_define('IMB_VERSION_STR', + prefix : '#include').split('"')[1] + if (imb_ver == '') or (imb_ver.version_compare('<' + IMB_required_ver)) + reason = 'IPSec_MB version >= @0@ is required, found version @1@'.format( + IMB_required_ver, imb_ver) + build = false + endif endif -sources = files('ipsec_mb_private.c', - 'ipsec_mb_ops.c', - 'pmd_aesni_mb.c', - 'pmd_aesni_gcm.c', - 'pmd_chacha_poly.c', - 'pmd_kasumi.c', - 'pmd_snow3g.c', - 'pmd_zuc.c' - ) +sources = files( + 'ipsec_mb_private.c', + 'ipsec_mb_ops.c', + 'pmd_aesni_mb.c', + 'pmd_aesni_gcm.c', + 'pmd_chacha_poly.c', + 'pmd_kasumi.c', + 'pmd_snow3g.c', + 'pmd_zuc.c', +) deps += ['bus_vdev', 'net', 'security'] diff --git a/drivers/crypto/qat/meson.build b/drivers/crypto/qat/meson.build index b3b2d17258..544f481067 100644 --- a/drivers/crypto/qat/meson.build +++ b/drivers/crypto/qat/meson.build @@ -19,7 +19,7 @@ if dep.found() 'qat_sym_hw_dp.c', 'qat_sym_pmd.c', 'qat_sym_session.c', - ) + ) qat_ext_deps += dep qat_cflags += '-DBUILD_QAT_SYM' qat_cflags += '-DBUILD_QAT_ASYM' diff --git a/drivers/net/ice/meson.build b/drivers/net/ice/meson.build index 0b86d74a49..d608da7765 100644 --- a/drivers/net/ice/meson.build +++ b/drivers/net/ice/meson.build @@ -67,10 +67,12 @@ if arch_subdir == 'x86' endif endif -sources += files('ice_dcf.c', - 'ice_dcf_vf_representor.c', - 'ice_dcf_ethdev.c', - 'ice_dcf_parent.c', - 'ice_dcf_sched.c') +sources += files( + 'ice_dcf.c', + 'ice_dcf_vf_representor.c', + 'ice_dcf_ethdev.c', + 'ice_dcf_parent.c', + 'ice_dcf_sched.c', +) headers = files('rte_pmd_ice.h')