Changed JSON format for required features.

Signed-off-by: Maciej Kurc <mkurc@antmicro.com>
This commit is contained in:
Maciej Kurc 2019-12-10 13:20:44 +01:00
parent 6b234bf484
commit 726d744fca
2 changed files with 14 additions and 4 deletions

View File

@ -168,9 +168,19 @@ class Database(object):
# Get a list of required features for all parts
features = set()
if "all" in self.required_features:
features |= set(self.required_features["all"])
if "always_required" in self.required_features:
features |= set(self.required_features["always_required"])
# TODO: Add a support for required features for a specific part.
# Append / remove features for the specific part. If a feature string
# starts with "-" then the feature needs not to be present for that
# part.
if part is not None:
for f in self.required_features["per_part_required"][part]:
if f.startswith("-"):
f = f[1:]
features -= set([f])
else:
features |= set([f])
return features

View File

@ -120,7 +120,7 @@ def run(
extra_features = fasm.parse_fasm_string(
'\n'.join(roi_j['required_features']))
# Get required features for the part
# Get required extra features for the part
# TODO: Specify the part explicitly ?
required_features = db.get_required_fasm_features(None)
extra_features += fasm.parse_fasm_string('\n'.join(required_features))