util: Auto generate the packet proto definitions
This patch simplifies the usage of the packet trace encoder/decoder by attempting to automatically generating the packet proto definitions in case they cannot be found.
This commit is contained in:
parent
4c7a283e55
commit
cc8911261e
2 changed files with 34 additions and 2 deletions
|
@ -80,7 +80,23 @@
|
|||
|
||||
import struct
|
||||
import sys
|
||||
import packet_pb2
|
||||
|
||||
# Import the packet proto definitions. If they are not found, attempt
|
||||
# to generate them automatically. This assumes that the script is
|
||||
# executed from the gem5 root.
|
||||
try:
|
||||
import packet_pb2
|
||||
except:
|
||||
print "Did not find packet proto definitions, attempting to generate"
|
||||
from subprocess import call
|
||||
error = call(['protoc', '--python_out=util', '--proto_path=src/proto',
|
||||
'src/proto/packet.proto'])
|
||||
if not error:
|
||||
import packet_pb2
|
||||
print "Generated packet proto definitions"
|
||||
else:
|
||||
print "Failed to import packet proto definitions"
|
||||
exit(-1)
|
||||
|
||||
def DecodeVarint(in_file):
|
||||
"""
|
||||
|
|
|
@ -85,7 +85,23 @@
|
|||
|
||||
import struct
|
||||
import sys
|
||||
import packet_pb2
|
||||
|
||||
# Import the packet proto definitions. If they are not found, attempt
|
||||
# to generate them automatically. This assumes that the script is
|
||||
# executed from the gem5 root.
|
||||
try:
|
||||
import packet_pb2
|
||||
except:
|
||||
print "Did not find packet proto definitions, attempting to generate"
|
||||
from subprocess import call
|
||||
error = call(['protoc', '--python_out=util', '--proto_path=src/proto',
|
||||
'src/proto/packet.proto'])
|
||||
if not error:
|
||||
import packet_pb2
|
||||
print "Generated packet proto definitions"
|
||||
else:
|
||||
print "Failed to import packet proto definitions"
|
||||
exit(-1)
|
||||
|
||||
def EncodeVarint(out_file, value):
|
||||
"""
|
||||
|
|
Loading…
Reference in a new issue