mirror of https://github.com/ARMmbed/mbed-os.git
Rename "default_lib" to "c_lib".
parent
b7c961c4ac
commit
8a0fdd24d9
|
@ -39,22 +39,22 @@
|
|||
"mbed-trace.fea-ipv6": false
|
||||
},
|
||||
"K64F": {
|
||||
"target.default_lib": "small"
|
||||
"target.c_lib": "small"
|
||||
},
|
||||
"K66F": {
|
||||
"target.default_lib": "small"
|
||||
"target.c_lib": "small"
|
||||
},
|
||||
"NUCLEO_F303RE": {
|
||||
"target.default_lib": "small"
|
||||
"target.c_lib": "small"
|
||||
},
|
||||
"NUCLEO_F411RE": {
|
||||
"target.default_lib": "small"
|
||||
"target.c_lib": "small"
|
||||
},
|
||||
"NUCLEO_F429ZI": {
|
||||
"target.default_lib": "small"
|
||||
"target.c_lib": "small"
|
||||
},
|
||||
"DISCO_L475VG_IOT01A": {
|
||||
"target.default_lib": "small"
|
||||
"target.c_lib": "small"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
"features": [],
|
||||
"detect_code": [],
|
||||
"public": false,
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"bootloader_supported": false,
|
||||
"static_memory_defines": true,
|
||||
"printf_lib": "std",
|
||||
|
|
|
@ -335,12 +335,12 @@ def is_official_target(target_name, version):
|
|||
("following toolchains: %s" %
|
||||
", ".join(sorted(supported_toolchains)))
|
||||
|
||||
elif not target.default_lib == 'std':
|
||||
elif not target.c_lib == 'std':
|
||||
result = False
|
||||
reason = ("Target '%s' must set the " % target.name) + \
|
||||
("'default_lib' to 'std' to be included in the ") + \
|
||||
("'c_lib' to 'std' to be included in the ") + \
|
||||
("mbed OS 5.0 official release." + linesep) + \
|
||||
("Currently it is set to '%s'" % target.default_lib)
|
||||
("Currently it is set to '%s'" % target.c_lib)
|
||||
|
||||
else:
|
||||
result = False
|
||||
|
|
|
@ -90,7 +90,7 @@ def check_device_has(dict):
|
|||
yield "%s is not allowed in device_has" % name
|
||||
|
||||
MCU_REQUIRED_KEYS = ["release_versions", "supported_toolchains",
|
||||
"default_lib", "public", "inherits", "device_has"]
|
||||
"c_lib", "public", "inherits", "device_has"]
|
||||
MCU_ALLOWED_KEYS = ["device_has_add", "device_has_remove", "core",
|
||||
"extra_labels", "features", "features_add",
|
||||
"features_remove", "bootloader_supported", "device_name",
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"first_base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
@ -18,7 +18,7 @@
|
|||
"second_base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": ["BOOTLOADER"],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"core": "Cortex-M0",
|
||||
"config": {
|
||||
"par1": "v_par1_base",
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"first_base_target": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
@ -16,7 +16,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
@ -16,7 +16,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
@ -16,7 +16,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"core": "Cortex-M0",
|
||||
"extra_labels": [],
|
||||
"features": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"first_base": {
|
||||
"supported_toolchains": ["GCC_ARM"],
|
||||
"extra_labels": [],
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -102,7 +102,7 @@ def test_modify_existing_target():
|
|||
"features": [],
|
||||
"detect_code": [],
|
||||
"public": false,
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
@ -130,7 +130,7 @@ def test_modify_existing_target():
|
|||
"features": [],
|
||||
"detect_code": [],
|
||||
"public": false,
|
||||
"default_lib": "std",
|
||||
"c_lib": "std",
|
||||
"supported_c_libs": {
|
||||
"arm": ["std"],
|
||||
"gcc_arm": ["std", "small"],
|
||||
|
|
|
@ -31,10 +31,10 @@ class TestArmToolchain(TestCase):
|
|||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.printf_lib = "minimal-printf"
|
||||
mock_target.default_lib = "std"
|
||||
mock_target.c_lib = "std"
|
||||
mock_target.supported_c_libs = {"arm": ["std"]}
|
||||
mock_target.supported_toolchains = ["ARM", "uARM", "ARMC5"]
|
||||
|
||||
del mock_target.default_lib
|
||||
arm_std_obj = ARM_STD(mock_target)
|
||||
arm_micro_obj = ARM_MICRO(mock_target)
|
||||
arm_c6_obj = ARMC6(mock_target)
|
||||
|
@ -43,12 +43,13 @@ class TestArmToolchain(TestCase):
|
|||
self.assertIn("-DMBED_MINIMAL_PRINTF", arm_micro_obj.flags["common"])
|
||||
self.assertIn("-DMBED_MINIMAL_PRINTF", arm_c6_obj.flags["common"])
|
||||
|
||||
def test_arm_default_lib(self):
|
||||
def test_arm_c_lib(self):
|
||||
"""Test that linker flags are correctly added to an instance of ARM."""
|
||||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.supported_c_libs = {"arm": ["small"]}
|
||||
mock_target.default_lib = "sMALL"
|
||||
mock_target.c_lib = "sMALL"
|
||||
del mock_target.default_lib
|
||||
mock_target.default_toolchain = "ARM"
|
||||
mock_target.supported_toolchains = ["ARM", "uARM", "ARMC5", "ARMC6"]
|
||||
arm_std_obj = ARM_STD(mock_target)
|
||||
|
@ -68,32 +69,34 @@ class TestArmToolchain(TestCase):
|
|||
self.assertIn("-Wl,--library_type=microlib", arm_c6_obj.flags["cxx"])
|
||||
self.assertIn("--library_type=microlib", arm_c6_obj.flags["asm"])
|
||||
|
||||
def test_arm_default_lib_std_exception(self):
|
||||
def test_arm_c_lib_std_exception(self):
|
||||
"""Test that an exception is raised if the std C library is not supported for a target on the ARM toolchain."""
|
||||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.supported_toolchains = ["ARM", "uARM", "ARMC5"]
|
||||
mock_target.default_toolchain = "ARM"
|
||||
mock_target.default_lib = "std"
|
||||
mock_target.c_lib = "std"
|
||||
del mock_target.default_lib
|
||||
mock_target.supported_c_libs = {"arm": ["small"]}
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.default_lib)):
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.c_lib)):
|
||||
ARM_STD(mock_target)
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.default_lib)):
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.c_lib)):
|
||||
ARMC6(mock_target)
|
||||
|
||||
|
||||
def test_arm_default_lib_small_exception(self):
|
||||
def test_arm_c_lib_small_exception(self):
|
||||
"""Test that an exception is raised if the small C library is not supported for a target on the ARM toolchain."""
|
||||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.default_lib = "small"
|
||||
mock_target.c_lib = "small"
|
||||
del mock_target.default_lib
|
||||
mock_target.supported_c_libs = {"arm": ["std"]}
|
||||
mock_target.default_toolchain = "ARM"
|
||||
mock_target.supported_toolchains = ["ARM", "uARM", "ARMC5"]
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.default_lib)):
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.c_lib)):
|
||||
ARM_STD(mock_target)
|
||||
mock_target.default_toolchain = "ARMC6"
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.default_lib)):
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.c_lib)):
|
||||
ARMC6(mock_target)
|
||||
|
||||
class TestGccToolchain(TestCase):
|
||||
|
@ -105,7 +108,8 @@ class TestGccToolchain(TestCase):
|
|||
mock_target.core = "Cortex-M4"
|
||||
mock_target.printf_lib = "minimal-printf"
|
||||
mock_target.supported_toolchains = ["GCC_ARM"]
|
||||
mock_target.default_lib = "std"
|
||||
mock_target.c_lib = "std"
|
||||
del mock_target.default_lib
|
||||
mock_target.supported_c_libs = {"gcc_arm": ["std"]}
|
||||
mock_target.is_TrustZone_secure_target = False
|
||||
|
||||
|
@ -127,12 +131,13 @@ class TestGccToolchain(TestCase):
|
|||
for i in minimal_printf_wraps:
|
||||
self.assertIn(i, gcc_obj.flags["ld"])
|
||||
|
||||
def test_gcc_arm_default_lib(self):
|
||||
def test_gcc_arm_c_lib(self):
|
||||
"""Test that linker flags are correctly added to an instance of GCC_ARM."""
|
||||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.supported_c_libs = {"gcc_arm": ["small"]}
|
||||
mock_target.default_lib = "sMALL"
|
||||
mock_target.c_lib = "sMALL"
|
||||
del mock_target.default_lib
|
||||
mock_target.supported_toolchains = ["GCC_ARM"]
|
||||
mock_target.is_TrustZone_secure_target = False
|
||||
gcc_arm_obj = GCC_ARM(mock_target)
|
||||
|
@ -140,25 +145,27 @@ class TestGccToolchain(TestCase):
|
|||
self.assertIn("-D__NEWLIB_NANO", gcc_arm_obj.flags["common"])
|
||||
self.assertIn("--specs=nano.specs", gcc_arm_obj.flags["ld"])
|
||||
|
||||
def test_gcc_arm_default_lib_std_exception(self):
|
||||
def test_gcc_arm_c_lib_std_exception(self):
|
||||
"""Test that an exception is raised if the std C library is not supported for a target on the GCC_ARM toolchain."""
|
||||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.default_toolchain = "ARM"
|
||||
mock_target.default_lib = "std"
|
||||
mock_target.c_lib = "std"
|
||||
del mock_target.default_lib
|
||||
mock_target.supported_c_libs = {"arm": ["small"]}
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.default_lib)):
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.c_lib)):
|
||||
GCC_ARM(mock_target)
|
||||
|
||||
def test_gcc_arm_default_lib_small_exception(self):
|
||||
def test_gcc_arm_c_lib_small_exception(self):
|
||||
"""Test that an exception is raised if the small C library is not supported for a target on the GCC_ARM toolchain."""
|
||||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.default_lib = "small"
|
||||
mock_target.c_lib = "small"
|
||||
del mock_target.default_lib
|
||||
mock_target.supported_c_libs = {"arm": ["std"]}
|
||||
mock_target.default_toolchain = "ARM"
|
||||
mock_target.supported_toolchains = ["ARM", "uARM", "ARMC5"]
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.default_lib)):
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.c_lib)):
|
||||
GCC_ARM(mock_target)
|
||||
|
||||
class TestIarToolchain(TestCase):
|
||||
|
@ -170,7 +177,8 @@ class TestIarToolchain(TestCase):
|
|||
mock_target.core = "Cortex-M4"
|
||||
mock_target.printf_lib = "minimal-printf"
|
||||
mock_target.supported_toolchains = ["IAR"]
|
||||
mock_target.default_lib = "std"
|
||||
del mock_target.default_lib
|
||||
mock_target.c_lib = "std"
|
||||
mock_target.supported_c_libs = {"iar": ["std"]}
|
||||
mock_target.is_TrustZone_secure_target = False
|
||||
|
||||
|
@ -178,35 +186,38 @@ class TestIarToolchain(TestCase):
|
|||
var = "-DMBED_MINIMAL_PRINTF"
|
||||
self.assertIn("-DMBED_MINIMAL_PRINTF", iar_obj.flags["common"])
|
||||
|
||||
def test_iar_default_lib(self):
|
||||
def test_iar_c_lib(self):
|
||||
"""Test that no exception is raised when a supported c library is specified."""
|
||||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.supported_c_libs = {"iar": ["std"]}
|
||||
mock_target.default_lib = "sTD"
|
||||
mock_target.c_lib = "sTD"
|
||||
del mock_target.default_lib
|
||||
mock_target.supported_toolchains = ["IAR"]
|
||||
mock_target.is_TrustZone_secure_target = False
|
||||
try:
|
||||
IAR(mock_target)
|
||||
except NotSupportedException:
|
||||
self.fail(UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.default_lib))
|
||||
self.fail(UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.c_lib))
|
||||
|
||||
def test_iar_default_lib_std_exception(self):
|
||||
def test_iar_c_lib_std_exception(self):
|
||||
"""Test that an exception is raised if the std C library is not supported for a target on the IAR toolchain."""
|
||||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.default_lib = "std"
|
||||
mock_target.c_lib = "std"
|
||||
del mock_target.default_lib
|
||||
mock_target.supported_c_libs = {"iar": ["small"]}
|
||||
mock_target.supported_toolchains = ["IAR"]
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.default_lib)):
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.c_lib)):
|
||||
IAR(mock_target)
|
||||
|
||||
def test_iar_default_lib_small_exception(self):
|
||||
def test_iar_c_lib_small_exception(self):
|
||||
"""Test that an exception is raised if the small C library is not supported for a target on the IAR toolchain."""
|
||||
mock_target = mock.MagicMock()
|
||||
mock_target.core = "Cortex-M4"
|
||||
mock_target.default_lib = "small"
|
||||
mock_target.c_lib = "small"
|
||||
del mock_target.default_lib
|
||||
mock_target.supported_c_libs = {"iar": ["std"]}
|
||||
mock_target.supported_toolchains = ["IAR"]
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.default_lib)):
|
||||
with self.assertRaisesRegexp(NotSupportedException, UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(mock_target.c_lib)):
|
||||
IAR(mock_target)
|
||||
|
|
|
@ -81,7 +81,7 @@ class ARM(mbedToolchain):
|
|||
|
||||
if (
|
||||
getattr(target, "default_toolchain", "ARM") == "uARM"
|
||||
or getattr(target, "default_lib", "std") == "small"
|
||||
or getattr(target, "c_lib", "std") == "small"
|
||||
):
|
||||
if "-DMBED_RTOS_SINGLE_THREAD" not in self.flags['common']:
|
||||
self.flags['common'].append("-DMBED_RTOS_SINGLE_THREAD")
|
||||
|
@ -571,7 +571,7 @@ class ARMC6(ARM_STD):
|
|||
|
||||
if (
|
||||
getattr(target, "default_toolchain", "ARMC6") == "uARM"
|
||||
or getattr(target, "default_lib", "std") == "small"
|
||||
or getattr(target, "c_lib", "std") == "small"
|
||||
):
|
||||
if "-DMBED_RTOS_SINGLE_THREAD" not in self.flags['common']:
|
||||
self.flags['common'].append("-DMBED_RTOS_SINGLE_THREAD")
|
||||
|
|
|
@ -48,14 +48,14 @@ class GCC(mbedToolchain):
|
|||
|
||||
tool_path = TOOLCHAIN_PATHS['GCC_ARM']
|
||||
# Add flags for current size setting
|
||||
default_lib = "std"
|
||||
if hasattr(target, "default_lib"):
|
||||
c_lib = "std"
|
||||
if hasattr(target, "c_lib"):
|
||||
self.check_c_lib_supported(target, "gcc_arm")
|
||||
default_lib = target.default_lib
|
||||
c_lib = target.c_lib
|
||||
elif hasattr(target, "default_build"):
|
||||
default_lib = target.default_build
|
||||
c_lib = target.default_build
|
||||
|
||||
if default_lib == "small":
|
||||
if c_lib == "small":
|
||||
common_flags = ["-DMBED_RTOS_SINGLE_THREAD", "-D__NEWLIB_NANO"]
|
||||
self.flags["common"].extend(common_flags)
|
||||
self.flags["ld"].append("--specs=nano.specs")
|
||||
|
|
|
@ -1103,18 +1103,22 @@ class mbedToolchain(with_metaclass(ABCMeta, object)):
|
|||
"""
|
||||
Check and raise an exception if the requested C library is not supported,
|
||||
|
||||
target.default_lib is modified to have the lowercased string of its original string.
|
||||
target.c_lib is modified to have the lowercased string of its original string.
|
||||
This is done to be case insensitive when validating.
|
||||
"""
|
||||
if hasattr(target, "default_lib"):
|
||||
target.default_lib = target.default_lib.lower()
|
||||
raise NotSupportedException(
|
||||
"target.default_lib is no longer supported, please use target.c_lib for C library selection."
|
||||
)
|
||||
if hasattr(target, "c_lib"):
|
||||
target.c_lib = target.c_lib.lower()
|
||||
if (
|
||||
hasattr(target, "supported_c_libs") == False
|
||||
or toolchain not in target.supported_c_libs
|
||||
or target.default_lib not in target.supported_c_libs[toolchain]
|
||||
or target.c_lib not in target.supported_c_libs[toolchain]
|
||||
):
|
||||
raise NotSupportedException(
|
||||
UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(target.default_lib)
|
||||
UNSUPPORTED_C_LIB_EXCEPTION_STRING.format(target.c_lib)
|
||||
)
|
||||
|
||||
@staticmethod
|
||||
|
|
Loading…
Reference in New Issue