summaryrefslogtreecommitdiff
path: root/py/config/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'py/config/__init__.py')
-rw-r--r--py/config/__init__.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/py/config/__init__.py b/py/config/__init__.py
new file mode 100644
index 0000000000..6030c12e24
--- /dev/null
+++ b/py/config/__init__.py
@@ -0,0 +1,36 @@
+from .base import BuildConfig, Config, Default, Feature, Disable, Feature, Value
+from .options import Option, Boolean, String, StringList, Integer
+#from .tag import tag_map
+
+class RTEMSConfig(object):
+ """
+ Main entry point for RTEMS Config
+
+ :param dict default: Default options.
+ :param list config: Default configs.
+
+ """
+
+ def __init__(self, default, config):
+ self.default = default # Dictionary of options.
+ self.config = config # List of configs.
+# self.config = feature # List of features.
+
+ def options_get(self, category=False):
+ """
+ Return sorted list of options
+
+ :param list category: Categories
+
+ :returns: List of options optionally limited by categories.
+ :rtype: list
+ """
+
+ if category:
+ tmp = {}
+ for name, option in self.default.items():
+ if not set(category).isdisjoint(option.tag):
+ tmp[name] = option
+ return [v for (k, v) in sorted(tmp.items())]
+
+ return [v for (k, v) in sorted(self.default.items())]