VPPAPIGEN: Run tool directly from source tree.

This ensures that tool changes do not require re-bootstrap.
Disabled generation of temporary files (gentab / .pyc) to avoid polluting the source tree.

Change-Id: I4d6bc035fbb46550fa8f4e99f4091eef90e2d86c
Signed-off-by: Ole Troan <ot@cisco.com>
This commit is contained in:
Ole Troan
2018-03-07 08:40:58 +01:00
committed by Damjan Marion
parent 52ca756c3a
commit d6743b1d64
3 changed files with 8 additions and 9 deletions

View File

@ -297,11 +297,6 @@ AM_COND_IF([WITH_MBEDTLS],
], [])
])
AC_PATH_PROG([VPPAPIGEN], [vppapigen], [no])
if test "$VPPAPIGEN" = "no"; then
VPPAPIGEN=\$\(top_srcdir\)/tools/vppapigen/vppapigen
fi
###############################################################################
# JAVA
###############################################################################

View File

@ -14,12 +14,13 @@
# Shared suffix rules
# Please do not set "SUFFIXES = .api.h .api" here
%.api.h: %.api @VPPAPIGEN@
VPPAPIGEN = $(top_srcdir)/tools/vppapigen/vppapigen
%.api.h: %.api
@echo " APIGEN " $@ ; \
mkdir -p `dirname $@` ; \
@VPPAPIGEN@ --includedir $(top_srcdir) --input $< --output $@
$(VPPAPIGEN) --includedir $(top_srcdir) --input $< --output $@
%.api.json: %.api
@echo " JSON API" $@ ; \
mkdir -p `dirname $@` ; \
@VPPAPIGEN@ --includedir $(top_srcdir) --input $< JSON --output $@
$(VPPAPIGEN) --includedir $(top_srcdir) --input $< JSON --output $@

View File

@ -9,6 +9,9 @@ import logging
import binascii
import os
# Ensure we don't leave temporary files around
sys.dont_write_bytecode = True
#
# VPP API language
#
@ -527,7 +530,7 @@ class VPPAPI(object):
def __init__(self, debug=False, filename='', logger=None):
self.lexer = lex.lex(module=VPPAPILexer(filename), debug=debug)
self.parser = yacc.yacc(module=VPPAPIParser(filename, logger),
tabmodule='vppapigentab', debug=debug)
write_tables=False, debug=debug)
self.logger = logger
def parse_string(self, code, debug=0, lineno=1):