tools: Support default_lib and c_lib

For backwards compatibility reasons, since the latest Mbed OS tools must
be able to build any previous online-compiler-supported version of Mbed
OS, allow targets to use `default_lib` or `c_lib`. This should enable
the tools to work with Mbed OS 5 style targets.json.
pull/13007/head
Jaeden Amero 2020-05-22 14:56:23 +01:00
parent 8be07a4906
commit 5e65cf7f4d
1 changed files with 6 additions and 5 deletions

View File

@ -1097,11 +1097,12 @@ class mbedToolchain(with_metaclass(ABCMeta, object)):
target.c_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. This is done to be case insensitive when validating.
""" """
if hasattr(target, "default_lib"): if hasattr(target, "default_lib"):
raise NotSupportedException( # Use default_lib as the c_lib attribute. This allows backwards
"target.default_lib is no longer supported, please use target.c_lib for C library selection." # compatibility with older target definitions, allowing either
) # default_lib or c_lib to specify the C library to use.
if hasattr(target, "c_lib"): target.c_lib = target.default_lib.lower()
if hasattr(target, "c_lib"):
target.c_lib = target.c_lib.lower() target.c_lib = target.c_lib.lower()
if ( if (
hasattr(target, "supported_c_libs") == False hasattr(target, "supported_c_libs") == False