mcu_hi3321_watch/middleware/utils/dfx/CMakeLists.txt
2025-05-26 20:15:20 +08:00

474 lines
13 KiB
CMake

#===============================================================================
# @brief cmake file
# Copyright (c) @CompanyNameMagicTag 2022-2023. All rights reserved.
#===============================================================================
add_subdirectory_if_exist(dfx_reboot/cpu_utils)
add_subdirectory_if_exist(dfx_reboot/reboot)
add_subdirectory_if_exist(diag_dfx_cmd)
add_subdirectory_if_exist(file_operation)
set(COMPONENT_NAME "dfx_diag")
if(NOT "SUPPORT_DIAG_V2_PROTOCOL" IN_LIST DEFINES)
set(SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/romable/diag_oam_log.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/romable/diag_rom_api.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_channel.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_cmd_dst.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_cmd_src.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_debug.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_dfx.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_filter.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_ind_dst.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_ind_src.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_mem.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_msg.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_pkt.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_pkt_router.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_rx_api.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_stat.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/zdiag_tx.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_file_operation.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_cmd_ls.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_cmd_dump_by_name.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_cmd_delete_file.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_send_recv_pkt.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_item.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_dst.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_src.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_write_read.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_api.c
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/transmit_debug.c
)
else()
set(SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/diag/romable/diag_oam_log.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/romable/diag_rom_api.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_debug.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_pkt.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_mem.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_msg.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_tx.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_rx_api.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_channel.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_pkt_router.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_dfx.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_stat.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_filter.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_service.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_cmd_router/diag_cmd_dispatch.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_cmd_router/diag_cmd_dst.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_cmd_router/diag_cmd_src.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_cmd_router/diag_ind_dst.c
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_cmd_router/diag_ind_src.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_cmd_ls.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_cmd_delete_file.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_send_recv_pkt.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_item.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_resume.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_dst.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_src.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_write_read.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_api.c
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/transmit_debug.c
)
if("CONFIG_DIAG_WITH_SECURE" IN_LIST DEFINES)
list(APPEND SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_secure.c)
endif()
endif()
if(${OS} STREQUAL "liteos")
set(SOURCES
${SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/liteos_v1/dfx_mem.c
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/liteos_v1/dfx_task.c
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/liteos_v1/dfx_res.c
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/liteos_v1/dfx_cpup.c
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/liteos_v1/dfx_trace.c
)
elseif(${OS} STREQUAL "alios")
set(SOURCES
${SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/alios/dfx_mem.c
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/alios/dfx_task.c
)
else()
set(SOURCES
${SOURCES}
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/freertos/dfx_mem.c
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/freertos/dfx_task.c
)
endif()
if(NOT "SUPPORT_DIAG_V2_PROTOCOL" IN_LIST DEFINES)
set(PUBLIC_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/dfx_include
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/include
${CMAKE_CURRENT_SOURCE_DIR}/write_interface/include
${CMAKE_CURRENT_SOURCE_DIR}/zdiag
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/dfx_include
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/include
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/include
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/dfx_include
)
else()
set(PUBLIC_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/dfx_include
${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/include
${CMAKE_CURRENT_SOURCE_DIR}/write_interface/include
${CMAKE_CURRENT_SOURCE_DIR}/diag
${CMAKE_CURRENT_SOURCE_DIR}/diag/dfx_include
${CMAKE_CURRENT_SOURCE_DIR}/diag/include
${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_cmd_router/include
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/include
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/dfx_include
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/
)
endif()
if(NOT "SUPPORT_DIAG_V2_PROTOCOL" IN_LIST DEFINES)
set(PRIVATE_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/zdiag_transmit/
)
else()
set(PRIVATE_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/
)
endif()
set(PRIVATE_HEADER
${PRIVATE_HEADER}
${ROOT_DIR}/middleware/utils/dfx/diag_dfx_cmd/diag_system_cmd/include
${ROOT_DIR}/middleware/utils/dfx/diag_dfx_cmd/diag_system_cmd/dfx_include
)
set(PRIVATE_DEFINES
)
set(PUBLIC_DEFINES
)
# use this when you want to add ccflags like -include xxx
set(COMPONENT_PUBLIC_CCFLAGS
)
set(COMPONENT_CCFLAGS
-Wno-uninitialized
-Wno-unused-parameter
-Wno-incompatible-function-pointer-types
)
set(WHOLE_LINK
true
)
set(MAIN_COMPONENT
false
)
if(NOT "SUPPORT_DIAG_V2_PROTOCOL" IN_LIST DEFINES)
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/zdiag/include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/zdiag/dfx_include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/write_interface/include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/dfx_include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/include/" "*.h")
else()
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/diag/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/diag/include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/diag/dfx_include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/diag/diag_cmd_router/include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/diag_transmit/dfx_include/" "transmit_st.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/write_interface/include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/dfx_include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/dfx_os/include/" "*.h")
endif()
build_component()
set(COMPONENT_NAME "soc_log")
set(SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/soc_log/soc_log.c
${CMAKE_CURRENT_SOURCE_DIR}/soc_log/soc_log_uart_instance.c
)
set(PUBLIC_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/soc_log/include
)
set(PRIVATE_HEADER
)
set(PRIVATE_DEFINES
)
set(PUBLIC_DEFINES
SUPPORT_DFX_PANIC
)
# use this when you want to add ccflags like -include xxx
set(COMPONENT_PUBLIC_CCFLAGS
)
set(COMPONENT_CCFLAGS
)
set(WHOLE_LINK
true
)
set(MAIN_COMPONENT
false
)
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/soc_log/include/" "*.h")
build_component()
set(COMPONENT_NAME "log_file")
set(SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/log_file/log_file.c
${CMAKE_CURRENT_SOURCE_DIR}/log_file/log_file_file.c
${CMAKE_CURRENT_SOURCE_DIR}/log_file/log_file_flash.c
)
set(PUBLIC_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/log_file/include
)
set(PRIVATE_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/log_file/
)
set(PRIVATE_DEFINES
)
set(PUBLIC_DEFINES
SUPPORT_DFX_PANIC
)
# use this when you want to add ccflags like -include xxx
set(COMPONENT_PUBLIC_CCFLAGS
)
set(COMPONENT_CCFLAGS
)
set(WHOLE_LINK
true
)
set(MAIN_COMPONENT
false
)
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/log_file/include/" "*.h")
build_component()
set(COMPONENT_NAME "boot_msg")
set(SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/boot_msg/boot_msg.c
)
set(PUBLIC_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/boot_msg/include
)
set(PRIVATE_HEADER
)
set(PRIVATE_DEFINES
)
set(PUBLIC_DEFINES
SUPPORT_DFX_PANIC
)
# use this when you want to add ccflags like -include xxx
set(COMPONENT_PUBLIC_CCFLAGS
)
set(COMPONENT_CCFLAGS
)
set(WHOLE_LINK
true
)
set(MAIN_COMPONENT
false
)
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/boot_msg/include/" "*.h")
build_component()
set(COMPONENT_NAME "dfx_panic")
set(SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/panic/private/panic.c
${CMAKE_CURRENT_SOURCE_DIR}/panic/private/panic_rom.c
)
set(PUBLIC_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/panic/private
${CMAKE_CURRENT_SOURCE_DIR}/panic/public
)
if(NOT "SUPPORT_DIAG_V2_PROTOCOL" IN_LIST DEFINES)
set(PRIVATE_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/zdiag/include
)
else()
set(PRIVATE_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/diag/include
)
endif()
set(PRIVATE_DEFINES
)
set(PUBLIC_DEFINES
SUPPORT_DFX_PANIC
)
# use this when you want to add ccflags like -include xxx
set(COMPONENT_PUBLIC_CCFLAGS
)
set(COMPONENT_CCFLAGS
)
set(WHOLE_LINK
true
)
set(MAIN_COMPONENT
false
)
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/panic/public/" "*.h")
build_component()
set(COMPONENT_NAME "dfx_preserve")
set(SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/preserve/private/preserve.c
)
set(PUBLIC_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/preserve/public
)
set(PRIVATE_HEADER
)
set(PRIVATE_DEFINES
)
set(PUBLIC_DEFINES
SUPPORT_DFX_PRESERVE
)
# use this when you want to add ccflags like -include xxx
set(COMPONENT_PUBLIC_CCFLAGS
)
set(COMPONENT_CCFLAGS
)
set(WHOLE_LINK
true
)
set(MAIN_COMPONENT
false
)
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/preserve/public/" "*.h")
build_component()
set(COMPONENT_NAME "dfx_log")
set(SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/log/log.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_oam_logger.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_oam_mem_query.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_oam_ota.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_oam_pcm.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_oam_reg_query.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_oam_status.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_oam_dscr_cb.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_oml_exception.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_oml_ota_rom.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_printf.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_printf_rom.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_reg_dump.c
${CMAKE_CURRENT_SOURCE_DIR}/log/log_trigger.c
${CMAKE_CURRENT_SOURCE_DIR}/log_reader/private/log_oam_msg.c
${CMAKE_CURRENT_SOURCE_DIR}/log_buffer/log_buffer.c
${CMAKE_CURRENT_SOURCE_DIR}/log_buffer/log_buffer_reader.c
${CMAKE_CURRENT_SOURCE_DIR}/log_buffer/log_memory_region.c
${CMAKE_CURRENT_SOURCE_DIR}/log_buffer/log_memory_section.c
)
if(NOT ${OS} MATCHES "non-os")
list(APPEND SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/log_reader/private/log_uart.c
)
endif()
set(PUBLIC_HEADER
${CMAKE_CURRENT_SOURCE_DIR}/log/include
${CMAKE_CURRENT_SOURCE_DIR}/log_reader/public
${CMAKE_CURRENT_SOURCE_DIR}/log_buffer
)
set(PRIVATE_HEADER
${ROOT_DIR}/middleware/utils/dfx/diag_dfx_cmd/last_dump/dfx_include
${ROOT_DIR}/middleware/utils/dfx/diag_dfx_cmd/last_dump/include
)
set(PRIVATE_DEFINES
)
set(PUBLIC_DEFINES
SUPPORT_DFX_LOG
)
# use this when you want to add ccflags like -include xxx
set(COMPONENT_PUBLIC_CCFLAGS
)
set(COMPONENT_CCFLAGS
)
set(WHOLE_LINK
true
)
set(MAIN_COMPONENT
false
)
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/log/include/" "*.h")
install_sdk_by_sh("${CMAKE_CURRENT_SOURCE_DIR}/log_buffer/" "*.h")
build_component()