mirror of https://github.com/ARMmbed/mbed-os.git
[BEETLE] Add support for GCC ARM exporter
This patch adds support for GCC ARM exporter to the Beetle Target. Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>pull/1852/head
parent
c1442139a0
commit
4f61cfd7f6
|
|
@ -0,0 +1 @@
|
|||
{% extends "gcc_arm_common.tmpl" %}
|
||||
|
|
@ -115,6 +115,7 @@ class GccArm(Exporter):
|
|||
'SAMD21G18A',
|
||||
'SAML21J18A',
|
||||
'SAMG55J19',
|
||||
'ARM_BEETLE_SOC',
|
||||
]
|
||||
|
||||
DOT_IN_RELATIVE_PATH = True
|
||||
|
|
|
|||
|
|
@ -175,7 +175,7 @@ class GCC(mbedToolchain):
|
|||
cmd.extend(self.get_dep_option(object))
|
||||
|
||||
cmd.extend(["-o", object, source])
|
||||
|
||||
|
||||
# Call cmdline hook
|
||||
cmd = self.hook.get_cmdline_compiler(cmd)
|
||||
|
||||
|
|
@ -194,13 +194,13 @@ class GCC(mbedToolchain):
|
|||
name, _ = splitext(basename(l))
|
||||
libs.append("-l%s" % name[3:])
|
||||
libs.extend(["-l%s" % l for l in self.sys_libs])
|
||||
|
||||
|
||||
# Build linker command
|
||||
map_file = splitext(output)[0] + ".map"
|
||||
cmd = self.ld + ["-o", output, "-Wl,-Map=%s" % map_file] + objects + ["-Wl,--start-group"] + libs + ["-Wl,--end-group"]
|
||||
if mem_map:
|
||||
cmd.extend(['-T', mem_map])
|
||||
|
||||
|
||||
for L in lib_dirs:
|
||||
cmd.extend(['-L', L])
|
||||
cmd.extend(libs)
|
||||
|
|
@ -215,7 +215,7 @@ class GCC(mbedToolchain):
|
|||
cmd_list = []
|
||||
for c in cmd[1:]:
|
||||
if c:
|
||||
cmd_list.append(('"%s"' % c) if not c.startswith('-') else c)
|
||||
cmd_list.append(('"%s"' % c) if not c.startswith('-') else c)
|
||||
string = " ".join(cmd_list).replace("\\", "/")
|
||||
f.write(string)
|
||||
|
||||
|
|
@ -228,7 +228,7 @@ class GCC(mbedToolchain):
|
|||
with open(archive_files, "wb") as f:
|
||||
o_list = []
|
||||
for o in objects:
|
||||
o_list.append('"%s"' % o)
|
||||
o_list.append('"%s"' % o)
|
||||
string = " ".join(o_list).replace("\\", "/")
|
||||
f.write(string)
|
||||
|
||||
|
|
@ -268,7 +268,7 @@ class GCC_ARM(GCC):
|
|||
self.cc += ["-DMBED_RTOS_SINGLE_THREAD"]
|
||||
self.cppc += ["-DMBED_RTOS_SINGLE_THREAD"]
|
||||
|
||||
if target.name in ["LPC1768", "LPC4088", "LPC4088_DM", "LPC4330", "UBLOX_C027", "LPC2368"]:
|
||||
if target.name in ["LPC1768", "LPC4088", "LPC4088_DM", "LPC4330", "UBLOX_C027", "LPC2368", "ARM_BEETLE_SOC"]:
|
||||
self.ld.extend(["-u _printf_float", "-u _scanf_float"])
|
||||
elif target.name in ["RZ_A1H", "VK_RZ_A1H", "ARCH_MAX", "DISCO_F407VG", "DISCO_F429ZI", "DISCO_F469NI", "NUCLEO_F401RE", "NUCLEO_F410RB", "NUCLEO_F411RE", "NUCLEO_F446RE", "ELMO_F411RE", "MTS_MDOT_F411RE", "MTS_DRAGONFLY_F411RE", "DISCO_F746NG"]:
|
||||
self.ld.extend(["-u_printf_float", "-u_scanf_float"])
|
||||
|
|
@ -291,4 +291,3 @@ class GCC_CR(GCC):
|
|||
if target.name in ["LPC1768", "LPC4088", "LPC4088_DM", "LPC4330", "UBLOX_C027", "LPC2368"]:
|
||||
self.ld.extend(["-u _printf_float", "-u _scanf_float"])
|
||||
self.ld += ["-nostdlib"]
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue