summaryrefslogtreecommitdiff
path: root/test/builtins/Unit/lit.cfg.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/builtins/Unit/lit.cfg.py')
-rw-r--r--test/builtins/Unit/lit.cfg.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/builtins/Unit/lit.cfg.py b/test/builtins/Unit/lit.cfg.py
index 44b86f0d6..8fdb1a216 100644
--- a/test/builtins/Unit/lit.cfg.py
+++ b/test/builtins/Unit/lit.cfg.py
@@ -94,3 +94,25 @@ config.suffixes = ['.c', '.cpp']
if not config.emulator:
config.available_features.add('native-run')
+
+# Add features for available sources
+builtins_source_features = config.builtins_lit_source_features.split(';')
+# Sanity checks
+if not builtins_source_features:
+ lit_config.fatal('builtins_source_features cannot be empty')
+builtins_source_features_set = set()
+builtins_source_feature_duplicates = []
+for builtin_source_feature in builtins_source_features:
+ if len(builtin_source_feature) == 0:
+ lit_config.fatal('builtins_source_feature cannot contain empty features')
+ if builtin_source_feature not in builtins_source_features_set:
+ builtins_source_features_set.add(builtin_source_feature)
+ else:
+ builtins_source_feature_duplicates.append(builtin_source_feature)
+
+if len(builtins_source_feature_duplicates) > 0:
+ lit_config.fatal(
+ 'builtins_source_features contains duplicates: {}'.format(
+ builtins_source_feature_duplicates)
+ )
+config.available_features.update(builtins_source_features)