More janitorial work

Install vpp api header files in /usr/include/vpp-api, instead of
/usr/include/api. Someone will eventually complain if we continue with
the status quo.

Generate /usr/bin/vpp_plugin_configure, to correctly configure
standalone plugin compilation against header files installed from the
dev package.

If a plugin's CFLAGS don't precisely match the installed vpp engine
binary, subtle misbehavior can and will occur. Example: the ip4/ip6
main_t structure size / member offsets depend on DPDK=[0|1]. Screw
that one up, and your brand-new configurable ip feature will
mysteriously fail to appear, even though the plugin loads perfectly.

Change-Id: I20c97fe1042808a79935863209d995c31953b98c
Signed-off-by: Dave Barach <dave@barachs.net>
diff --git a/vpp-api/java/Makefile.am b/vpp-api/java/Makefile.am
index cb841ee..c06caf5 100644
--- a/vpp-api/java/Makefile.am
+++ b/vpp-api/java/Makefile.am
@@ -54,7 +54,7 @@
     japi/org/openvpp/vppjapi/vppVxlanTunnelDetails.java 		\
     japi/org/openvpp/vppjapi/vppConn.java 				\
     japi/org/openvpp/vppjapi/vppApiCallbacks.java 			\
-    ../../vpp/api/vpe.api.h
+    ../../vpp/vpp-api/vpe.api.h
 	$(JAVAC) -classpath . -d . @srcdir@/japi/org/openvpp/vppjapi/vppVersion.java ;				\
 	$(JAVAH) -classpath . -d japi org.openvpp.vppjapi.vppVersion ;						\
 	$(JAVAC) -classpath . -d . @srcdir@/japi/org/openvpp/vppjapi/vppInterfaceDetails.java ;			\
@@ -79,8 +79,8 @@
 japi/vppapi.c: japi/org_openvpp_vppjapi_vppConn.h
 	pushd .. ; dir=`pwd` ; popd ;								\
 	instdir=`echo $${dir} | sed -e 's:build-root/build:build-root/install:'` ;		\
-	vppapigen --input $${instdir}/../vpp/api/vpe.api --jni  japi/vppapi.c --app vpe ;	\
-	vppapigen --input $${instdir}/../vpp/api/vpe.api --java japi/vppApi.java --app vpe ;	\
+	vppapigen --input $${instdir}/../vpp/vpp-api/vpe.api --jni  japi/vppapi.c --app vpe ;	\
+	vppapigen --input $${instdir}/../vpp/vpp-api/vpe.api --java japi/vppApi.java --app vpe ;	\
 	$(JAVAC) -classpath . -d . japi/vppApi.java ;						\
 	$(JAVAH) -classpath . -d japi org.openvpp.vppjapi.vppApi ;				\
 	$(JAVAC) -classpath . -d . @srcdir@/japi/org/openvpp/vppjapi/vppApiCallbacks.java ;	\
@@ -112,7 +112,7 @@
 
 BUILT_SOURCES += jvpp/org_openvpp_jvpp_VppJNIConnection.h jvpp/jvpp.c
 
-jvpp/org_openvpp_jvpp_VppJNIConnection.h: $(prefix)/../vpp/api/vpe.api
+jvpp/org_openvpp_jvpp_VppJNIConnection.h: $(prefix)/../vpp/vpp-api/vpe.api
 	@echo "  jVpp API";				\
 	cp -rf @srcdir@/jvpp/* -t jvpp/;			\
 	mkdir -p jvpp/gen/target/org/openvpp/jvpp;				\
diff --git a/vpp-api/java/japi/vppjni.c b/vpp-api/java/japi/vppjni.c
index f1b8eda..2b58b36 100644
--- a/vpp-api/java/japi/vppjni.c
+++ b/vpp-api/java/japi/vppjni.c
@@ -16,7 +16,7 @@
 #include <vnet/vnet.h>
 
 #define vl_api_version(n,v) static u32 vpe_api_version = (v);
-#include <api/vpe.api.h>
+#include <vpp-api/vpe.api.h>
 #undef vl_api_version
 
 #include <jni.h>
@@ -26,19 +26,19 @@
 #include <japi/org_openvpp_vppjapi_vppConn.h>
 #include <japi/org_openvpp_vppjapi_vppApi.h>
 
-#include <api/vpe_msg_enum.h>
+#include <vpp-api/vpe_msg_enum.h>
 #define vl_typedefs             /* define message structures */
-#include <api/vpe_all_api_h.h>
+#include <vpp-api/vpe_all_api_h.h>
 #undef vl_typedefs
 
 #define vl_endianfun
-#include <api/vpe_all_api_h.h>
+#include <vpp-api/vpe_all_api_h.h>
 #undef vl_endianfun
 
 /* instantiate all the print functions we know about */
 #define vl_print(handle, ...)
 #define vl_printfun
-#include <api/vpe_all_api_h.h>
+#include <vpp-api/vpe_all_api_h.h>
 #undef vl_printfun
 
 #ifndef VPPJNI_DEBUG
diff --git a/vpp-api/java/jvpp/jvpp.c b/vpp-api/java/jvpp/jvpp.c
index 00c50f9..37aef80 100644
--- a/vpp-api/java/jvpp/jvpp.c
+++ b/vpp-api/java/jvpp/jvpp.c
@@ -16,7 +16,7 @@
 #include <vnet/vnet.h>
 
 #define vl_api_version(n,v) static u32 vpe_api_version = (v);
-#include <api/vpe.api.h>
+#include <vpp-api/vpe.api.h>
 #undef vl_api_version
 
 #include <jni.h>
@@ -24,19 +24,19 @@
 #include <jvpp/org_openvpp_jvpp_VppJNIConnection.h>
 #include <jvpp/org_openvpp_jvpp_JVppImpl.h>
 
-#include <api/vpe_msg_enum.h>
+#include <vpp-api/vpe_msg_enum.h>
 #define vl_typedefs             /* define message structures */
-#include <api/vpe_all_api_h.h>
+#include <vpp-api/vpe_all_api_h.h>
 #undef vl_typedefs
 
 #define vl_endianfun
-#include <api/vpe_all_api_h.h>
+#include <vpp-api/vpe_all_api_h.h>
 #undef vl_endianfun
 
 /* instantiate all the print functions we know about */
 #define vl_print(handle, ...)
 #define vl_printfun
-#include <api/vpe_all_api_h.h>
+#include <vpp-api/vpe_all_api_h.h>
 #undef vl_printfun
 
 #ifndef VPPJNI_DEBUG
diff --git a/vpp-api/python/Makefile.am b/vpp-api/python/Makefile.am
index b96ff3d..4d2d221 100644
--- a/vpp-api/python/Makefile.am
+++ b/vpp-api/python/Makefile.am
@@ -33,11 +33,11 @@
 
 BUILT_SOURCES += vpp_papi.py
 
-vpp_papi.py: $(prefix)/../vpp/api/vpe.api pneum/api-gen.py
+vpp_papi.py: $(prefix)/../vpp/vpp-api/vpe.api pneum/api-gen.py
 	@echo "  PYTHON API";                                            	  \
 	$(CC) $(CPPFLAGS) -E -P -C -x c $<			                  \
 	| vppapigen --input - --python defs_$@;                                   \
-	echo "#include <api/vpe_msg_enum.h>"                                      \
+	echo "#include <vpp-api/vpe_msg_enum.h>"                                      \
 	| $(CC) $(CPPFLAGS) -E -P -x c - | grep VL_API                            \
 	| @srcdir@/pneum/api-gen.py -i defs_$@ > @srcdir@/vpp_papi/$@
 
diff --git a/vpp-api/python/pneum/pneum.c b/vpp-api/python/pneum/pneum.c
index 971c79b..ac51849 100644
--- a/vpp-api/python/pneum/pneum.c
+++ b/vpp-api/python/pneum/pneum.c
@@ -31,16 +31,16 @@
 #include <vlibapi/api.h>
 #include <vlibmemory/api.h>
 
-#include <api/vpe_msg_enum.h>
+#include <vpp-api/vpe_msg_enum.h>
 
 #include "pneum.h"
 
 #define vl_typedefs             /* define message structures */
-#include <api/vpe_all_api_h.h> 
+#include <vpp-api/vpe_all_api_h.h> 
 #undef vl_typedefs
 
 #define vl_endianfun             /* define message structures */
-#include <api/vpe_all_api_h.h> 
+#include <vpp-api/vpe_all_api_h.h> 
 #undef vl_endianfun
 
 typedef struct {
@@ -63,7 +63,7 @@
 }
 
 #define vl_api_version(n,v) static u32 vpe_api_version = v;
-#include <api/vpe.api.h>
+#include <vpp-api/vpe.api.h>
 #undef vl_api_version
 void
 vl_client_add_api_signatures (vl_api_memclnt_create_t *mp)
diff --git a/vpp-api/python/pneum/test_pneum.c b/vpp-api/python/pneum/test_pneum.c
index 18627b3..b313195 100644
--- a/vpp-api/python/pneum/test_pneum.c
+++ b/vpp-api/python/pneum/test_pneum.c
@@ -36,13 +36,13 @@
 #include <vlibmemory/api.h>
 #include <vnet/ip/ip.h>
 
-#include <api/vpe_msg_enum.h>
+#include <vpp-api/vpe_msg_enum.h>
 #include <signal.h>
 #include <setjmp.h>
 #include "pneum.h"
 
 #define vl_typedefs             /* define message structures */
-#include <api/vpe_all_api_h.h> 
+#include <vpp-api/vpe_all_api_h.h> 
 #undef vl_typedefs
 
 volatile int sigterm_received = 0;