Clone of official tools
Diff: build_api.py
- Revision:
- 40:7d3fa6b99b2b
- Parent:
- 36:96847d42f010
- Child:
- 41:2a77626a4c21
diff -r c98cb013e99f -r 7d3fa6b99b2b build_api.py --- a/build_api.py Wed Jul 19 16:44:30 2017 -0500 +++ b/build_api.py Tue Oct 10 16:56:30 2017 -0500 @@ -401,7 +401,7 @@ merged.tofile(output, format='bin') def scan_resources(src_paths, toolchain, dependencies_paths=None, - inc_dirs=None, base_path=None): + inc_dirs=None, base_path=None, collect_ignores=False): """ Scan resources using initialized toolcain Positional arguments @@ -413,9 +413,11 @@ """ # Scan src_path - resources = toolchain.scan_resources(src_paths[0], base_path=base_path) + resources = toolchain.scan_resources(src_paths[0], base_path=base_path, + collect_ignores=collect_ignores) for path in src_paths[1:]: - resources.add(toolchain.scan_resources(path, base_path=base_path)) + resources.add(toolchain.scan_resources(path, base_path=base_path, + collect_ignores=collect_ignores)) # Scan dependency paths for include dirs if dependencies_paths is not None: @@ -445,7 +447,7 @@ macros=None, inc_dirs=None, jobs=1, silent=False, report=None, properties=None, project_id=None, project_description=None, extra_verbose=False, config=None, - app_config=None, build_profile=None): + app_config=None, build_profile=None, stats_depth=None): """ Build a project. A project may be a test or a user program. Positional arguments: @@ -474,6 +476,7 @@ config - a Config object to use instead of creating one app_config - location of a chosen mbed_app.json file build_profile - a dict of flags that will be passed to the compiler + stats_depth - depth level for memap to display file/dirs """ # Convert src_path to a list if needed @@ -591,18 +594,18 @@ memap_table = '' if memap_instance: # Write output to stdout in text (pretty table) format - memap_table = memap_instance.generate_output('table') + memap_table = memap_instance.generate_output('table', stats_depth) if not silent: print memap_table # Write output to file in JSON format map_out = join(build_path, name + "_map.json") - memap_instance.generate_output('json', map_out) + memap_instance.generate_output('json', stats_depth, map_out) # Write output to file in CSV format for the CI map_csv = join(build_path, name + "_map.csv") - memap_instance.generate_output('csv-ci', map_csv) + memap_instance.generate_output('csv-ci', stats_depth, map_csv) resources.detect_duplicates(toolchain) @@ -611,7 +614,7 @@ cur_result["elapsed_time"] = end - start cur_result["output"] = toolchain.get_output() + memap_table cur_result["result"] = "OK" - cur_result["memory_usage"] = toolchain.map_outputs + cur_result["memory_usage"] = memap_instance.mem_report cur_result["bin"] = res cur_result["elf"] = splitext(res)[0] + ".elf" cur_result.update(toolchain.report) @@ -1032,7 +1035,7 @@ mkdir(tmp_path) toolchain = prepare_toolchain( - [""], tmp_path, target, toolchain_name, macros=macros, + [""], tmp_path, target, toolchain_name, macros=macros,verbose=verbose, notify=notify, silent=silent, extra_verbose=extra_verbose, build_profile=build_profile, jobs=jobs, clean=clean) @@ -1165,6 +1168,9 @@ if toolchain not in unique_supported_toolchains: unique_supported_toolchains.append(toolchain) + if "ARM" in unique_supported_toolchains: + unique_supported_toolchains.append("ARMC6") + return unique_supported_toolchains def mcu_toolchain_list(release_version='5'): @@ -1201,7 +1207,7 @@ def mcu_target_list(release_version='5'): - """ Shows target list + """ Shows target list """ @@ -1310,7 +1316,9 @@ row.append(text) for unique_toolchain in unique_supported_toolchains: - if unique_toolchain in TARGET_MAP[target].supported_toolchains: + if (unique_toolchain in TARGET_MAP[target].supported_toolchains or + (unique_toolchain == "ARMC6" and + "ARM" in TARGET_MAP[target].supported_toolchains)): text = "Supported" perm_counter += 1 else: @@ -1361,7 +1369,7 @@ """ from prettytable import PrettyTable columns_text = ['name', 'target', 'toolchain'] - columns_int = ['static_ram', 'stack', 'heap', 'total_ram', 'total_flash'] + columns_int = ['static_ram', 'total_flash'] table = PrettyTable(columns_text + columns_int) for col in columns_text: @@ -1388,10 +1396,6 @@ record['toolchain_name'], record['memory_usage'][-1]['summary'][ 'static_ram'], - record['memory_usage'][-1]['summary']['stack'], - record['memory_usage'][-1]['summary']['heap'], - record['memory_usage'][-1]['summary'][ - 'total_ram'], record['memory_usage'][-1]['summary'][ 'total_flash'], ]