| # SPDX-License-Identifier: Apache-2.0 |
| |
| zephyr_syscall_header( |
| ${ZEPHYR_BASE}/include/zephyr/logging/log_msg.h |
| ${ZEPHYR_BASE}/include/zephyr/logging/log_ctrl.h |
| ) |
| |
| if(NOT CONFIG_LOG_MODE_MINIMAL) |
| zephyr_sources_ifdef( |
| CONFIG_LOG |
| log_core.c |
| log_mgmt.c |
| log_cache.c |
| log_msg.c |
| ) |
| |
| zephyr_sources_ifdef( |
| CONFIG_LOG_OUTPUT |
| log_output.c |
| ) |
| |
| # Determine if __auto_type is supported. If not then runtime approach must always |
| # be used. |
| # Supported by: |
| # - C++ (auto) |
| # - GCC 4.9.0 https://gcc.gnu.org/gcc-4.9/changes.html |
| # - Clang 3.8 |
| if (NOT CONFIG_LOG_ALWAYS_RUNTIME) |
| if(CMAKE_C_COMPILER_ID STREQUAL "Clang") |
| if(CMAKE_C_COMPILER_VERSION VERSION_LESS "3.8.0") |
| message(WARNING "Compiler version requires CONFIG_LOG_ALWAYS_RUNTIME to be set") |
| endif() |
| endif() |
| if(CMAKE_C_COMPILER_ID STREQUAL "GNU") |
| if(CMAKE_C_COMPILER_VERSION VERSION_LESS "4.9.0") |
| message(WARNING "Compiler version requires CONFIG_LOG_ALWAYS_RUNTIME to be set") |
| endif() |
| endif() |
| endif() |
| |
| zephyr_sources_ifdef( |
| CONFIG_LOG_CMDS |
| log_cmds.c |
| ) |
| |
| zephyr_sources_ifdef( |
| CONFIG_LOG_FRONTEND_DICT_UART |
| log_frontend_dict_uart.c |
| ) |
| |
| zephyr_sources_ifdef( |
| CONFIG_LOG_DICTIONARY_SUPPORT |
| log_output_dict.c |
| ) |
| |
| add_subdirectory(backends) |
| |
| # For some reason, running sys-t with catalog message on |
| # Cortex-M0 would result in hard fault in mipi_catalog_formatter() |
| # if this is complied before the backends (only with SIZE |
| # optimization). Workaround the issue by placing it here instead |
| # as this is causing CI failures. Actual root-cause is TBD. |
| zephyr_sources_ifdef( |
| CONFIG_LOG_MIPI_SYST_ENABLE |
| log_output_syst.c |
| ) |
| |
| if(CONFIG_LOG_CUSTOM_FORMAT_SUPPORT OR CONFIG_LOG_OUTPUT_FORMAT_CUSTOM_TIMESTAMP) |
| zephyr_sources(log_output_custom.c) |
| endif() |
| |
| zephyr_sources_ifdef( |
| CONFIG_LOG_MULTIDOMAIN_LINK |
| log_multidomain_link.c |
| ) |
| |
| zephyr_sources_ifdef( |
| CONFIG_LOG_LINK_IPC_SERVICE |
| log_link_ipc_service.c |
| ) |
| |
| |
| else() |
| zephyr_sources(log_minimal.c) |
| endif() |