aboutsummaryrefslogtreecommitdiffstats
path: root/examples/binapi/gen.go
diff options
context:
space:
mode:
authorOndrej Fabry <ofabry@cisco.com>2019-06-06 14:08:48 +0200
committerOndrej Fabry <ofabry@cisco.com>2019-06-06 14:08:48 +0200
commitc4522fe10317b1729a0820dc880afc78c663f64d (patch)
tree3c370f285b3d00feb5857ca155f7e46ae8765f7f /examples/binapi/gen.go
parent0ff02b6b1f0757f5e4c011457757bd18d0a60f01 (diff)
Add various generator improvements
- generate service implementation for modules - generate conversion maps and String() method for enums - generate module name and version as constants - rename Union_data field to XXX_UnionData for consistency - generate constant GoVppAPIPackageIsVersionN for checking compatibility with API - add example for using service clients - add some documentation to socketclient adapter - cleanup gen.go file used for generating binapi - regenerate binapi with latest VPP release (19.04.1) - change global variables Messages into a function AllMessages Change-Id: Id1ef97764570759eaa3e5a4dc14ecda7a168ee39 Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
Diffstat (limited to 'examples/binapi/gen.go')
-rw-r--r--examples/binapi/gen.go18
1 files changed, 18 insertions, 0 deletions
diff --git a/examples/binapi/gen.go b/examples/binapi/gen.go
new file mode 100644
index 0000000..40fb25d
--- /dev/null
+++ b/examples/binapi/gen.go
@@ -0,0 +1,18 @@
+package binapi
+
+// Generate Go code from the VPP APIs located in the /usr/share/vpp/api directory.
+//go:generate -command binapigen binapi-generator --output-dir=. --include-services
+
+// Core
+//go:generate binapigen --input-file=/usr/share/vpp/api/core/af_packet.api.json
+//go:generate binapigen --input-file=/usr/share/vpp/api/core/interface.api.json
+//go:generate binapigen --input-file=/usr/share/vpp/api/core/ip.api.json
+//go:generate binapigen --input-file=/usr/share/vpp/api/core/memclnt.api.json
+//go:generate binapigen --input-file=/usr/share/vpp/api/core/vpe.api.json
+
+// Plugins
+//go:generate binapigen --input-file=/usr/share/vpp/api/plugins/acl.api.json
+//go:generate binapigen --input-file=/usr/share/vpp/api/plugins/memif.api.json
+
+// VPP version
+//go:generate sh -ec "dpkg-query -f '$DOLLAR{Version}' -W vpp > VPP_VERSION"