[1/4] driver/crypto: enable meson support for the aesni gcm

Message ID 1538222461-25597-2-git-send-email-hari.kumarx.vemula@intel.com (mailing list archive)
State Superseded, archived
Delegated to: akhil goyal
Headers
Series enable meson support for aesni_gcm, aesni_mb, kasumi and zuc |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Hari Kumar Vemula Sept. 29, 2018, noon UTC
  Added new meson.build files for aesni_gcm
Exported dependency library path through meson_options.txt file

Signed-off-by: Hari Kumar Vemula <hari.kumarx.vemula@intel.com>
---
 drivers/crypto/aesni_gcm/meson.build | 17 +++++++++++++++++
 drivers/crypto/meson.build           |  2 +-
 meson_options.txt                    |  2 ++
 3 files changed, 20 insertions(+), 1 deletion(-)
 create mode 100644 drivers/crypto/aesni_gcm/meson.build
  

Comments

Bruce Richardson Oct. 1, 2018, 9:31 a.m. UTC | #1
On Sat, Sep 29, 2018 at 01:00:58PM +0100, Hari Kumar Vemula wrote:
> Added new meson.build files for aesni_gcm
> Exported dependency library path through meson_options.txt file
> 
> Signed-off-by: Hari Kumar Vemula <hari.kumarx.vemula@intel.com>
> ---
>  drivers/crypto/aesni_gcm/meson.build | 17 +++++++++++++++++
>  drivers/crypto/meson.build           |  2 +-
>  meson_options.txt                    |  2 ++
>  3 files changed, 20 insertions(+), 1 deletion(-)
>  create mode 100644 drivers/crypto/aesni_gcm/meson.build
> 
> diff --git a/drivers/crypto/aesni_gcm/meson.build b/drivers/crypto/aesni_gcm/meson.build
> new file mode 100644
> index 000000000..a84c792c5
> --- /dev/null
> +++ b/drivers/crypto/aesni_gcm/meson.build
> @@ -0,0 +1,17 @@
> +# SPDX-License-Identifier: BSD-3-Clause
> +# Copyright(c) 2018 Intel Corporation
> +
> +path = get_option('lib_IPSec_MB')
> +lib_dir = path + '/lib'
> +

lib_dir doesn't seem to be used after being assigned, whcih means that
having the build option is unnecessary.

> +lib = cc.find_library('IPSec_MB', required: false)
> +if not lib.found()
> +	build = false
> +else
> +	ext_deps += lib
> +endif
> +
> +sources = files('aesni_gcm_pmd.c', 'aesni_gcm_pmd_ops.c')
> +
> +deps += ['bus_vdev']
> +

You don't seem to require any header file paths from the IPSec_MD library,
so even if you need the path for the lib, you can used LD_LIBRARY_PATH
environment variable to point to it rather than needing a build-time
option. I'd like to avoid adding unnecessary options, if possible.

> diff --git a/drivers/crypto/meson.build b/drivers/crypto/meson.build
> index 6ed853b7a..7e14cbba0 100644
> --- a/drivers/crypto/meson.build
> +++ b/drivers/crypto/meson.build
> @@ -1,7 +1,7 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2017 Intel Corporation
>  
> -drivers = ['ccp', 'dpaa_sec', 'dpaa2_sec', 'mvsam',
> +drivers = ['aesni_gcm', 'ccp', 'dpaa_sec', 'dpaa2_sec', 'mvsam',
>  	'null', 'openssl', 'qat', 'scheduler', 'virtio']
>  
>  std_deps = ['cryptodev'] # cryptodev pulls in all other needed deps
> diff --git a/meson_options.txt b/meson_options.txt
> index d38ba56e2..8c75826c1 100644
> --- a/meson_options.txt
> +++ b/meson_options.txt
> @@ -24,3 +24,5 @@ option('use_hpet', type: 'boolean', value: false,
>  	description: 'use HPET timer in EAL')
>  option('tests', type: 'boolean', value: true,
>  	description: 'build unit tests')
> +option('lib_IPSec_MB', type: 'string', value: '',
> +	description: 'path to the IPSec_MB library installation directory')
> -- 
> 2.13.6
>
  

Patch

diff --git a/drivers/crypto/aesni_gcm/meson.build b/drivers/crypto/aesni_gcm/meson.build
new file mode 100644
index 000000000..a84c792c5
--- /dev/null
+++ b/drivers/crypto/aesni_gcm/meson.build
@@ -0,0 +1,17 @@ 
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Intel Corporation
+
+path = get_option('lib_IPSec_MB')
+lib_dir = path + '/lib'
+
+lib = cc.find_library('IPSec_MB', required: false)
+if not lib.found()
+	build = false
+else
+	ext_deps += lib
+endif
+
+sources = files('aesni_gcm_pmd.c', 'aesni_gcm_pmd_ops.c')
+
+deps += ['bus_vdev']
+
diff --git a/drivers/crypto/meson.build b/drivers/crypto/meson.build
index 6ed853b7a..7e14cbba0 100644
--- a/drivers/crypto/meson.build
+++ b/drivers/crypto/meson.build
@@ -1,7 +1,7 @@ 
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2017 Intel Corporation
 
-drivers = ['ccp', 'dpaa_sec', 'dpaa2_sec', 'mvsam',
+drivers = ['aesni_gcm', 'ccp', 'dpaa_sec', 'dpaa2_sec', 'mvsam',
 	'null', 'openssl', 'qat', 'scheduler', 'virtio']
 
 std_deps = ['cryptodev'] # cryptodev pulls in all other needed deps
diff --git a/meson_options.txt b/meson_options.txt
index d38ba56e2..8c75826c1 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -24,3 +24,5 @@  option('use_hpet', type: 'boolean', value: false,
 	description: 'use HPET timer in EAL')
 option('tests', type: 'boolean', value: true,
 	description: 'build unit tests')
+option('lib_IPSec_MB', type: 'string', value: '',
+	description: 'path to the IPSec_MB library installation directory')