mirror of
https://github.com/espressif/openthread.git
synced 2026-08-03 01:17:46 +00:00
A default OTNS platform API function otPlatOtnsStatus() is now provided that writes the status push to the log always (regardless of configured log level). This is useful as a default handling for apps built with -DOT_OTNS=ON, avoiding linker errors while not mandating each platform to implement the API by itself. Specifically it enables the Posix CLI app ot-cli to be built with OTNS support, which is required to run Posix nodes in OTNS and receive the status-push events via stdout logging. The logging is emitted from the module named "Otns" so that a simulator or other tool can easily detect the OTNS format status push events in the log output.
63 lines
2.5 KiB
CMake
63 lines
2.5 KiB
CMake
#
|
|
# Copyright (c) 2019, The OpenThread Authors.
|
|
# All rights reserved.
|
|
#
|
|
# Redistribution and use in source and binary forms, with or without
|
|
# modification, are permitted provided that the following conditions are met:
|
|
# 1. Redistributions of source code must retain the above copyright
|
|
# notice, this list of conditions and the following disclaimer.
|
|
# 2. Redistributions in binary form must reproduce the above copyright
|
|
# notice, this list of conditions and the following disclaimer in the
|
|
# documentation and/or other materials provided with the distribution.
|
|
# 3. Neither the name of the copyright holder nor the
|
|
# names of its contributors may be used to endorse or promote products
|
|
# derived from this software without specific prior written permission.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
|
|
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
# POSSIBILITY OF SUCH DAMAGE.
|
|
#
|
|
|
|
add_library(openthread-platform-utils OBJECT
|
|
debug_uart.c
|
|
link_metrics.cpp
|
|
logging_rtt.c
|
|
mac_frame.cpp
|
|
settings_ram.c
|
|
soft_source_match_table.c
|
|
uart_rtt.c
|
|
)
|
|
|
|
target_compile_definitions(openthread-platform-utils PRIVATE
|
|
$<TARGET_PROPERTY:ot-config,INTERFACE_COMPILE_DEFINITIONS>
|
|
)
|
|
|
|
if(OT_RTT_UART)
|
|
target_compile_definitions(openthread-platform-utils PRIVATE
|
|
OPENTHREAD_UART_RTT_ENABLE=1
|
|
)
|
|
endif()
|
|
|
|
target_compile_options(openthread-platform-utils PRIVATE
|
|
${OT_CFLAGS}
|
|
)
|
|
|
|
target_include_directories(openthread-platform-utils PRIVATE
|
|
${OT_PUBLIC_INCLUDES}
|
|
$<TARGET_PROPERTY:ot-config,INTERFACE_INCLUDE_DIRECTORIES>
|
|
${PROJECT_SOURCE_DIR}/examples/platforms
|
|
${PROJECT_SOURCE_DIR}/examples/platforms/utils
|
|
${PROJECT_SOURCE_DIR}/third_party/jlink/SEGGER_RTT_V640/RTT
|
|
)
|
|
|
|
# Provide a static library implementation of platform-utils for non-cmake platforms
|
|
add_library(openthread-platform-utils-static $<TARGET_OBJECTS:openthread-platform-utils>)
|