vapi: Fix build when directory contains @
[vpp.git] / src / vpp-api / vapi / vapi_cpp_gen.py
index 6b62bc4..7bc2e7f 100755 (executable)
@@ -1,11 +1,11 @@
-#!/usr/bin/env python2
+#!/usr/bin/env python3
 
 import argparse
 import os
 import sys
 import logging
 from vapi_c_gen import CField, CEnum, CStruct, CSimpleType, CStructType,\
-    CMessage, json_to_c_header_name
+    CMessage, json_to_c_header_name, CAlias
 from vapi_json_parser import JsonParser
 
 
@@ -21,6 +21,10 @@ class CppEnum(CEnum):
     pass
 
 
+class CppAlias(CAlias):
+    pass
+
+
 class CppSimpleType (CSimpleType):
     pass
 
@@ -135,7 +139,8 @@ def gen_json_header(parser, logger, j, io, gen_h_prefix, add_debug_comments):
     sys.stdout = io
     d, f = os.path.split(j)
     include_guard = "__included_hpp_%s" % (
-        f.replace(".", "_").replace("/", "_").replace("-", "_"))
+        f.replace(".", "_").replace("/", "_").replace("-", "_").replace(
+            "@", "_"))
     print("#ifndef %s" % include_guard)
     print("#define %s" % include_guard)
     print("")
@@ -251,7 +256,8 @@ if __name__ == '__main__':
                             struct_type_class=CppStructType,
                             field_class=CppField,
                             enum_class=CppEnum,
-                            message_class=CppMessage)
+                            message_class=CppMessage,
+                            alias_class=CppAlias)
 
     gen_cpp_headers(jsonparser, logger, args.prefix, args.gen_h_prefix,
                     args.remove_path)