mirror of https://github.com/ARMmbed/mbed-os.git
Merge pull request #14072 from rajkan01/add_cmake_greentea_platform
CMake: Add CMake to platform greentea testpull/14060/head
commit
e917282d60
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-mbed-functional-callback)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-mbed-functional-callback-big)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-mbed-functional-callback-small)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,15 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-mbed-micro-attributes)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
list(APPEND TEST_SOURCE_LIST weak.c attributes.c)
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET} TEST_SOURCES ${TEST_SOURCE_LIST})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-mbed-micro-call-before-main)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-mbed-micro-cpp)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-mbed-micro-div)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,15 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-mbed-micro-static-assert)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
list(APPEND TEST_SOURCE_LIST test_c.c test_cpp.cpp)
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET} TEST_SOURCES ${TEST_SOURCE_LIST})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-circular-buffer)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-filehandle)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-sharedptr)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-singletonptr)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-stream)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-transaction)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-atomic)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-crash-reporting)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-critical-section)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-error-handling)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-minimal-printf-compliance)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET} TEST_SOURCES mbed_printf.c)
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-stats-cpu)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-stats-heap)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-stats-sys)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-stats-thread)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-system-reset)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)
|
||||||
|
|
||||||
|
set(MBED_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../../.. CACHE INTERNAL "")
|
||||||
|
set(TEST_TARGET mbed-platform-wait-ns)
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/mbed_greentea.cmake)
|
||||||
|
|
||||||
|
project(${TEST_TARGET})
|
||||||
|
|
||||||
|
mbed_greentea_cmake_macro(TEST_NAME ${TEST_TARGET})
|
|
@ -76,3 +76,24 @@ If you're running CMake directly, you may need to pass it in yourself as follows
|
||||||
```
|
```
|
||||||
cmake -S <source-dir> -B <build-dir> -DCMAKE_BUILD_TYPE=debug
|
cmake -S <source-dir> -B <build-dir> -DCMAKE_BUILD_TYPE=debug
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## How to build a greentea test
|
||||||
|
|
||||||
|
Install prerequisites suggested in the previous section and follow the below steps to build:
|
||||||
|
* Generate the `.mbedbuild/` configuration directory for the Mbed target you want to run the test on using [mbed-os-example-blinky](https://github.com/ARMmbed/mbed-os-example-blinky)
|
||||||
|
```
|
||||||
|
$ mbedtools configure -t <TOOLCHAIN> -m <MBED_TARGET>
|
||||||
|
```
|
||||||
|
* Copy `.mbedbuild/` into the test suite directory.
|
||||||
|
* Set your current directory to the test suite directory
|
||||||
|
* Run the following command to build the test binary with the full profile
|
||||||
|
|
||||||
|
```
|
||||||
|
touch mbed-os.lib && mkdir cmake_build && cd cmake_build && cmake .. -G Ninja && cmake --build .
|
||||||
|
```
|
||||||
|
* Run the following command to build the test binary with the baremetal profile
|
||||||
|
```
|
||||||
|
touch mbed-os.lib && mkdir cmake_build && cd cmake_build && cmake .. -G Ninja -DMBED_BAREMETAL_GREENTEA_TEST=ON && cmake --build .
|
||||||
|
```
|
||||||
|
|
||||||
|
Note: These steps will change when `mbedtools` implements a sub-command to invoke Greentea tests
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
# Copyright (c) 2020 ARM Limited. All rights reserved.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
set(MBED_CONFIG_PATH ${CMAKE_CURRENT_SOURCE_DIR}/.mbedbuild CACHE INTERNAL "")
|
||||||
|
|
||||||
|
include(${MBED_PATH}/tools/cmake/app.cmake)
|
||||||
|
|
||||||
|
# CMake Macro for generalizing CMake configuration across the greentea test suite with configurable parameters
|
||||||
|
# Macro args:
|
||||||
|
# TEST_NAME - Test suite name
|
||||||
|
# TEST_INCLUDE_DIRS - Test suite include directories for the test
|
||||||
|
# TEST_SOURCES - Test suite sources
|
||||||
|
# TEST_REQUIRED_LIBS - Test suite required libraries
|
||||||
|
#
|
||||||
|
# calling the macro:
|
||||||
|
# mbed_greentea_cmake_macro(
|
||||||
|
# TEST_NAME mbed-platform-system-reset
|
||||||
|
# TEST_INCLUDE_DIRS mbed_store
|
||||||
|
# TEST_SOURCES foo.cpp bar.cpp
|
||||||
|
# TEST_REQUIRED_LIBS mbed-kvstore mbed-xyz
|
||||||
|
# )
|
||||||
|
|
||||||
|
macro(mbed_greentea_cmake_macro)
|
||||||
|
set(options)
|
||||||
|
set(singleValueArgs TEST_NAME)
|
||||||
|
set(multipleValueArgs
|
||||||
|
TEST_INCLUDE_DIRS
|
||||||
|
TEST_SOURCES
|
||||||
|
TEST_REQUIRED_LIBS
|
||||||
|
)
|
||||||
|
cmake_parse_arguments(MBED_GREENTEA
|
||||||
|
"${options}"
|
||||||
|
"${singleValueArgs}"
|
||||||
|
"${multipleValueArgs}"
|
||||||
|
${ARGN}
|
||||||
|
)
|
||||||
|
|
||||||
|
set(TEST_NAME ${MBED_GREENTEA_TEST_NAME})
|
||||||
|
|
||||||
|
add_subdirectory(${MBED_PATH} build)
|
||||||
|
|
||||||
|
add_executable(${TEST_NAME})
|
||||||
|
|
||||||
|
mbed_configure_app_target(${TEST_NAME})
|
||||||
|
|
||||||
|
mbed_set_mbed_target_linker_script(${TEST_NAME})
|
||||||
|
|
||||||
|
target_include_directories(${TEST_NAME}
|
||||||
|
PRIVATE
|
||||||
|
.
|
||||||
|
${MBED_GREENTEA_TEST_INCLUDE_DIRS}
|
||||||
|
)
|
||||||
|
|
||||||
|
target_sources(${TEST_NAME}
|
||||||
|
PRIVATE
|
||||||
|
main.cpp
|
||||||
|
${MBED_GREENTEA_TEST_SOURCES}
|
||||||
|
)
|
||||||
|
|
||||||
|
if(MBED_BAREMETAL_GREENTEA_TEST)
|
||||||
|
list(APPEND MBED_GREENTEA_TEST_REQUIRED_LIBS mbed-baremetal mbed-greentea)
|
||||||
|
else()
|
||||||
|
list(APPEND MBED_GREENTEA_TEST_REQUIRED_LIBS mbed-os mbed-greentea)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
target_link_libraries(${TEST_NAME}
|
||||||
|
PRIVATE
|
||||||
|
${MBED_GREENTEA_TEST_REQUIRED_LIBS}
|
||||||
|
)
|
||||||
|
|
||||||
|
mbed_set_post_build(${TEST_NAME})
|
||||||
|
|
||||||
|
option(VERBOSE_BUILD "Have a verbose build process")
|
||||||
|
if(VERBOSE_BUILD)
|
||||||
|
set(CMAKE_VERBOSE_MAKEFILE ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
endmacro()
|
Loading…
Reference in New Issue