diff --git a/tools/build_api.py b/tools/build_api.py index 0faf8eadb8..7f459e95be 100644 --- a/tools/build_api.py +++ b/tools/build_api.py @@ -121,6 +121,15 @@ def add_result_to_report(report, result): result_wrap = {0: result} report[target][toolchain][id_name].append(result_wrap) +def get_toolchain_name(target, toolchain_name): + if toolchain_name == "ARM": + if CORE_ARCH[target.core] == 8: + return "ARMC6" + elif getattr(target, "default_toolchain", None) == "uARM": + return "uARM" + + return toolchain_name + def get_config(src_paths, target, toolchain_name=None, app_config=None): """Get the configuration object for a target-toolchain combination @@ -316,8 +325,8 @@ def prepare_toolchain(src_paths, build_dir, target, toolchain_name, raise NotSupportedException( "Target {} is not supported by toolchain {}".format( target.name, toolchain_name)) - if (toolchain_name == "ARM" and CORE_ARCH[target.core] == 8): - toolchain_name = "ARMC6" + + toolchain_name = get_toolchain_name(target, toolchain_name) try: cur_tc = TOOLCHAIN_CLASSES[toolchain_name] @@ -942,6 +951,8 @@ def build_mbed_libs(target, toolchain_name, clean=False, macros=None, Return - True if target + toolchain built correctly, False if not supported """ + toolchain_name = get_toolchain_name(target, toolchain_name) + if report is not None: start = time() id_name = "MBED"