net/octeontx: meson build fix if octeontx drivers are disabled

Message ID 1581925230-14866-1-git-send-email-agupta3@marvell.com (mailing list archive)
State Superseded, archived
Headers
Series net/octeontx: meson build fix if octeontx drivers are disabled |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/travis-robot warning Travis build: failed
ci/Intel-compilation success Compilation OK

Commit Message

Amit Gupta Feb. 17, 2020, 7:40 a.m. UTC
  From: Amit Gupta <agupta3@marvell.com>

Add a condition to check if octeontx drivers are disabled.
octeontx drivers are built only if dependent drivers i.e.
ethdev, mempool and common/octeontx are enabled.

BugZilla ID # BUG 387

Change-Id: Idf9578fc04345e690ac48b4836faff2e25170331
Signed-off-by: Amit Gupta <agupta3@marvell.com>
---
 drivers/net/octeontx/base/meson.build | 32 ++++++++++++++++++++++++--------
 1 file changed, 24 insertions(+), 8 deletions(-)
  

Comments

Harman Kalra April 6, 2020, 9:56 a.m. UTC | #1
On Mon, Feb 17, 2020 at 01:10:29PM +0530, agupta3@marvell.com wrote:
> From: Amit Gupta <agupta3@marvell.com>
> 
> Add a condition to check if octeontx drivers are disabled.
> octeontx drivers are built only if dependent drivers i.e.
> ethdev, mempool and common/octeontx are enabled.
> 
> BugZilla ID # BUG 387
> 
> Change-Id: Idf9578fc04345e690ac48b4836faff2e25170331
> Signed-off-by: Amit Gupta <agupta3@marvell.com>

Acked-by: Harman Kalra <hkalra@marvell.com>

> ---
>  drivers/net/octeontx/base/meson.build | 32 ++++++++++++++++++++++++--------
>  1 file changed, 24 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/net/octeontx/base/meson.build b/drivers/net/octeontx/base/meson.build
> index a06a2c8..50e7972 100644
> --- a/drivers/net/octeontx/base/meson.build
> +++ b/drivers/net/octeontx/base/meson.build
> @@ -9,17 +9,33 @@ sources = [
>  
>  depends = ['ethdev', 'mempool_octeontx']
>  static_objs = []
> -foreach d: depends
> -	static_objs += [get_variable('static_rte_' + d)]
> +
> +disabled_drivers = get_option('disable_drivers').split(',')
> +
> +build = true
> +foreach disable_path: disabled_drivers
> +        if (('net/octeontx' == disable_path) or
> +	   ('event/octeontx' == disable_path) or
> +	   ('common/octeontx' == disable_path) or
> +	   ('mempool/octeontx' == disable_path))
> +                build = false
> +        endif
>  endforeach
>  
>  c_args = cflags
>  if allow_experimental_apis
> -	c_args += '-DALLOW_EXPERIMENTAL_API'
> +        c_args += '-DALLOW_EXPERIMENTAL_API'
>  endif
> -base_lib = static_library('octeontx_base', sources,
> -	c_args: c_args,
> -	dependencies: static_objs,
> -)
>  
> -base_objs = base_lib.extract_all_objects()
> +if build
> +        foreach d: depends
> +                static_objs += [get_variable('static_rte_' + d)]
> +        endforeach
> +
> +        base_lib = static_library('octeontx_base', sources,
> +                c_args: c_args,
> +                dependencies: static_objs,
> +        )
> +
> +        base_objs = base_lib.extract_all_objects()
> +endif
> -- 
> 1.8.3.1
>
  

Patch

diff --git a/drivers/net/octeontx/base/meson.build b/drivers/net/octeontx/base/meson.build
index a06a2c8..50e7972 100644
--- a/drivers/net/octeontx/base/meson.build
+++ b/drivers/net/octeontx/base/meson.build
@@ -9,17 +9,33 @@  sources = [
 
 depends = ['ethdev', 'mempool_octeontx']
 static_objs = []
-foreach d: depends
-	static_objs += [get_variable('static_rte_' + d)]
+
+disabled_drivers = get_option('disable_drivers').split(',')
+
+build = true
+foreach disable_path: disabled_drivers
+        if (('net/octeontx' == disable_path) or
+	   ('event/octeontx' == disable_path) or
+	   ('common/octeontx' == disable_path) or
+	   ('mempool/octeontx' == disable_path))
+                build = false
+        endif
 endforeach
 
 c_args = cflags
 if allow_experimental_apis
-	c_args += '-DALLOW_EXPERIMENTAL_API'
+        c_args += '-DALLOW_EXPERIMENTAL_API'
 endif
-base_lib = static_library('octeontx_base', sources,
-	c_args: c_args,
-	dependencies: static_objs,
-)
 
-base_objs = base_lib.extract_all_objects()
+if build
+        foreach d: depends
+                static_objs += [get_variable('static_rte_' + d)]
+        endforeach
+
+        base_lib = static_library('octeontx_base', sources,
+                c_args: c_args,
+                dependencies: static_objs,
+        )
+
+        base_objs = base_lib.extract_all_objects()
+endif