Files
scripts/device-deps-regenerator/devices.py
Harry Youd 398cf1046e Change to dashes to keep inline with maintainers folder
Change-Id: Id49a330106377997ebbeb2d56ed4c623c9f1e978
2017-05-20 13:47:20 +00:00

36 lines
1.1 KiB
Python

import json
with open('out.json') as f:
mapping = json.load(f)
devices = {}
suffixes = {}
def simplify_reverse_deps(repo, device):
# repo['branch'] = cm-14.1 or cm-14.1-caf or cm-14.1-sony
if 'branch' in repo and repo['branch'].count('-') > 1: # get suffix
if repo['repo'] not in suffixes:
suffixes[repo['repo']] = {}
suffixes[repo['repo']][device] = '-' + repo['branch'].split('-', 2)[2]
if repo['repo'] not in mapping or len(mapping[repo['repo']]) == 0:
return [repo['repo']]
res = []
for i in mapping[repo['repo']]:
res += (simplify_reverse_deps(i, device))
res.append(repo['repo'])
return res
for repo in mapping:
if 'device' in repo and 'common' not in repo:
codename = repo.split('_', maxsplit=3)[-1]
if codename in devices:
print("warning: dupe: %s"%codename)
devices[codename] = sorted(list(set(simplify_reverse_deps({'repo': repo}, codename))))
with open('devices.json', 'w') as f:
out = {'devices': devices, 'suffixes': suffixes}
out = devices
json.dump(out, f, indent=4, sort_keys=True)