summaryrefslogtreecommitdiff
path: root/lib/librte_fib/Makefile
diff options
context:
space:
mode:
authorVladimir Medvedkin <vladimir.medvedkin@intel.com>2019-11-01 15:21:38 +0000
committerThomas Monjalon <thomas@monjalon.net>2019-11-06 00:11:44 +0100
commit39e927248416c1245b28dcf3cc2b3f66eaf95c6f (patch)
tree1e779f951ef7d00bd9aad0be57acf1da89ae0dda /lib/librte_fib/Makefile
parentabab6d2966dc9fdbce54edb753a88def3e80184a (diff)
downloaddpdk-39e927248416c1245b28dcf3cc2b3f66eaf95c6f.zip
dpdk-39e927248416c1245b28dcf3cc2b3f66eaf95c6f.tar.gz
dpdk-39e927248416c1245b28dcf3cc2b3f66eaf95c6f.tar.xz
fib: add FIB library
Add FIB (Forwarding Information Base) library. This library implements a dataplane structures and algorithms designed for fast longest prefix match. Internally it consists of two parts - RIB (control plane ops) and implementation for the dataplane tasks. Initial version provides two implementations for both IPv4 and IPv6: dummy (uses RIB as a dataplane) and DIR24_8 (same as current LPM) Due to proposed design it allows to extend FIB with new algorithms in future (for example DXR, poptrie, etc). Signed-off-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Diffstat (limited to 'lib/librte_fib/Makefile')
-rw-r--r--lib/librte_fib/Makefile25
1 files changed, 25 insertions, 0 deletions
diff --git a/lib/librte_fib/Makefile b/lib/librte_fib/Makefile
new file mode 100644
index 0000000..7362f68
--- /dev/null
+++ b/lib/librte_fib/Makefile
@@ -0,0 +1,25 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2018 Vladimir Medvedkin <medvedkinv@gmail.com>
+# Copyright(c) 2019 Intel Corporation
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+# library name
+LIB = librte_fib.a
+
+CFLAGS += -O3
+CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR)
+CFLAGS += -DALLOW_EXPERIMENTAL_API
+LDLIBS += -lrte_eal -lrte_rib
+
+EXPORT_MAP := rte_fib_version.map
+
+LIBABIVER := 1
+
+# all source are stored in SRCS-y
+SRCS-$(CONFIG_RTE_LIBRTE_FIB) := rte_fib.c
+
+# install this header file
+SYMLINK-$(CONFIG_RTE_LIBRTE_FIB)-include := rte_fib.h
+
+include $(RTE_SDK)/mk/rte.lib.mk