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: detect_targets.py
- Revision:
- 13:ab47a20b66f0
- Child:
- 22:9e85236d8716
diff -r f2e8a005c7d3 -r ab47a20b66f0 detect_targets.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/detect_targets.py Thu Jul 14 20:21:19 2016 +0100
@@ -0,0 +1,90 @@
+#! /usr/bin/env python2
+"""
+mbed SDK
+Copyright (c) 2011-2013 ARM Limited
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+
+TEST BUILD & RUN
+"""
+import sys
+import os
+import json
+
+ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
+sys.path.insert(0, ROOT)
+
+
+from tools.options import get_default_options_parser
+
+# Check: Extra modules which are required by core test suite
+from tools.utils import check_required_modules
+check_required_modules(['prettytable'])
+
+# Imports related to mbed build api
+from tools.build_api import mcu_toolchain_matrix
+from tools.test_api import get_autodetected_MUTS_list
+
+
+if __name__ == '__main__':
+ try:
+ # Parse Options
+ parser = get_default_options_parser()
+
+ parser.add_option("-S", "--supported-toolchains",
+ action="store_true",
+ dest="supported_toolchains",
+ default=False,
+ help="Displays supported matrix of targets and toolchains")
+
+ parser.add_option('-f', '--filter',
+ dest='general_filter_regex',
+ default=None,
+ help='Filter targets')
+
+ parser.add_option("-v", "--verbose",
+ action="store_true",
+ dest="verbose",
+ default=False,
+ help="Verbose diagnostic output")
+
+ (options, args) = parser.parse_args()
+
+ # Only prints matrix of supported toolchains
+ if options.supported_toolchains:
+ print mcu_toolchain_matrix(platform_filter=options.general_filter_regex)
+ exit(0)
+
+ # If auto_detect attribute is present, we assume other auto-detection
+ # parameters like 'toolchains_filter' are also set.
+ MUTs = get_autodetected_MUTS_list()
+
+ count = 0
+ for mut in MUTs.values():
+ print ""
+ print "[mbed] Detected %s, port %s, mounted %s" % (mut['mcu'], mut['port'], mut['disk'])
+ print "[mbed] Supported toolchains for %s" % mut['mcu']
+ print mcu_toolchain_matrix(platform_filter=r'^'+mut['mcu']+'$')
+ count += 1
+
+ if count == 0:
+ print "[mbed] No mbed targets where detected on your system."
+
+ except KeyboardInterrupt, e:
+ print "\n[CTRL+c] exit"
+ except Exception,e:
+ import traceback
+ traceback.print_exc(file=sys.stdout)
+ print "[ERROR] %s" % str(e)
+ sys.exit(1)