import sys import csv import json def main(): if len(sys.argv) != 2: print('provide manifest data directory') return manifest_dir = sys.argv[1] with open(manifest_dir + '/dev_type', 'r') as f: dev_type = f.read() mem_segments = [] out_manifest = { 'mem_segments': mem_segments, 'dev_type': dev_type } with open(manifest_dir + '/seg_data.csv', 'r', newline='') as csvfile: reader = csv.DictReader(csvfile, delimiter=';') for line in reader: mem_segments.append( { 'seg_id': int(line['seg_id']), 'name': line['name'], 'word_len': int(line['word_len']), 'default_size': int(line['default_size']), 'default_addr': int(line['default_addr']), 'is_executable': line['is_executable'] == '1' } ) with open(manifest_dir + '/MANIFEST.json', 'w') as f: json.dump(out_manifest, f, indent=4) if __name__ == '__main__': main()