[1/2] build: fix reasons conflict

Message ID 20240131174552.2601531-1-david.marchand@redhat.com (mailing list archive)
State Accepted, archived
Delegated to: David Marchand
Headers
Series [1/2] build: fix reasons conflict |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

David Marchand Jan. 31, 2024, 5:45 p.m. UTC
  The "_disable_reason" variables are subject to naming conflicts.

This has been caught while looking at mingw builds where the graph
application was skipped with an <unknown_reason> (which is caused by a
missing reason variable set in app/graph/meson.build) and the graph
library was skipped with the same <unknown_reason> too, even though
this library meson does set a proper reason variable.

Example in GHA:

=================
Content Skipped
=================

apps:
	dumpcap:	not supported on Windows
	graph:	<unknown reason>
	pdump:	not supported on Windows
...

libs:
	acl:	not supported on Windows
	bbdev:	not supported on Windows
...
	graph:	<unknown reason>
	node:	not supported on Windows

Prefix all those variables with the type of component.

Fixes: ecf75180171b ("build: list selected applications")
Cc: stable@dpdk.org

Signed-off-by: David Marchand <david.marchand@redhat.com>
---
 app/meson.build                |  2 +-
 drivers/common/qat/meson.build | 10 +++++-----
 drivers/meson.build            |  4 ++--
 lib/meson.build                |  2 +-
 meson.build                    |  6 +++---
 5 files changed, 12 insertions(+), 12 deletions(-)
  

Comments

Bruce Richardson Jan. 31, 2024, 6:02 p.m. UTC | #1
On Wed, Jan 31, 2024 at 06:45:51PM +0100, David Marchand wrote:
> The "_disable_reason" variables are subject to naming conflicts.
> 
> This has been caught while looking at mingw builds where the graph
> application was skipped with an <unknown_reason> (which is caused by a
> missing reason variable set in app/graph/meson.build) and the graph
> library was skipped with the same <unknown_reason> too, even though
> this library meson does set a proper reason variable.
> 
> Example in GHA:
> 
> =================
> Content Skipped
> =================
> 
> apps:
> 	dumpcap:	not supported on Windows
> 	graph:	<unknown reason>
> 	pdump:	not supported on Windows
> ...
> 
> libs:
> 	acl:	not supported on Windows
> 	bbdev:	not supported on Windows
> ...
> 	graph:	<unknown reason>
> 	node:	not supported on Windows
> 
> Prefix all those variables with the type of component.
> 
> Fixes: ecf75180171b ("build: list selected applications")
> Cc: stable@dpdk.org
> 
> Signed-off-by: David Marchand <david.marchand@redhat.com>

Acked-by: Bruce Richardson <bruce.richardson@intel.com>
  
Tyler Retzlaff Jan. 31, 2024, 8:36 p.m. UTC | #2
On Wed, Jan 31, 2024 at 06:02:49PM +0000, Bruce Richardson wrote:
> On Wed, Jan 31, 2024 at 06:45:51PM +0100, David Marchand wrote:
> > The "_disable_reason" variables are subject to naming conflicts.
> > 
> > This has been caught while looking at mingw builds where the graph
> > application was skipped with an <unknown_reason> (which is caused by a
> > missing reason variable set in app/graph/meson.build) and the graph
> > library was skipped with the same <unknown_reason> too, even though
> > this library meson does set a proper reason variable.
> > 
> > Example in GHA:
> > 
> > =================
> > Content Skipped
> > =================
> > 
> > apps:
> > 	dumpcap:	not supported on Windows
> > 	graph:	<unknown reason>
> > 	pdump:	not supported on Windows
> > ...
> > 
> > libs:
> > 	acl:	not supported on Windows
> > 	bbdev:	not supported on Windows
> > ...
> > 	graph:	<unknown reason>
> > 	node:	not supported on Windows
> > 
> > Prefix all those variables with the type of component.
> > 
> > Fixes: ecf75180171b ("build: list selected applications")
> > Cc: stable@dpdk.org
> > 
> > Signed-off-by: David Marchand <david.marchand@redhat.com>
> 
> Acked-by: Bruce Richardson <bruce.richardson@intel.com>

Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
  

Patch

diff --git a/app/meson.build b/app/meson.build
index 8aaed59f39..21b6da29b3 100644
--- a/app/meson.build
+++ b/app/meson.build
@@ -93,7 +93,7 @@  foreach app:apps
     if not build
         if reason != ''
             dpdk_apps_disabled += app
-            set_variable(app.underscorify() + '_disable_reason', reason)
+            set_variable('app_' + app.underscorify() + '_disable_reason', reason)
         endif
         continue
     endif
diff --git a/drivers/common/qat/meson.build b/drivers/common/qat/meson.build
index 5c36fbb270..62abcb6fe3 100644
--- a/drivers/common/qat/meson.build
+++ b/drivers/common/qat/meson.build
@@ -17,13 +17,13 @@  qat_compress_relpath = '../../' + qat_compress_path
 if disable_drivers.contains(qat_crypto_path)
     qat_crypto = false
     dpdk_drvs_disabled += qat_crypto_path
-    set_variable(qat_crypto_path.underscorify() + '_disable_reason',
+    set_variable('drv_' + qat_crypto_path.underscorify() + '_disable_reason',
             'Explicitly disabled via build config')
 endif
 if disable_drivers.contains(qat_compress_path)
     qat_compress = false
     dpdk_drvs_disabled += qat_compress_path
-    set_variable(qat_compress_path.underscorify() + '_disable_reason',
+    set_variable('drv_' + qat_compress_path.underscorify() + '_disable_reason',
             'Explicitly disabled via build config')
 endif
 
@@ -36,7 +36,7 @@  if arch_subdir == 'arm'
     else
         qat_crypto = false
         dpdk_drvs_disabled += qat_crypto_path
-        set_variable(qat_crypto_path.underscorify() + '_disable_reason',
+        set_variable('drv_' + qat_crypto_path.underscorify() + '_disable_reason',
         'missing dependency for Arm, libcrypto')
     endif
 else
@@ -57,7 +57,7 @@  else
         else
             qat_crypto = false
             dpdk_drvs_disabled += qat_crypto_path
-            set_variable(qat_crypto_path.underscorify() + '_disable_reason',
+            set_variable('drv_' + qat_crypto_path.underscorify() + '_disable_reason',
                 'missing dependency, libipsecmb or libcrypto')
         endif
     elif libcrypto.found()
@@ -66,7 +66,7 @@  else
     else
         qat_crypto = false
         dpdk_drvs_disabled += qat_crypto_path
-        set_variable(qat_crypto_path.underscorify() + '_disable_reason',
+        set_variable('drv_' + qat_crypto_path.underscorify() + '_disable_reason',
             'missing dependency, libipsecmb or libcrypto')
     endif
 endif
diff --git a/drivers/meson.build b/drivers/meson.build
index 5ba534049a..f2be71bc05 100644
--- a/drivers/meson.build
+++ b/drivers/meson.build
@@ -93,7 +93,7 @@  foreach subpath:subdirs
         if skip_class
             drv_path = join_paths(class, '*')
             dpdk_drvs_disabled += drv_path
-            set_variable(drv_path.underscorify() + '_disable_reason', reason)
+            set_variable('drv_' + drv_path.underscorify() + '_disable_reason', reason)
             continue
         endif
     endif
@@ -199,7 +199,7 @@  foreach subpath:subdirs
             # component disable printout in those cases
             if reason != ''
                 dpdk_drvs_disabled += drv_path
-                set_variable(drv_path.underscorify() + '_disable_reason', reason)
+                set_variable('drv_' + drv_path.underscorify() + '_disable_reason', reason)
             endif
             continue
         endif
diff --git a/lib/meson.build b/lib/meson.build
index 6c143ce5a6..55d483cd26 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -228,7 +228,7 @@  foreach l:libraries
 
     if not build
         dpdk_libs_disabled += name
-        set_variable(name.underscorify() + '_disable_reason', reason)
+        set_variable('lib_' + name.underscorify() + '_disable_reason', reason)
         continue
     endif
 
diff --git a/meson.build b/meson.build
index 5e161f43e5..8b248d4505 100644
--- a/meson.build
+++ b/meson.build
@@ -164,17 +164,17 @@  message(output_message + '\n')
 output_message = '\n=================\nContent Skipped\n=================\n'
 output_message += '\napps:\n\t'
 foreach app:dpdk_apps_disabled
-    reason = get_variable(app.underscorify() + '_disable_reason')
+    reason = get_variable('app_' + app.underscorify() + '_disable_reason')
     output_message += app + ':\t' + reason + '\n\t'
 endforeach
 output_message += '\nlibs:\n\t'
 foreach lib:dpdk_libs_disabled
-    reason = get_variable(lib.underscorify() + '_disable_reason')
+    reason = get_variable('lib_' + lib.underscorify() + '_disable_reason')
     output_message += lib + ':\t' + reason + '\n\t'
 endforeach
 output_message += '\ndrivers:\n\t'
 foreach drv:dpdk_drvs_disabled
-    reason = get_variable(drv.underscorify() + '_disable_reason')
+    reason = get_variable('drv_' + drv.underscorify() + '_disable_reason')
     output_message += drv + ':\t' + reason + '\n\t'
 endforeach
 message(output_message + '\n')