diff --git a/targets/TARGET_Ambiq_Micro/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/CMakeLists.txt index e02ce2dbb1e..cf589277f29 100644 --- a/targets/TARGET_Ambiq_Micro/CMakeLists.txt +++ b/targets/TARGET_Ambiq_Micro/CMakeLists.txt @@ -1,17 +1,17 @@ -# Copyright (c) 2020 ARM Limited. All rights reserved. +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. # SPDX-License-Identifier: Apache-2.0 -if("Apollo3" IN_LIST MBED_TARGET_LABELS) - add_subdirectory(TARGET_Apollo3) -endif() +add_subdirectory(TARGET_Apollo3 EXCLUDE_FROM_ALL) -target_include_directories(mbed-core +add_library(mbed-ambiq-micro INTERFACE) + +target_include_directories(mbed-ambiq-micro INTERFACE sdk/devices sdk/utils ) -target_sources(mbed-core +target_sources(mbed-ambiq-micro INTERFACE sdk/devices/am_devices_button.c sdk/devices/am_devices_led.c diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/CMakeLists.txt index 1a0bb080ed6..cc56e6c42ac 100644 --- a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/CMakeLists.txt +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/CMakeLists.txt @@ -1,128 +1,19 @@ -# Copyright (c) 2020 ARM Limited. All rights reserved. +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. # SPDX-License-Identifier: Apache-2.0 -if("hm01b0" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - COMPONENT_hm01b0/hm01b0 - ) +add_subdirectory(COMPONENT_hm01b0/hm01b0 EXCLUDE_FROM_ALL) +add_subdirectory(COMPONENT_lis2dh12/lis2dh12 EXCLUDE_FROM_ALL) - target_sources(mbed-core - INTERFACE - COMPONENT_hm01b0/hm01b0/HM01B0.c - ) -endif() - -if("lis2dh12" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - COMPONENT_lis2dh12/lis2dh12 - ) - - target_sources(mbed-core - INTERFACE - COMPONENT_lis2dh12/lis2dh12/lis2dh12_platform_apollo3.c - COMPONENT_lis2dh12/lis2dh12/lis2dh12_reg.c - ) -endif() - -if("SFE_ARTEMIS" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS - TARGET_SFE_ARTEMIS/bsp - ) - - target_sources(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS/bsp/am_bsp.c - TARGET_SFE_ARTEMIS/bsp/am_bsp_pins.c - ) -elseif("SFE_ARTEMIS_ATP" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_ATP - TARGET_SFE_ARTEMIS_ATP/bsp - ) - - target_sources(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_ATP/bsp/am_bsp.c - TARGET_SFE_ARTEMIS_ATP/bsp/am_bsp_pins.c - ) -elseif("SFE_ARTEMIS_DK" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_DK - TARGET_SFE_ARTEMIS_DK/bsp - ) +add_subdirectory(TARGET_SFE_ARTEMIS EXCLUDE_FROM_ALL) +add_subdirectory(TARGET_SFE_ARTEMIS_ATP EXCLUDE_FROM_ALL) +add_subdirectory(TARGET_SFE_ARTEMIS_DK EXCLUDE_FROM_ALL) +add_subdirectory(TARGET_SFE_ARTEMIS_MODULE EXCLUDE_FROM_ALL) +add_subdirectory(TARGET_SFE_ARTEMIS_NANO EXCLUDE_FROM_ALL) +add_subdirectory(TARGET_SFE_ARTEMIS_THING_PLUS EXCLUDE_FROM_ALL) +add_subdirectory(TARGET_SFE_EDGE EXCLUDE_FROM_ALL) +add_subdirectory(TARGET_SFE_EDGE2 EXCLUDE_FROM_ALL) - target_sources(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_DK/bsp/am_bsp.c - TARGET_SFE_ARTEMIS_DK/bsp/am_bsp_pins.c - ) -elseif("SFE_ARTEMIS_MODULE" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_MODULE - TARGET_SFE_ARTEMIS_MODULE/bsp - ) - - target_sources(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_MODULE/bsp/am_bsp.c - TARGET_SFE_ARTEMIS_MODULE/bsp/am_bsp_pins.c - ) -elseif("SFE_ARTEMIS_NANO" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_NANO - TARGET_SFE_ARTEMIS_NANO/bsp - ) - - target_sources(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_NANO/bsp/am_bsp.c - TARGET_SFE_ARTEMIS_NANO/bsp/am_bsp_pins.c - ) -elseif("SFE_ARTEMIS_THING_PLUS" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_THING_PLUS - TARGET_SFE_ARTEMIS_THING_PLUS/bsp - ) - - target_sources(mbed-core - INTERFACE - TARGET_SFE_ARTEMIS_THING_PLUS/bsp/am_bsp.c - TARGET_SFE_ARTEMIS_THING_PLUS/bsp/am_bsp_pins.c - ) -elseif("SFE_EDGE" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - TARGET_SFE_EDGE - TARGET_SFE_EDGE/bsp - ) - - target_sources(mbed-core - INTERFACE - TARGET_SFE_EDGE/bsp/am_bsp.c - TARGET_SFE_EDGE/bsp/am_bsp_pins.c - ) -elseif("SFE_EDGE2" IN_LIST MBED_TARGET_LABELS) - target_include_directories(mbed-core - INTERFACE - TARGET_SFE_EDGE2 - TARGET_SFE_EDGE2/bsp - ) - - target_sources(mbed-core - INTERFACE - TARGET_SFE_EDGE2/bsp/am_bsp.c - TARGET_SFE_EDGE2/bsp/am_bsp_pins.c - ) -endif() +add_library(mbed-apollo3 INTERFACE) if(${MBED_TOOLCHAIN} STREQUAL "ARM") set(LINKER_FILE TOOLCHAIN_ARM_STD/AMA3B1KK.sct) @@ -132,9 +23,9 @@ elseif(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM") set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_gcc.c) endif() -set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE}) +mbed_set_linker_script(mbed-apollo3 ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE}) -target_include_directories(mbed-core +target_include_directories(mbed-apollo3 INTERFACE device sdk/CMSIS/AmbiqMicro/Include @@ -144,7 +35,7 @@ target_include_directories(mbed-core sdk/mcu/apollo3/regs ) -target_sources(mbed-core +target_sources(mbed-apollo3 INTERFACE device/PeripheralPinConfigs.c device/PeripheralPins.c @@ -200,7 +91,8 @@ target_sources(mbed-core ${STARTUP_FILE} ) -target_link_libraries(mbed-core +target_link_libraries(mbed-apollo3 INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/sdk/CMSIS/ARM/Lib/ARM/libarm_cortexM4lf_math.a + mbed-ambiq-micro ) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_hm01b0/hm01b0/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_hm01b0/hm01b0/CMakeLists.txt new file mode 100644 index 00000000000..0527d2a60cc --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_hm01b0/hm01b0/CMakeLists.txt @@ -0,0 +1,16 @@ +# Copyright (c) 2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-hm01b0 INTERFACE) + +target_include_directories(mbed-hm01b0 + INTERFACE + . +) + +target_sources(mbed-hm01b0 + INTERFACE + HM01B0.c +) + +target_link_libraries(mbed-hm01b0 INTERFACE mbed-apollo3) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_lis2dh12/lis2dh12/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_lis2dh12/lis2dh12/CMakeLists.txt new file mode 100644 index 00000000000..95a48614ec1 --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_lis2dh12/lis2dh12/CMakeLists.txt @@ -0,0 +1,17 @@ +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-lis2dh12 INTERFACE) + +target_include_directories(mbed-lis2dh12 + INTERFACE + . +) + +target_sources(mbed-lis2dh12 + INTERFACE + lis2dh12_platform_apollo3.c + lis2dh12_reg.c +) + +target_link_libraries(mbed-lis2dh12 INTERFACE mbed-apollo3) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS/CMakeLists.txt new file mode 100644 index 00000000000..0e8ef465cad --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS/CMakeLists.txt @@ -0,0 +1,18 @@ +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-sfe-artemis INTERFACE) + +target_include_directories(mbed-sfe-artemis + INTERFACE + . + bsp +) + +target_sources(mbed-sfe-artemis + INTERFACE + bsp/am_bsp.c + bsp/am_bsp_pins.c +) + +target_link_libraries(mbed-sfe-artemis INTERFACE mbed-apollo3) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_ATP/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_ATP/CMakeLists.txt new file mode 100644 index 00000000000..f4101fa5b48 --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_ATP/CMakeLists.txt @@ -0,0 +1,18 @@ +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-sfe-artemis-atp INTERFACE) + +target_include_directories(mbed-sfe-artemis-atp + INTERFACE + . + bsp +) + +target_sources(mbed-sfe-artemis-atp + INTERFACE + bsp/am_bsp.c + bsp/am_bsp_pins.c +) + +target_link_libraries(mbed-sfe-artemis-atp INTERFACE mbed-apollo3) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_DK/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_DK/CMakeLists.txt new file mode 100644 index 00000000000..a579b363567 --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_DK/CMakeLists.txt @@ -0,0 +1,18 @@ +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-sfe-artemis-dk INTERFACE) + +target_include_directories(mbed-sfe-artemis-dk + INTERFACE + . + bsp +) + +target_sources(mbed-sfe-artemis-dk + INTERFACE + bsp/am_bsp.c + bsp/am_bsp_pins.c +) + +target_link_libraries(mbed-sfe-artemis-dk INTERFACE mbed-apollo3) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_MODULE/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_MODULE/CMakeLists.txt new file mode 100644 index 00000000000..26c4a222fc8 --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_MODULE/CMakeLists.txt @@ -0,0 +1,18 @@ +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-sfe-artemis-module INTERFACE) + +target_include_directories(mbed-sfe-artemis-module + INTERFACE + . + bsp +) + +target_sources(mbed-sfe-artemis-module + INTERFACE + bsp/am_bsp.c + bsp/am_bsp_pins.c +) + +target_link_libraries(mbed-sfe-artemis-module INTERFACE mbed-apollo3) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_NANO/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_NANO/CMakeLists.txt new file mode 100644 index 00000000000..30ae273dd94 --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_NANO/CMakeLists.txt @@ -0,0 +1,18 @@ +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-sfe-artemis-nano INTERFACE) + +target_include_directories(mbed-sfe-artemis-nano + INTERFACE + . + bsp +) + +target_sources(mbed-sfe-artemis-nano + INTERFACE + bsp/am_bsp.c + bsp/am_bsp_pins.c +) + +target_link_libraries(mbed-sfe-artemis-nano INTERFACE mbed-apollo3) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_THING_PLUS/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_THING_PLUS/CMakeLists.txt new file mode 100644 index 00000000000..09a156b6ff4 --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_THING_PLUS/CMakeLists.txt @@ -0,0 +1,18 @@ +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-sfe-artemis-thing-plus INTERFACE) + +target_include_directories(mbed-sfe-artemis-thing-plus + INTERFACE + . + bsp +) + +target_sources(mbed-sfe-artemis-thing-plus + INTERFACE + bsp/am_bsp.c + bsp/am_bsp_pins.c +) + +target_link_libraries(mbed-sfe-artemis-thing-plus INTERFACE mbed-apollo3) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_EDGE/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_EDGE/CMakeLists.txt new file mode 100644 index 00000000000..45980d3f292 --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_EDGE/CMakeLists.txt @@ -0,0 +1,18 @@ +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-sfe-edge INTERFACE) + +target_include_directories(mbed-sfe-edge + INTERFACE + . + bsp +) + +target_sources(mbed-sfe-edge + INTERFACE + bsp/am_bsp.c + bsp/am_bsp_pins.c +) + +target_link_libraries(mbed-sfe-edge INTERFACE mbed-apollo3) diff --git a/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_EDGE2/CMakeLists.txt b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_EDGE2/CMakeLists.txt new file mode 100644 index 00000000000..cc34416f315 --- /dev/null +++ b/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_EDGE2/CMakeLists.txt @@ -0,0 +1,18 @@ +# Copyright (c) 2020-2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-sfe-edge2 INTERFACE) + +target_include_directories(mbed-sfe-edge2 + INTERFACE + . + bsp +) + +target_sources(mbed-sfe-edge2 + INTERFACE + bsp/am_bsp.c + bsp/am_bsp_pins.c +) + +target_link_libraries(mbed-sfe-edge2 INTERFACE mbed-apollo3)