Add driver/common folder and skeleton makefile for adding commonly used
functions across mempool, event and net devices.

Signed-off-by: Pavan Nikhilesh <pbhagavat...@caviumnetworks.com>
---
 v4 Changes:
 - modified dependency order i.e common before bus.
 - updated MAINTAINERS file.
 - moved linking common lib in rte.app.mk above bus.

 v3 Changes:
 - Fix common lib naming scheme.

 v2 Changes:
 - Removed dependency on bus.

 Based on discussion on ml
 http://dpdk.org/ml/archives/dev/2018-March/092822.html
 http://dpdk.org/ml/archives/dev/2018-March/093271.html

 drivers/Makefile           | 13 +++++++------
 drivers/common/Makefile    |  7 +++++++
 drivers/common/meson.build |  6 ++++++
 drivers/meson.build        | 11 ++++++-----
 4 files changed, 26 insertions(+), 11 deletions(-)
 create mode 100644 drivers/common/Makefile
 create mode 100644 drivers/common/meson.build

diff --git a/drivers/Makefile b/drivers/Makefile
index a1fa8b917..3d9f86b00 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -3,18 +3,19 @@

 include $(RTE_SDK)/mk/rte.vars.mk

+DIRS-y += common
 DIRS-y += bus
 DIRS-y += mempool
-DEPDIRS-mempool := bus
+DEPDIRS-mempool := common bus
 DIRS-y += net
-DEPDIRS-net := bus mempool
+DEPDIRS-net := common bus mempool
 DIRS-$(CONFIG_RTE_LIBRTE_BBDEV) += baseband
-DEPDIRS-baseband := bus mempool
+DEPDIRS-baseband := common bus mempool
 DIRS-$(CONFIG_RTE_LIBRTE_CRYPTODEV) += crypto
-DEPDIRS-crypto := bus mempool
+DEPDIRS-crypto := common bus mempool
 DIRS-$(CONFIG_RTE_LIBRTE_EVENTDEV) += event
-DEPDIRS-event := bus mempool net
+DEPDIRS-event := common bus mempool net
 DIRS-$(CONFIG_RTE_LIBRTE_RAWDEV) += raw
-DEPDIRS-raw := bus mempool net event
+DEPDIRS-raw := common bus mempool net event

 include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/drivers/common/Makefile b/drivers/common/Makefile
new file mode 100644
index 000000000..192066307
--- /dev/null
+++ b/drivers/common/Makefile
@@ -0,0 +1,7 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Cavium, Inc
+#
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/drivers/common/meson.build b/drivers/common/meson.build
new file mode 100644
index 000000000..ab774b8ef
--- /dev/null
+++ b/drivers/common/meson.build
@@ -0,0 +1,6 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Cavium, Inc
+
+std_deps = ['eal']
+config_flag_fmt = 'RTE_LIBRTE_@0@_COMMON'
+driver_name_fmt = 'rte_common_@0@'
diff --git a/drivers/meson.build b/drivers/meson.build
index b41a0f18e..b146f09c5 100644
--- a/drivers/meson.build
+++ b/drivers/meson.build
@@ -2,11 +2,12 @@
 # Copyright(c) 2017 Intel Corporation

 # Defines the order in which the drivers are buit.
-driver_classes = ['bus',
-              'mempool', # depends on bus.
-              'net',     # depends on bus and mempool.
-              'crypto',  # depenss on bus, mempool (net in future).
-              'event']   # depends on bus, mempool and net.
+driver_classes = ['common',
+              'bus',
+              'mempool', # depends on common and bus.
+              'net',     # depends on common, bus and mempool.
+              'crypto',  # depends on common, bus and mempool (net in future).
+              'event']   # depends on common, bus, mempool and net.

 foreach class:driver_classes
        drivers = []
--
2.16.2

Reply via email to