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;