fpm: Add protobuf support for FPM.
Code that allows a client to convey routes to a Forwarding Plane
Manager component using protobuf instead of netlink..
* fpm/fpm.proto
Protobuf definitions pertaining to the Forwarding Plane Manager.
In particular, this file defines the AddRoute and DeleteRoute
messages.
* fpm/fpm.h
Tweak FPM message header definition to also allow messages to be
encoded in protobuf format.
* fpm/{fpm_pb.h,.gitignore,.Makefile.am}
Add the fpm_pb library, which contains code for interfacing with
the FPM using protobuf.
* configure.ac
Generate fpm/Makefile.
* Makefile.am
Add fpm subdirectory to build.
* common.am
Add flags to be used by clients of the fpm_pb library.
Signed-off-by: Avneesh Sachdev <avneesh@sproute.com>
diff --git a/fpm/Makefile.am b/fpm/Makefile.am
new file mode 100644
index 0000000..83ab31c
--- /dev/null
+++ b/fpm/Makefile.am
@@ -0,0 +1,29 @@
+include ../common.am
+
+AM_CPPFLAGS = -I.. -I$(top_srcdir) -I$(top_srcdir)/lib -I$(top_builddir)/lib $(Q_PROTOBUF_C_CLIENT_INCLUDES)
+
+PROTOBUF_INCLUDES=-I$(top_srcdir)
+PROTOBUF_PACKAGE = fpm
+
+lib_LTLIBRARIES = libfpm_pb.la
+libfpm_pb_la_LDFLAGS = -version-info 0:0:0
+
+if HAVE_PROTOBUF
+protobuf_srcs =
+
+protobuf_srcs_nodist = \
+ fpm.pb-c.c
+endif
+
+libfpm_pb_la_SOURCES = \
+ fpm.h \
+ fpm_pb.h \
+ fpm_pb.c \
+ $(protobuf_srcs)
+
+nodist_libfpm_pb_la_SOURCES = $(protobuf_srcs_nodist)
+
+CLEANFILES = $(Q_CLEANFILES)
+
+BUILT_SOURCES = $(Q_PROTOBUF_SRCS)
+EXTRA_DIST = fpm.proto