Add in a crypto driver class, and implement compiling the null crypto instance.
Signed-off-by: Bruce Richardson <bruce.richard...@intel.com> --- drivers/crypto/meson.build | 35 +++++++++++++++++++++++++++++++++++ drivers/crypto/null/meson.build | 33 +++++++++++++++++++++++++++++++++ drivers/meson.build | 13 +++++++------ 3 files changed, 75 insertions(+), 6 deletions(-) create mode 100644 drivers/crypto/meson.build create mode 100644 drivers/crypto/null/meson.build diff --git a/drivers/crypto/meson.build b/drivers/crypto/meson.build new file mode 100644 index 000000000..c84a9d522 --- /dev/null +++ b/drivers/crypto/meson.build @@ -0,0 +1,35 @@ +# BSD LICENSE +# +# Copyright(c) 2017 Intel Corporation. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Intel Corporation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +drivers = ['null'] +std_deps = ['cryptodev'] # cryptodev pulls in all other needed deps +config_flag_fmt = 'RTE_LIBRTE_@0@_PMD' +driver_name_fmt = 'rte_pmd_@0@' diff --git a/drivers/crypto/null/meson.build b/drivers/crypto/null/meson.build new file mode 100644 index 000000000..ea08f783c --- /dev/null +++ b/drivers/crypto/null/meson.build @@ -0,0 +1,33 @@ +# BSD LICENSE +# +# Copyright(c) 2017 Intel Corporation. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Intel Corporation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +name = 'null_crypto' +sources = files('null_crypto_pmd.c', 'null_crypto_pmd_ops.c') diff --git a/drivers/meson.build b/drivers/meson.build index d8f11aa68..be87918b2 100644 --- a/drivers/meson.build +++ b/drivers/meson.build @@ -29,7 +29,7 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -driver_classes = ['mempool'] +driver_classes = ['crypto', 'mempool'] foreach class:driver_classes drivers = [] @@ -46,6 +46,7 @@ foreach class:driver_classes # set up empty variables used for build build = true # set to false to disable, e.g. missing deps + name = drv version = 1 sources = [] objs = [] @@ -65,7 +66,7 @@ foreach class:driver_classes subdir(drv_path) if build - dpdk_conf.set(config_flag_fmt.format(drv.to_upper()),1) + dpdk_conf.set(config_flag_fmt.format(name.to_upper()),1) # get dependency objs from strings dep_objs = [] @@ -92,11 +93,11 @@ foreach class:driver_classes endforeach # now build the driver itself, and add to the drivers list - drv_name = driver_name_fmt.format(drv) + lib_name = driver_name_fmt.format(name) version_map = '@0@/@1@/@2@_version.map'.format( meson.current_source_dir(), - drv_path, drv_name) - lib = library(drv_name, + drv_path, lib_name) + lib = library(lib_name, sources, objects: objs, include_directories: includes, @@ -112,7 +113,7 @@ foreach class:driver_classes # create a dependency object and add it to the global dictionary so # testpmd or other built-in apps can find it if necessary - set_variable('dep_@0@'.format(drv_name), + set_variable('dep_@0@'.format(lib_name), declare_dependency(link_with: lib, include_directories: includes, dependencies: dep_objs)) -- 2.13.5