]> git.droids-corp.org - dpdk.git/commitdiff
build: fix warnings when running external commands
authorBruce Richardson <bruce.richardson@intel.com>
Thu, 20 Jan 2022 18:06:39 +0000 (18:06 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Wed, 2 Feb 2022 14:44:12 +0000 (15:44 +0100)
Meson 0.61.1 is giving warnings that the calls to run_command do not
always explicitly specify if the result is to be checked or not, i.e.
there is a missing "check" parameter. This is because the default
behaviour without the parameter is due to change in the future.

We can fix these warnings by explicitly adding into each call whether
the result should be checked by meson or not. This patch therefore
adds in "check: false" to each run_command call where the result is
being checked by the DPDK meson.build code afterwards, and adds in
"check: true" to any calls where the result is currently unchecked.

Bugzilla ID: 921
Cc: stable@dpdk.org
Reported-by: Jerin Jacob <jerinj@marvell.com>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Tested-by: Jerin Jacob <jerinj@marvell.com>
app/test/meson.build
buildtools/meson.build
config/arm/meson.build
config/meson.build
config/x86/meson.build
drivers/common/mlx5/linux/meson.build
drivers/common/mlx5/windows/meson.build
drivers/net/mlx4/meson.build
kernel/linux/kni/meson.build
kernel/linux/meson.build
meson.build

index 725a218f4afcc629c6158c857160d48e5c46af8e..5476c180ee54acf36023ab73d4ea792a9dbbe5b8 100644 (file)
@@ -457,7 +457,7 @@ dpdk_test = executable('dpdk-test',
              driver_install_path),
         install: true)
 
-has_hugepage = run_command('has-hugepage.sh').stdout().strip() != '0'
+has_hugepage = run_command('has-hugepage.sh', check: true).stdout().strip() != '0'
 message('hugepage availability: @0@'.format(has_hugepage))
 
 # some perf tests (eg: memcpy perf autotest)take very long
index 22ea0ba375c15cdf93490c7ed81fff3f330949e0..400b88f251b54d6e943ea58518c211d25c00c46b 100644 (file)
@@ -45,7 +45,7 @@ if host_machine.system() != 'windows'
 endif
 foreach module : python3_required_modules
     script = 'import importlib.util; import sys; exit(importlib.util.find_spec("@0@") is None)'
-    if run_command(py3, '-c', script.format(module)).returncode() != 0
+    if run_command(py3, '-c', script.format(module), check: false).returncode() != 0
         error('missing python module: @0@'.format(module))
     endif
 endforeach
index c3a3f2faafa0bc1fbc54dcfa4bf987656844faac..e102381af5aab7d717f065b8aff7025f380f22dc 100644 (file)
@@ -463,7 +463,7 @@ else
             # 'Primary Part number', 'Revision']
             detect_vendor = find_program(join_paths(meson.current_source_dir(),
                                                     'armv8_machine.py'))
-            cmd = run_command(detect_vendor.path())
+            cmd = run_command(detect_vendor.path(), check: false)
             if cmd.returncode() == 0
                 cmd_output = cmd.stdout().to_lower().strip().split(' ')
                 implementer_id = cmd_output[0]
index 805d5d51d06ff4e9565adbd75eeb367e341bcb02..ee12318d4fac40af2e139abc15d8c09ed150c47b 100644 (file)
@@ -22,7 +22,8 @@ is_ms_linker = is_windows and (cc.get_id() == 'clang')
 # depending on the configuration options
 pver = meson.project_version().split('.')
 major_version = '@0@.@1@'.format(pver.get(0), pver.get(1))
-abi_version = run_command(find_program('cat', 'more'), abi_version_file).stdout().strip()
+abi_version = run_command(find_program('cat', 'more'), abi_version_file,
+        check: true).stdout().strip()
 
 # Libraries have the abi_version as the filename extension
 # and have the soname be all but the final part of the abi_version.
@@ -334,7 +335,7 @@ if max_lcores == 'detect'
         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()
+    max_lcores = run_command(get_cpu_count_cmd, check: true).stdout().to_int()
     min_lcores = 2
     # DPDK must be built for at least 2 cores
     if max_lcores < min_lcores
index e25ed316f4006720a0e534580ada887d7c1ceceb..54345c4da37523282d8e25573c732fda27e97988 100644 (file)
@@ -4,7 +4,7 @@
 # get binutils version for the workaround of Bug 97
 binutils_ok = true
 if is_linux or cc.get_id() == 'gcc'
-    binutils_ok = run_command(binutils_avx512_check).returncode() == 0
+    binutils_ok = run_command(binutils_avx512_check, check: false).returncode() == 0
     if not binutils_ok and cc.has_argument('-mno-avx512f')
         machine_args += '-mno-avx512f'
         warning('Binutils error with AVX512 assembly, disabling AVX512 support')
index 7909f23e21dc2a45ed2e02088d1ac01e42c0aea6..4c7b53b9bd26989b7cacec8716f73cd0d0164c99 100644 (file)
@@ -36,7 +36,7 @@ foreach libname:libnames
 endforeach
 if static_ibverbs or dlopen_ibverbs
     # Build without adding shared libs to Requires.private
-    ibv_cflags = run_command(pkgconf, '--cflags', 'libibverbs').stdout()
+    ibv_cflags = run_command(pkgconf, '--cflags', 'libibverbs', check: true).stdout()
     ext_deps += declare_dependency(compile_args: ibv_cflags.split())
 endif
 if static_ibverbs
index 980f76b11cbbd0901bc457401df1104c2a13ee9e..edbbaa9ae1f4c3b003ee3768554bddbe00d4624b 100644 (file)
@@ -8,8 +8,8 @@ sources += files(
         'mlx5_common_os.c',
 )
 
-res_lib = run_command(python3, '-c', 'import os; print(os.environ["DEVX_LIB_PATH"])')
-res_inc = run_command(python3, '-c', 'import os; print(os.environ["DEVX_INC_PATH"])')
+res_lib = run_command(python3, '-c', 'import os; print(os.environ["DEVX_LIB_PATH"])', check: false)
+res_inc = run_command(python3, '-c', 'import os; print(os.environ["DEVX_INC_PATH"])', check: false)
 
 if (res_lib.returncode() != 0 or res_inc.returncode() != 0)
     build = false
index 99a30eab8f6f9807393346ee19bb5a6124183fad..a038c1ec1b8badd55afc97ba064e83702ff87572 100644 (file)
@@ -42,7 +42,7 @@ foreach libname:libnames
 endforeach
 if static_ibverbs or dlopen_ibverbs
     # Build without adding shared libs to Requires.private
-    ibv_cflags = run_command(pkgconf, '--cflags', 'libibverbs').stdout()
+    ibv_cflags = run_command(pkgconf, '--cflags', 'libibverbs', check:true).stdout()
     ext_deps += declare_dependency(compile_args: ibv_cflags.split())
 endif
 if static_ibverbs
index c683fc7b36b2e6900bcfb898a744358ec986670e..dae8c37b3737fb01866a3deffbc2f63bcc39b75f 100644 (file)
@@ -5,7 +5,7 @@
 # Ref: https://jira.devtools.intel.com/browse/DPDK-29263
 kmod_cflags = ''
 file_path = kernel_source_dir + '/include/linux/netdevice.h'
-run_cmd = run_command('grep', 'ndo_tx_timeout', file_path)
+run_cmd = run_command('grep', 'ndo_tx_timeout', file_path, check: false)
 
 if run_cmd.stdout().contains('txqueue') == true
    kmod_cflags = '-DHAVE_ARG_TX_QUEUE'
index 0637452e955ceb6556508712d54b59a911731ecb..d8fb20c1c3956a205f74b6629153e497ee7d97cd 100644 (file)
@@ -11,7 +11,7 @@ cross_args = []
 
 if not meson.is_cross_build()
     # native build
-    kernel_version = run_command('uname', '-r').stdout().strip()
+    kernel_version = run_command('uname', '-r', check: true).stdout().strip()
     kernel_install_dir = '/lib/modules/' + kernel_version + '/extra/dpdk'
     if kernel_build_dir == ''
         # use default path for native builds
@@ -24,14 +24,14 @@ if not meson.is_cross_build()
 
     # test running make in kernel directory, using "make kernelversion"
     make_returncode = run_command('make', '-sC', kernel_build_dir,
-            'kernelversion').returncode()
+            'kernelversion', check: true).returncode()
     if make_returncode != 0
         # backward compatibility:
         # the headers could still be in the 'build' subdir
         if not kernel_build_dir.endswith('build') and not kernel_build_dir.endswith('build/')
             kernel_build_dir = join_paths(kernel_build_dir, 'build')
             make_returncode = run_command('make', '-sC', kernel_build_dir,
-                    'kernelversion').returncode()
+                    'kernelversion', check: true).returncode()
         endif
     endif
 
@@ -54,7 +54,8 @@ if kernel_build_dir == ''
 endif
 cross_compiler = find_program('c').path()
 if cross_compiler.endswith('gcc')
-    cross_prefix = run_command([py3, '-c', 'print("' + cross_compiler + '"[:-3])']).stdout().strip()
+    cross_prefix = run_command([py3, '-c', 'print("' + cross_compiler + '"[:-3])'],
+            check: true).stdout().strip()
 elif cross_compiler.endswith('clang')
     cross_prefix = ''
     found_target = false
index 12cb6e0e83f3bc92e285980d2ca060805474a566..1223b79d74170f0d4338dee625504f1c30bf2a70 100644 (file)
@@ -5,7 +5,7 @@ project('DPDK', 'C',
         # Get version number from file.
         # Fallback to "more" for Windows compatibility.
         version: run_command(find_program('cat', 'more'),
-            files('VERSION')).stdout().strip(),
+            files('VERSION'), check: true).stdout().strip(),
         license: 'BSD',
         default_options: ['buildtype=release', 'default_library=static'],
         meson_version: '>= 0.49.2'