diff --git a/tools/export/exporters.py b/tools/export/exporters.py index fa23866bad..45a3bae271 100644 --- a/tools/export/exporters.py +++ b/tools/export/exporters.py @@ -92,6 +92,7 @@ class Exporter(object): self.toolchain = toolchain jinja_loader = FileSystemLoader(os.path.dirname(os.path.abspath(__file__))) self.jinja_environment = Environment(loader=jinja_loader) + resources.win_to_unix() self.resources = resources self.generated_files = [] self.static_files = ( diff --git a/tools/export/uvision/__init__.py b/tools/export/uvision/__init__.py index ccde7b13c3..e89516b191 100644 --- a/tools/export/uvision/__init__.py +++ b/tools/export/uvision/__init__.py @@ -85,7 +85,7 @@ class DeviceUvision(DeviceCMSIS): # Default according to Keil developer ramsize = '1000' if len(RAMS) >= 1: - ramstart = RAMS[0][0] + ramstart = '{:x}'.format(RAMS[0][0]) extra_flags = [] for info in self.target_info["algorithms"]: if not info: @@ -103,9 +103,9 @@ class DeviceUvision(DeviceCMSIS): rom_start_flag = "-FS" + str(fl_count) + str(start) rom_size_flag = "-FL" + str(fl_count) + str(size) - if info["ramstart"] is not None and info["ramsize"] is not None: - ramstart = '{:x}'.format(info["ramstart"]) - ramsize = '{:x}'.format(info["ramsize"]) + if info["ram_start"] is not None and info["ram_size"] is not None: + ramstart = '{:x}'.format(info["ram_start"]) + ramsize = '{:x}'.format(info["ram_size"]) path_flag = "-FP{}($$Device:{}${})".format( str(fl_count), self.dname, name @@ -238,7 +238,7 @@ class Uvision(Exporter): 'project_files': sorted(list(self.format_src(srcs).items()), key=lambda tuple: tuple[0].lower()), 'include_paths': ';'.join(self.filter_dot(d) for d in - self.resources.inc_dirs).encode('utf-8'), + self.resources.inc_dirs), 'device': DeviceUvision(self.target), } sct_name, sct_path = self.resources.get_file_refs( @@ -319,8 +319,8 @@ class UvisionArmc5(Uvision): else: if not (set(target.supported_toolchains).intersection( set(["ARM", "uARM"]))): - return False - + return False + if not DeviceCMSIS.check_supported(target_name): return False if "Cortex-A" in target.core: @@ -348,7 +348,7 @@ class UvisionArmc6(Uvision): else: if "ARMC6" not in target.supported_toolchains: return False - + if not DeviceCMSIS.check_supported(target_name): return False if "Cortex-A" in target.core: