Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: export/exporters.py
- Revision:
- 36:96847d42f010
- Parent:
- 35:da9c89f8be7d
- Child:
- 40:7d3fa6b99b2b
--- a/export/exporters.py Wed Feb 15 13:53:18 2017 -0600
+++ b/export/exporters.py Thu Jun 22 11:12:28 2017 -0500
@@ -60,7 +60,8 @@
jinja_loader = FileSystemLoader(os.path.dirname(os.path.abspath(__file__)))
self.jinja_environment = Environment(loader=jinja_loader)
self.resources = resources
- self.generated_files = [join(self.TEMPLATE_DIR,"GettingStarted.html")]
+ self.generated_files = [join(self.TEMPLATE_DIR, "GettingStarted.html"),
+ join(self.TEMPLATE_DIR, ".mbed")]
self.builder_files_dict = {}
self.add_config()
@@ -176,3 +177,20 @@
def generate(self):
"""Generate an IDE/tool specific project file"""
raise NotImplemented("Implement a generate function in Exporter child class")
+
+
+def filter_supported(compiler, whitelist):
+ """Generate a list of supported targets for a given compiler and post-binary hook
+ white-list."""
+ def supported_p(obj):
+ """Internal inner function used for filtering"""
+ if compiler not in obj.supported_toolchains:
+ return False
+ if not hasattr(obj, "post_binary_hook"):
+ return True
+ if obj.post_binary_hook['function'] in whitelist:
+ return True
+ else:
+ return False
+ return list(target for target, obj in TARGET_MAP.iteritems()
+ if supported_p(obj))
