From 9596c1beea9a9c01b5409dd37c76dfa07b6fa75d Mon Sep 17 00:00:00 2001 From: Rajkumar Kanagaraj Date: Tue, 22 Dec 2020 10:28:27 -0800 Subject: [PATCH 1/4] CMake: Add platform greentea test with CMake --- .../TESTS/mbed_functional/callback/CMakeLists.txt | 13 +++++++++++++ .../mbed_functional/callback_big/CMakeLists.txt | 13 +++++++++++++ .../mbed_functional/callback_small/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_micro/attributes/CMakeLists.txt | 15 +++++++++++++++ .../mbed_micro/call_before_main/CMakeLists.txt | 13 +++++++++++++ .../tests/TESTS/mbed_micro/cpp/CMakeLists.txt | 13 +++++++++++++ .../tests/TESTS/mbed_micro/div/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_micro/static_assert/CMakeLists.txt | 15 +++++++++++++++ .../mbed_platform/CircularBuffer/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_platform/FileHandle/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_platform/SharedPtr/CMakeLists.txt | 13 +++++++++++++ .../mbed_platform/SingletonPtr/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_platform/Stream/CMakeLists.txt | 13 +++++++++++++ .../mbed_platform/Transaction/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_platform/atomic/CMakeLists.txt | 13 +++++++++++++ .../mbed_platform/crash_reporting/CMakeLists.txt | 13 +++++++++++++ .../mbed_platform/critical_section/CMakeLists.txt | 13 +++++++++++++ .../mbed_platform/error_handling/CMakeLists.txt | 13 +++++++++++++ .../minimal-printf/compliance/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_platform/stats_cpu/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_platform/stats_heap/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_platform/stats_sys/CMakeLists.txt | 13 +++++++++++++ .../mbed_platform/stats_thread/CMakeLists.txt | 13 +++++++++++++ .../mbed_platform/system_reset/CMakeLists.txt | 13 +++++++++++++ .../TESTS/mbed_platform/wait_ns/CMakeLists.txt | 13 +++++++++++++ 25 files changed, 329 insertions(+) create mode 100644 platform/tests/TESTS/mbed_functional/callback/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_functional/callback_big/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_functional/callback_small/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_micro/attributes/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_micro/call_before_main/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_micro/cpp/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_micro/div/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_micro/static_assert/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/CircularBuffer/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/FileHandle/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/SharedPtr/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/SingletonPtr/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/Stream/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/Transaction/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/atomic/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/crash_reporting/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/critical_section/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/error_handling/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/minimal-printf/compliance/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/stats_cpu/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/stats_heap/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/stats_sys/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/stats_thread/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/system_reset/CMakeLists.txt create mode 100644 platform/tests/TESTS/mbed_platform/wait_ns/CMakeLists.txt diff --git a/platform/tests/TESTS/mbed_functional/callback/CMakeLists.txt b/platform/tests/TESTS/mbed_functional/callback/CMakeLists.txt new file mode 100644 index 0000000000..a73ae51215 --- /dev/null +++ b/platform/tests/TESTS/mbed_functional/callback/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_functional/callback_big/CMakeLists.txt b/platform/tests/TESTS/mbed_functional/callback_big/CMakeLists.txt new file mode 100644 index 0000000000..5963f51f4b --- /dev/null +++ b/platform/tests/TESTS/mbed_functional/callback_big/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_functional/callback_small/CMakeLists.txt b/platform/tests/TESTS/mbed_functional/callback_small/CMakeLists.txt new file mode 100644 index 0000000000..54adf70846 --- /dev/null +++ b/platform/tests/TESTS/mbed_functional/callback_small/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_micro/attributes/CMakeLists.txt b/platform/tests/TESTS/mbed_micro/attributes/CMakeLists.txt new file mode 100644 index 0000000000..5a9ec666f8 --- /dev/null +++ b/platform/tests/TESTS/mbed_micro/attributes/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_micro/call_before_main/CMakeLists.txt b/platform/tests/TESTS/mbed_micro/call_before_main/CMakeLists.txt new file mode 100644 index 0000000000..7a1e30b31c --- /dev/null +++ b/platform/tests/TESTS/mbed_micro/call_before_main/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_micro/cpp/CMakeLists.txt b/platform/tests/TESTS/mbed_micro/cpp/CMakeLists.txt new file mode 100644 index 0000000000..f3635a3429 --- /dev/null +++ b/platform/tests/TESTS/mbed_micro/cpp/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_micro/div/CMakeLists.txt b/platform/tests/TESTS/mbed_micro/div/CMakeLists.txt new file mode 100644 index 0000000000..0add5bc066 --- /dev/null +++ b/platform/tests/TESTS/mbed_micro/div/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_micro/static_assert/CMakeLists.txt b/platform/tests/TESTS/mbed_micro/static_assert/CMakeLists.txt new file mode 100644 index 0000000000..7da08b8c29 --- /dev/null +++ b/platform/tests/TESTS/mbed_micro/static_assert/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/CircularBuffer/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/CircularBuffer/CMakeLists.txt new file mode 100644 index 0000000000..297273f0de --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/CircularBuffer/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/FileHandle/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/FileHandle/CMakeLists.txt new file mode 100644 index 0000000000..f5ab21b630 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/FileHandle/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/SharedPtr/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/SharedPtr/CMakeLists.txt new file mode 100644 index 0000000000..39ba0319f6 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/SharedPtr/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/SingletonPtr/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/SingletonPtr/CMakeLists.txt new file mode 100644 index 0000000000..9a20d6d43e --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/SingletonPtr/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/Stream/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/Stream/CMakeLists.txt new file mode 100644 index 0000000000..0fde0adf56 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/Stream/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/Transaction/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/Transaction/CMakeLists.txt new file mode 100644 index 0000000000..f78777cfb7 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/Transaction/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/atomic/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/atomic/CMakeLists.txt new file mode 100644 index 0000000000..8020cfba88 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/atomic/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/crash_reporting/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/crash_reporting/CMakeLists.txt new file mode 100644 index 0000000000..3a1e96fd42 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/crash_reporting/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/critical_section/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/critical_section/CMakeLists.txt new file mode 100644 index 0000000000..2da02fb5fb --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/critical_section/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/error_handling/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/error_handling/CMakeLists.txt new file mode 100644 index 0000000000..8d6317cdeb --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/error_handling/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/minimal-printf/compliance/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/minimal-printf/compliance/CMakeLists.txt new file mode 100644 index 0000000000..a21f584418 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/minimal-printf/compliance/CMakeLists.txt @@ -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) diff --git a/platform/tests/TESTS/mbed_platform/stats_cpu/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/stats_cpu/CMakeLists.txt new file mode 100644 index 0000000000..058476a342 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/stats_cpu/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/stats_heap/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/stats_heap/CMakeLists.txt new file mode 100644 index 0000000000..45606084c5 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/stats_heap/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/stats_sys/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/stats_sys/CMakeLists.txt new file mode 100644 index 0000000000..670b5714d9 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/stats_sys/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/stats_thread/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/stats_thread/CMakeLists.txt new file mode 100644 index 0000000000..6d066d3242 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/stats_thread/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/system_reset/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/system_reset/CMakeLists.txt new file mode 100644 index 0000000000..815364a63e --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/system_reset/CMakeLists.txt @@ -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}) diff --git a/platform/tests/TESTS/mbed_platform/wait_ns/CMakeLists.txt b/platform/tests/TESTS/mbed_platform/wait_ns/CMakeLists.txt new file mode 100644 index 0000000000..d4969d0953 --- /dev/null +++ b/platform/tests/TESTS/mbed_platform/wait_ns/CMakeLists.txt @@ -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}) From bcbd243b1bd6c78fd255a211ec07c46e859f2e6c Mon Sep 17 00:00:00 2001 From: Rajkumar Kanagaraj Date: Tue, 22 Dec 2020 10:29:10 -0800 Subject: [PATCH 2/4] Create Greentea CMake Macro --- tools/cmake/mbed_greentea.cmake | 65 +++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 tools/cmake/mbed_greentea.cmake diff --git a/tools/cmake/mbed_greentea.cmake b/tools/cmake/mbed_greentea.cmake new file mode 100644 index 0000000000..19337e0eed --- /dev/null +++ b/tools/cmake/mbed_greentea.cmake @@ -0,0 +1,65 @@ +# Copyright (c) 2020 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0# the macro + +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() From 634d3be5f0678ab422452976ea401af1124ebf07 Mon Sep 17 00:00:00 2001 From: Rajkumar Kanagaraj Date: Wed, 23 Dec 2020 02:58:32 -0800 Subject: [PATCH 3/4] Incorporating the review comments --- tools/cmake/README.md | 17 +++++++ tools/cmake/mbed_greentea.cmake | 79 +++++++++++++++++++-------------- 2 files changed, 63 insertions(+), 33 deletions(-) diff --git a/tools/cmake/README.md b/tools/cmake/README.md index dba3c26bb8..cc72ae6f73 100644 --- a/tools/cmake/README.md +++ b/tools/cmake/README.md @@ -76,3 +76,20 @@ If you're running CMake directly, you may need to pass it in yourself as follows ``` cmake -S -B -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 .mbed_build configuration for DISCO_L475VG_IOT01A target from blinky example and copied into the test_suite directory. +* Change directory into the test suite directory +* run below command to build full profile green tea + + ``` + touch mbed-os.lib;mkdir build;cd build;cmake .. -GNinja;cmake --build . + ``` +* run below command to build baremetal profile green tea + ``` + touch mbed-os.lib;mkdir build;cd build;cmake .. -GNinja -DMBED_BAREMETAL_GREENTEA_TEST=ON;cmake --build . + ``` + +Note: This steps will get evolve once mbedtools have a proper way of invoking greentea test using mbedtools command diff --git a/tools/cmake/mbed_greentea.cmake b/tools/cmake/mbed_greentea.cmake index 19337e0eed..71533fc8ae 100644 --- a/tools/cmake/mbed_greentea.cmake +++ b/tools/cmake/mbed_greentea.cmake @@ -1,5 +1,5 @@ # Copyright (c) 2020 ARM Limited. All rights reserved. -# SPDX-License-Identifier: Apache-2.0# the macro +# SPDX-License-Identifier: Apache-2.0 set(MBED_CONFIG_PATH ${CMAKE_CURRENT_SOURCE_DIR}/.mbedbuild CACHE INTERNAL "") @@ -13,53 +13,66 @@ include(${MBED_PATH}/tools/cmake/app.cmake) # 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) +# 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(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}) + set(TEST_NAME ${MBED_GREENTEA_TEST_NAME}) -add_subdirectory(${MBED_PATH} build) + add_subdirectory(${MBED_PATH} build) -add_executable(${TEST_NAME}) + add_executable(${TEST_NAME}) -mbed_configure_app_target(${TEST_NAME}) + mbed_configure_app_target(${TEST_NAME}) -mbed_set_mbed_target_linker_script(${TEST_NAME}) + mbed_set_mbed_target_linker_script(${TEST_NAME}) -target_include_directories(${TEST_NAME} - PRIVATE - . - ${MBED_GREENTEA_TEST_INCLUDE_DIRS} -) + target_include_directories(${TEST_NAME} + PRIVATE + . + ${MBED_GREENTEA_TEST_INCLUDE_DIRS} + ) -target_sources(${TEST_NAME} - PRIVATE - main.cpp - ${MBED_GREENTEA_TEST_SOURCES} -) + 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() + 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() + endif() -target_link_libraries(${TEST_NAME} - PRIVATE - ${MBED_GREENTEA_TEST_REQUIRED_LIBS} -) + target_link_libraries(${TEST_NAME} + PRIVATE + ${MBED_GREENTEA_TEST_REQUIRED_LIBS} + ) -mbed_set_post_build(${TEST_NAME}) + mbed_set_post_build(${TEST_NAME}) -option(VERBOSE_BUILD "Have a verbose build process") -if(VERBOSE_BUILD) - set(CMAKE_VERBOSE_MAKEFILE ON) -endif() + option(VERBOSE_BUILD "Have a verbose build process") + if(VERBOSE_BUILD) + set(CMAKE_VERBOSE_MAKEFILE ON) + endif() endmacro() From eb9bb7bf3318e42313f45f14f6837e330e1cf530 Mon Sep 17 00:00:00 2001 From: Rajkumar Kanagaraj <45570536+rajkan01@users.noreply.github.com> Date: Wed, 23 Dec 2020 08:29:22 -0800 Subject: [PATCH 4/4] Apply suggestions from code review Co-authored-by: Hugues Kamba <41612201+hugueskamba@users.noreply.github.com> --- tools/cmake/README.md | 18 +++++++++++------- tools/cmake/mbed_greentea.cmake | 18 +++++++++--------- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/tools/cmake/README.md b/tools/cmake/README.md index cc72ae6f73..e027944b45 100644 --- a/tools/cmake/README.md +++ b/tools/cmake/README.md @@ -80,16 +80,20 @@ cmake -S -B -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 .mbed_build configuration for DISCO_L475VG_IOT01A target from blinky example and copied into the test_suite directory. -* Change directory into the test suite directory -* run below command to build full profile green tea +* 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 -m +``` +* 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 build;cd build;cmake .. -GNinja;cmake --build . + touch mbed-os.lib && mkdir cmake_build && cd cmake_build && cmake .. -G Ninja && cmake --build . ``` -* run below command to build baremetal profile green tea +* Run the following command to build the test binary with the baremetal profile ``` - touch mbed-os.lib;mkdir build;cd build;cmake .. -GNinja -DMBED_BAREMETAL_GREENTEA_TEST=ON;cmake --build . + touch mbed-os.lib && mkdir cmake_build && cd cmake_build && cmake .. -G Ninja -DMBED_BAREMETAL_GREENTEA_TEST=ON && cmake --build . ``` -Note: This steps will get evolve once mbedtools have a proper way of invoking greentea test using mbedtools command +Note: These steps will change when `mbedtools` implements a sub-command to invoke Greentea tests diff --git a/tools/cmake/mbed_greentea.cmake b/tools/cmake/mbed_greentea.cmake index 71533fc8ae..a477196e33 100644 --- a/tools/cmake/mbed_greentea.cmake +++ b/tools/cmake/mbed_greentea.cmake @@ -23,16 +23,16 @@ include(${MBED_PATH}/tools/cmake/app.cmake) macro(mbed_greentea_cmake_macro) set(options) set(singleValueArgs TEST_NAME) - set(multipleValueArgs - TEST_INCLUDE_DIRS - TEST_SOURCES - TEST_REQUIRED_LIBS + set(multipleValueArgs + TEST_INCLUDE_DIRS + TEST_SOURCES + TEST_REQUIRED_LIBS ) - cmake_parse_arguments(MBED_GREENTEA - "${options}" - "${singleValueArgs}" - "${multipleValueArgs}" - ${ARGN} + cmake_parse_arguments(MBED_GREENTEA + "${options}" + "${singleValueArgs}" + "${multipleValueArgs}" + ${ARGN} ) set(TEST_NAME ${MBED_GREENTEA_TEST_NAME})