- go generate -x "$(BINAPI_DIR)"
-
-gen-binapi-from-code: cmd-binapi-generator
- $(eval VPP_API_DIR := ${VPP_DIR}/build-root/install-vpp-native/vpp/share/vpp/api/)
- @echo "Generating vpp API.json and go bindings"
- @echo "Vpp Directory ${VPP_DIR}"
- @echo "Vpp API files ${VPP_API_DIR}"
- @echo "Go bindings ${BINAPI_DIR}"
- @cd ${VPP_DIR} && make json-api-files
- @${BINAPI_GENERATOR} \
- --input-dir=${VPP_API_DIR} \
- --output-dir=${BINAPI_DIR} \
- --gen rpc,rest \
- --no-source-path-info
-
+ @go generate -x "$(BINAPI_DIR)"
+
+.PHONY: gen-binapi-internal
+gen-binapi-internal:
+ @go generate $(INTERNAL_BINAPI_DIR)
+
+.PHONY: gen-binapi-local
+gen-binapi-local: binapi-generator check-VPP_DIR ## Generate binapi code (using locally cloned VPP)
+ @make -C ${VPP_DIR} json-api-files
+ @find $(BINAPI_DIR)/*/*.ba.go -delete
+ @find $(BINAPI_DIR)/* -type d -delete
+ @./bin/binapi-generator -input-dir=$(VPP_API_DIR) -output-dir=$(BINAPI_DIR) -gen=rpc
+ @./bin/binapi-generator -input-dir=$(VPP_API_DIR) -input-file=$(VPP_API_DIR)/core/vpe.api.json -output-dir=$(BINAPI_DIR) -gen=http
+ @sed -i 's@$(VPP_API_DIR)@/usr/share/vpp/api@g' $(BINAPI_DIR)/*/*.ba.go
+
+.PHONY: gen-binapi-docker