[dpdk-dev] [PATCH v8 5/5] bus/vmbus and net/netvsc: add meson build support

Stephen Hemminger stephen at networkplumber.org
Tue May 15 23:19:34 CEST 2018


From: Stephen Hemminger <sthemmin at microsoft.com>

Update meson build files for new netvsc and vmbus drivers.

Signed-off-by: Stephen Hemminger <sthemmin at microsoft.com>
---
 config/meson.build             |  7 +++++++
 drivers/bus/meson.build        |  2 +-
 drivers/bus/vmbus/meson.build  | 16 ++++++++++++++++
 drivers/net/meson.build        |  2 +-
 drivers/net/netvsc/meson.build | 13 +++++++++++++
 5 files changed, 38 insertions(+), 2 deletions(-)
 create mode 100644 drivers/bus/vmbus/meson.build
 create mode 100644 drivers/net/netvsc/meson.build

diff --git a/config/meson.build b/config/meson.build
index 2179c689c14d..34759d505881 100644
--- a/config/meson.build
+++ b/config/meson.build
@@ -50,6 +50,13 @@ if host_machine.system() == 'linux' and cc.find_library('bsd',
 	dpdk_extra_ldflags += '-lbsd'
 endif
 
+# vmbus depends on lib uuid
+uuid_dep = cc.find_library('uuid', required: false)
+if uuid_dep.found() and cc.has_header('uuid/uuid.h')
+	add_project_link_arguments('-luuid', language: 'c')
+	dpdk_extra_ldflags += '-luuid'
+endif
+
 # add -include rte_config to cflags
 add_project_arguments('-include', 'rte_config.h', language: 'c')
 
diff --git a/drivers/bus/meson.build b/drivers/bus/meson.build
index 52c755dcfd8e..80de2d91d52d 100644
--- a/drivers/bus/meson.build
+++ b/drivers/bus/meson.build
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2017 Intel Corporation
 
-drivers = ['dpaa', 'fslmc', 'ifpga', 'pci', 'vdev']
+drivers = ['dpaa', 'fslmc', 'ifpga', 'pci', 'vdev', 'vmbus']
 std_deps = ['eal']
 config_flag_fmt = 'RTE_LIBRTE_ at 0@_BUS'
 driver_name_fmt = 'rte_bus_ at 0@'
diff --git a/drivers/bus/vmbus/meson.build b/drivers/bus/vmbus/meson.build
new file mode 100644
index 000000000000..8a17be828a32
--- /dev/null
+++ b/drivers/bus/vmbus/meson.build
@@ -0,0 +1,16 @@
+# SPDX-License-Identifier: BSD-3-Clause
+
+install_headers('rte_bus_vmbus.h','rte_vmbus_reg.h')
+
+sources = files('vmbus_common.c',
+		'vmbus_channel.c',
+		'vmbus_bufring.c',
+		'vmbus_common_uio.c')
+
+if host_machine.system() == 'linux'
+	sources += files('linux/vmbus_bus.c',
+			'linux/vmbus_uio.c')
+	includes += include_directories('linux')
+else
+	build = false
+endif
diff --git a/drivers/net/meson.build b/drivers/net/meson.build
index b7d00a04c8ef..74d6c0f7cabf 100644
--- a/drivers/net/meson.build
+++ b/drivers/net/meson.build
@@ -3,7 +3,7 @@
 
 drivers = ['af_packet', 'axgbe', 'bonding', 'dpaa', 'dpaa2',
 	'e1000', 'enic', 'fm10k', 'i40e', 'ixgbe',
-	'mvpp2', 'null', 'octeontx', 'pcap', 'ring',
+	'mvpp2', 'netvsc', 'null', 'octeontx', 'pcap', 'ring',
 	'sfc', 'thunderx', 'virtio']
 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
diff --git a/drivers/net/netvsc/meson.build b/drivers/net/netvsc/meson.build
new file mode 100644
index 000000000000..44926b20e973
--- /dev/null
+++ b/drivers/net/netvsc/meson.build
@@ -0,0 +1,13 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Microsoft Corporation
+
+version = 2
+
+allow_experimental_apis = true
+
+sources = files('hn_ethdev.c',
+		'hn_rxtx.c',
+		'hn_rndis.c',
+		'hn_nvs.c')
+
+deps += ['bus_vmbus' ]
-- 
2.17.0



More information about the dev mailing list