xref: /aosp_15_r20/external/angle/scripts/tracegz.py (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1*8975f5c5SAndroid Build Coastguard Workerimport gzip
2*8975f5c5SAndroid Build Coastguard Workerimport json
3*8975f5c5SAndroid Build Coastguard Workerimport os
4*8975f5c5SAndroid Build Coastguard Workerimport sys
5*8975f5c5SAndroid Build Coastguard Worker
6*8975f5c5SAndroid Build Coastguard Workertrace, trace_dir = sys.argv[1:]
7*8975f5c5SAndroid Build Coastguard Worker
8*8975f5c5SAndroid Build Coastguard Workerwith open(os.path.join(trace_dir, trace + '.json'), 'rb') as f:
9*8975f5c5SAndroid Build Coastguard Worker    trace_json = json.loads(f.read())
10*8975f5c5SAndroid Build Coastguard Worker
11*8975f5c5SAndroid Build Coastguard Worker# Concatenate trace cpp source into a single gz
12*8975f5c5SAndroid Build Coastguard Workerwith open('gen/tracegz_' + sys.argv[1] + '.gz', 'wb') as f:
13*8975f5c5SAndroid Build Coastguard Worker    with gzip.GzipFile(fileobj=f, mode='wb', compresslevel=9, mtime=0) as fgz:
14*8975f5c5SAndroid Build Coastguard Worker        for fn in trace_json['TraceFiles']:
15*8975f5c5SAndroid Build Coastguard Worker            if fn.endswith('.cpp'):
16*8975f5c5SAndroid Build Coastguard Worker                with open(os.path.join(trace_dir, fn), 'rb') as fcpp:
17*8975f5c5SAndroid Build Coastguard Worker                    fgz.write(fcpp.read())
18