mirror of https://github.com/ARMmbed/mbed-os.git
Merge pull request #6540 from theotherjimmy/compile-check
Prevent compiling with unsupported compilerspull/6735/head
commit
b33ab748a7
|
@ -289,6 +289,13 @@ def get_mbed_official_release(version):
|
||||||
|
|
||||||
return mbed_official_release
|
return mbed_official_release
|
||||||
|
|
||||||
|
ARM_COMPILERS = ("ARM", "ARMC6", "uARM")
|
||||||
|
def target_supports_toolchain(target, toolchain_name):
|
||||||
|
if toolchain_name in ARM_COMPILERS:
|
||||||
|
return any(tc in target.supported_toolchains for tc in ARM_COMPILERS)
|
||||||
|
else:
|
||||||
|
return toolchain_name in target.supported_toolchains
|
||||||
|
|
||||||
|
|
||||||
def prepare_toolchain(src_paths, build_dir, target, toolchain_name,
|
def prepare_toolchain(src_paths, build_dir, target, toolchain_name,
|
||||||
macros=None, clean=False, jobs=1,
|
macros=None, clean=False, jobs=1,
|
||||||
|
@ -322,6 +329,11 @@ def prepare_toolchain(src_paths, build_dir, target, toolchain_name,
|
||||||
# If the configuration object was not yet created, create it now
|
# If the configuration object was not yet created, create it now
|
||||||
config = config or Config(target, src_paths, app_config=app_config)
|
config = config or Config(target, src_paths, app_config=app_config)
|
||||||
target = config.target
|
target = config.target
|
||||||
|
if not target_supports_toolchain(target, toolchain_name):
|
||||||
|
raise NotSupportedException(
|
||||||
|
"Target {} is not supported by toolchain {}".format(
|
||||||
|
target.name, toolchain_name))
|
||||||
|
|
||||||
try:
|
try:
|
||||||
cur_tc = TOOLCHAIN_CLASSES[toolchain_name]
|
cur_tc = TOOLCHAIN_CLASSES[toolchain_name]
|
||||||
except KeyError:
|
except KeyError:
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"features": [],
|
"features": [],
|
||||||
"default_lib": "std"
|
"default_lib": "std",
|
||||||
|
"supported_toolchains": ["GCC_ARM"]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"base": {
|
"base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"first_base": {
|
"first_base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
|
@ -10,6 +11,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"second_base": {
|
"second_base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"test_target": {
|
"test_target": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"features": [],
|
"features": [],
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"test_target": {
|
"test_target": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"features": [],
|
"features": [],
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"test_target": {
|
"test_target": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"features": [],
|
"features": [],
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"test_target": {
|
"test_target": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"features": ["IPV4"],
|
"features": ["IPV4"],
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"test_target": {
|
"test_target": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"features": [],
|
"features": [],
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"test_target": {
|
"test_target": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"features": [],
|
"features": [],
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"base": {
|
"base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0"
|
"core": "Cortex-M0"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"base": {
|
"base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0"
|
"core": "Cortex-M0"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"base": {
|
"base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"base": {
|
"base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"first_base_target": {
|
"first_base_target": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
|
@ -21,6 +22,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"second_base_target": {
|
"second_base_target": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"config": {
|
"config": {
|
||||||
"base2_1": "v_base2_1_b2",
|
"base2_1": "v_base2_1_b2",
|
||||||
"base2_2": "v_base2_2_b2"
|
"base2_2": "v_base2_2_b2"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"base": {
|
"base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0"
|
"core": "Cortex-M0"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"base": {
|
"base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0"
|
"core": "Cortex-M0"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"test_target": {
|
"test_target": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"features": [],
|
"features": [],
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"first_base": {
|
"first_base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"extra_labels": [],
|
"extra_labels": [],
|
||||||
"default_lib": "std",
|
"default_lib": "std",
|
||||||
"core": "Cortex-M0",
|
"core": "Cortex-M0",
|
||||||
|
@ -21,6 +22,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"second_base": {
|
"second_base": {
|
||||||
|
"supported_toolchains": ["GCC_ARM"],
|
||||||
"config": {
|
"config": {
|
||||||
"base2_1": "v_base2_1_b2",
|
"base2_1": "v_base2_1_b2",
|
||||||
"base2_2": "v_base2_2_b2"
|
"base2_2": "v_base2_2_b2"
|
||||||
|
|
Loading…
Reference in New Issue