[v4,9/9] build: add Meson file for vmxnet3_uio PMD

Message ID 20180913161607.21919-9-bluca@debian.org (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series [v4,1/9] build: add Meson file for TAP PMD |

Checks

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

Commit Message

Luca Boccassi Sept. 13, 2018, 4:16 p.m. UTC
  Signed-off-by: Luca Boccassi <bluca@debian.org>
---
 drivers/net/meson.build         |  4 +++-
 drivers/net/vmxnet3/meson.build | 18 ++++++++++++++++++
 2 files changed, 21 insertions(+), 1 deletion(-)
 create mode 100644 drivers/net/vmxnet3/meson.build
  

Comments

Luca Boccassi Sept. 18, 2018, 3 p.m. UTC | #1
On Thu, 2018-09-13 at 17:16 +0100, Luca Boccassi wrote:
> Signed-off-by: Luca Boccassi <bluca@debian.org>
> ---
>  drivers/net/meson.build         |  4 +++-
>  drivers/net/vmxnet3/meson.build | 18 ++++++++++++++++++
>  2 files changed, 21 insertions(+), 1 deletion(-)
>  create mode 100644 drivers/net/vmxnet3/meson.build
> 
> diff --git a/drivers/net/meson.build b/drivers/net/meson.build
> index 74f4109161..5906283c2f 100644

On request I've sent a v5 adding a note in the commit message that the
filename of the library will be different from the one generated by the
makefiles, as it doesn't have the _uio suffix, following the suggestion
to avoid renames.

The following PMDs already have meson files which build a library file
with a different name from the makefiles:

net/liquidio
net/thurnderx
net/sfc
event/octeontx
compress/octeontx
  
Bruce Richardson Sept. 18, 2018, 3:20 p.m. UTC | #2
On Tue, Sep 18, 2018 at 04:00:12PM +0100, Luca Boccassi wrote:
> On Thu, 2018-09-13 at 17:16 +0100, Luca Boccassi wrote:
> > Signed-off-by: Luca Boccassi <bluca@debian.org>
> > ---
> >  drivers/net/meson.build         |  4 +++-
> >  drivers/net/vmxnet3/meson.build | 18 ++++++++++++++++++
> >  2 files changed, 21 insertions(+), 1 deletion(-)
> >  create mode 100644 drivers/net/vmxnet3/meson.build
> > 
> > diff --git a/drivers/net/meson.build b/drivers/net/meson.build
> > index 74f4109161..5906283c2f 100644
> 
> On request I've sent a v5 adding a note in the commit message that the
> filename of the library will be different from the one generated by the
> makefiles, as it doesn't have the _uio suffix, following the suggestion
> to avoid renames.
> 
> The following PMDs already have meson files which build a library file
> with a different name from the makefiles:
> 
> net/liquidio
> net/thurnderx
> net/sfc
> event/octeontx
> compress/octeontx
> 
We should really start pointing people to use the pkg-config files to pull
in libraries, and with a properly installed DPDK using "ninja install", all
.so drivers should be automatically found on the PMD_PATH. Therefore, the
number of cases where built-in DPDK drivers are being explicitly loaded
individually using "-d <drivername>" should be very, very few.

Regards,
/Bruce
  

Patch

diff --git a/drivers/net/meson.build b/drivers/net/meson.build
index 74f4109161..5906283c2f 100644
--- a/drivers/net/meson.build
+++ b/drivers/net/meson.build
@@ -32,7 +32,9 @@  drivers = ['af_packet',
 	'thunderx',
 	'vdev_netvsc',
 	'vhost',
-	'virtio']
+	'virtio',
+	'vmxnet3',
+]
 std_deps = ['ethdev', 'kvargs'] # 'ethdev' also pulls in mbuf, net, eal etc
 std_deps += ['bus_pci']         # very many PMDs depend on PCI, so make std
 std_deps += ['bus_vdev']        # same with vdev bus
diff --git a/drivers/net/vmxnet3/meson.build b/drivers/net/vmxnet3/meson.build
new file mode 100644
index 0000000000..a92bd28680
--- /dev/null
+++ b/drivers/net/vmxnet3/meson.build
@@ -0,0 +1,18 @@ 
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
+
+allow_experimental_apis = true
+sources += files(
+	'vmxnet3_ethdev.c',
+	'vmxnet3_rxtx.c',
+)
+
+error_cflags = [
+		'-Wno-unused-parameter', '-Wno-unused-value',
+                '-Wno-strict-aliasing', '-Wno-format-extra-args',
+]
+foreach flag: error_cflags
+        if cc.has_argument(flag)
+                cflags += flag
+        endif
+endforeach