protobuf_generate(prof_hal_utest_proto
CppPath
HeaderPath
${MSPROF_SOURCE_DIR}/dvvp/proto/profiler.proto
)
set(src_file
${MSPROF_SOURCE_DIR}/dvvp/profhal/adx/stub/adx_prof_api.cpp
${MSPROF_SOURCE_DIR}/dvvp/profhal/adx/wrapper/memory_utils.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/analyzer.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/analyzer_base.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/analyzer_ge.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/analyzer_ffts.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/analyzer_hwts.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/analyzer_ts.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/analyzer_rt.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/stats_analyzer_api.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/stats_analyzer.cpp
${MSPROF_SOURCE_DIR}/dvvp/analyze/src/op_desc_parser.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/cmd_log/cmd_log.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/socket/local_socket.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/config/config_manager.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/config/feature_manager.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/memory/chunk_pool.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/platform/platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/json/json.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/statistics/perf_count.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/thread/thread.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/thread/thread_pool.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/utils/utils.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/utils/llc_event_utils.cpp
${MSPROF_SOURCE_DIR}/dvvp/common/validation/param_validation.cpp
${MSPROF_SOURCE_DIR}/basic/osal/osal.c
${MSPROF_SOURCE_DIR}/dvvp/depend/stub/error_manager/msprof_error_manager_stub.cpp
${MSPROF_SOURCE_DIR}/dvvp/driver/channel/ai_drv_prof_api.cpp
${MSPROF_SOURCE_DIR}/dvvp/driver/devmgmt/ai_drv_dev_api.cpp
${MSPROF_SOURCE_DIR}/dvvp/driver/devmgmt/ai_drv_dsmi_api.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/collection_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/collection_register.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/job_device_soc.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/job_factory.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_channel_manager.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_comm_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_hardware_mem_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_dvpp_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_lpm_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_inter_connection_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_io_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_ts_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_stars_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_ccu_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_hwts_log_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_instr_perf_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_biu_perf_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_adprof_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_aicore_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_aicpu_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_sys_info_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_l2cache_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_soc_pmu_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_perf_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_timer.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_drv_event.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_host_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/prof_diagnostic_job.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/adprof_collector_proxy.cpp
${MSPROF_SOURCE_DIR}/dvvp/message/codec.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/common/src/msprof_reporter.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/common/src/receive_data.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/dynamic_profiling/src/dyn_prof_client.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/dynamic_profiling/src/dyn_prof_server.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/dynamic_profiling/src/dyn_prof_thread.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/dynamic_profiling/src/dyn_prof_mgr.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/engine/src/prof_acl_mgr.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/engine/src/uploader_dumper.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/msproftx/src/msprof_tx_manager.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/msproftx/src/msprof_tx_reporter.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/msproftx/src/prof_stamp_pool.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofiler/prof_ge_core.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofiler/prof_acl_core.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofiler/prof_api_common.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofiler/prof_api_runtime.cpp
${MSPROF_SOURCE_DIR}/dvvp/profhal/halimpl/prof_server_manager.cpp
${MSPROF_SOURCE_DIR}/dvvp/profhal/halimpl/prof_hal_api.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/adapter/src/command_handle.cpp
${MSPROF_SOURCE_DIR}/dvvp/task_handle/src/device.cpp
${MSPROF_SOURCE_DIR}/dvvp/task_handle/src/info_json.cpp
${MSPROF_SOURCE_DIR}/dvvp/task_handle/src/prof_manager.cpp
${MSPROF_SOURCE_DIR}/dvvp/task_handle/src/prof_params_adapter.cpp
${MSPROF_SOURCE_DIR}/dvvp/task_handle/src/prof_task.cpp
${MSPROF_SOURCE_DIR}/dvvp/task_handle/src/task_relationship_mgr.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/file_slice.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/file_ageing.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/file_transport.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/stats_transport.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/pipe_transport.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/hdc/hdc_transport.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/hdc/helper_transport.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/hdc/platform/soc/dev_mgr_api.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/parser_transport.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/prof_channel.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/uploader.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/uploader_mgr.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/hash_data.cpp
${CppPath}
${MSPROF_SOURCE_DIR}/dvvp/profimpl/adapter/src/msproftx_adaptor.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/adapter/src/msprofiler_adaptor.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/adapter/src/msprofiler_impl.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/adapter/src/msprofiler_acl_api.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/adapter/src/json_parser.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/report/prof_reporter_mgr.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/aicpu/prof_hal_plugin.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/platform_interface.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/base_analyzer.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/cloud_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/cloud_v2_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/dc_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/mini_v3_platform.cpp
)
if(NOT BUILD_OPEN_PROJECT)
list(APPEND src_file
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/nano_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/mini_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/david_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/david_v121_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/mdc_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/mdc_lite_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/mdc_mini_v3_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/mdc_v2_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform/tiny_v1_platform.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofbin/src/input_parser_commercial.cpp
)
endif()
list(APPEND src_file
${MSPROF_SOURCE_DIR}/dvvp/msprof/devprof/src/devprof_drv_aicpu.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/devprof/src/devprof_common.cpp
${MSPROF_SOURCE_DIR}/dvvp/profapi/src/prof_mstx_plugin.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/msproftx/mstx/src/mstx_inject.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/msproftx/mstx/src/mstx_domain_mgr.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprof/msproftx/mstx/src/mstx_data_handler.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/ctrl_files_dumper.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/hdc/device_transport.cpp
${MSPROF_SOURCE_DIR}/dvvp/transport/hdc/data_handle.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofbin/src/running_mode.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofbin/src/msprof_manager.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofbin/src/input_parser.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofbin/src/input_parser_host_sys.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofbin/src/msprof_params_adapter.cpp
${MSPROF_SOURCE_DIR}/dvvp/msprofbin/src/msprof_task.cpp
${MSPROF_SOURCE_DIR}/dvvp/app/env_manager.cpp
${MSPROF_SOURCE_DIR}/dvvp/app/application.cpp
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/src/job_device_rpc.cpp
)
add_executable(prof_hal_utest
test/main.cpp
test/aicpu_plugin_utest.cpp
stub/mmpa_stub.cpp
../stub/mmpa_stub.cpp
../stub/prof_api_stub.cpp
../stub/hdc-log-stub.cpp
../stub/devdrv_runtime_api_stub.cpp
../stub/profile_drv_user_stub.cpp
../stub/hdc-api-stub.cpp
../stub/error_manager_stub2.cpp
${src_file}
)
set(libmsprofHeaderDir
${LIBC_SEC_HEADER}
${TOP_DIR}/output/third_party/gtest_shared/include
${TOP_DIR}/third_party/libc_sec/include
${TOP_DIR}/include/driver
${TOP_DIR}/include/external
${TOP_DIR}/include/external/acl
${TOP_DIR}/src/dfx/error_manager
${TOP_DIR}/src/inc
${TOP_DIR}/src/dfx/adump/inc
${TOP_DIR}/src/dfx/adump/inc/adump
${TOP_DIR}/src/dfx/adump/inc/metadef
${TOP_DIR}/pkg_inc/aicpu_sched
${TOP_DIR}/src/dfx/adump/inc/metadef/external
${MSPROF_SOURCE_DIR}/dvvp/msprof/msproftx/mstx/inc
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform
${MSPROF_SOURCE_DIR}/dvvp/common/config
${MSPROF_SOURCE_DIR}/dvvp/profapi/inc
${MSPROF_SOURCE_DIR}/dvvp/msprof/devprof/include
${MSPROF_SOURCE_DIR}/dvvp/msprofbin/include
${MSPROF_SOURCE_DIR}/dvvp/app
)
target_include_directories(prof_hal_utest PRIVATE
${libmsprofHeaderDir}
${MSPROF_SOURCE_DIR}/dvvp/msprof/engine/include
${MSPROF_SOURCE_DIR}/dvvp/common/utils
${TOP_DIR}/abl/msprof/inc/toolchain
../stub/
${TOP_DIR}/llt/abl/msprof/st/stub
${TOP_DIR}/abl/libc_sec/include
${TOP_DIR}/abl/msprof/inc/toolchain
${TOP_DIR}/inc/external/acl
${MSPROF_SOURCE_DIR}/dvvp/analyze/inc
${MSPROF_SOURCE_DIR}/dvvp/msprof/common/include
${MSPROF_SOURCE_DIR}/dvvp/msprof/drvprof/include
${MSPROF_SOURCE_DIR}/dvvp/msprof/dynamic_profiling/include
${MSPROF_SOURCE_DIR}/dvvp/msprof/platform/include
${MSPROF_SOURCE_DIR}/dvvp/msprof/msproftx/include
${MSPROF_SOURCE_DIR}/dvvp/msprof/include
${MSPROF_SOURCE_DIR}/dvvp/common
${MSPROF_SOURCE_DIR}/dvvp/common/errno
${MSPROF_SOURCE_DIR}/dvvp/common/logger
${MSPROF_SOURCE_DIR}/dvvp/common/json
${MSPROF_SOURCE_DIR}/dvvp/common/validation
${MSPROF_SOURCE_DIR}/dvvp/common/queue
${MSPROF_SOURCE_DIR}/dvvp/common/singleton
${MSPROF_SOURCE_DIR}/dvvp/common/config
${MSPROF_SOURCE_DIR}/basic/osal
${MSPROF_SOURCE_DIR}/dvvp/message
${MSPROF_SOURCE_DIR}/dvvp/transport
${MSPROF_SOURCE_DIR}/dvvp/common/memory/
${MSPROF_SOURCE_DIR}/dvvp/streamio/client/include
${MSPROF_SOURCE_DIR}/dvvp/streamio/common/include
${MSPROF_SOURCE_DIR}/dvvp/streamio/server/include
${MSPROF_SOURCE_DIR}/dvvp
${MSPROF_SOURCE_DIR}/dvvp/msprofiler
${MSPROF_SOURCE_DIR}/dvvp/task_handle/include
${MSPROF_SOURCE_DIR}/dvvp/driver/inc
${MSPROF_SOURCE_DIR}/dvvp/profimpl/collect/job_wrapper/include
${MSPROF_SOURCE_DIR}/dvvp/profhal/adx/inc
${MSPROF_SOURCE_DIR}/dvvp/profhal/halimpl
${MSPROF_SOURCE_DIR}/dvvp/profhal/halinc
${MSPROF_SOURCE_DIR}/dvvp/profimpl/adapter/inc
${MSPROF_SOURCE_DIR}/dvvp/profimpl/report
${MSPROF_SOURCE_DIR}/dvvp/profimpl/aicpu
${MSPROF_SOURCE_DIR}/dvvp/profimpl/platform
${MSPROF_SOURCE_DIR}/dvvp/profimpl/inc
${TOP_DIR}/graphengine/inc/external
${TOP_DIR}/inc
${TOP_DIR}/inc/aicpu
${TOP_DIR}/inc/driver
${TOP_DIR}/inc/external
${TOP_DIR}/inc/external/acl
${TOP_DIR}/ace/npuruntime/inc
${TOP_DIR}/abl/msprof/inc
${CMAKE_BINARY_DIR}/proto/prof_hal_utest_proto/
${MSPROF_SOURCE_DIR}/dvvp/depend/include/stub
${MSPROF_SOURCE_DIR}/dvvp/profapi/inc
)
target_compile_options(prof_hal_utest PRIVATE
-g
-pipe
-Wall
-fno-access-control
-Wfloat-equal
-Wextra
)
target_compile_definitions(prof_hal_utest PRIVATE
MSPROF_DEBUG
google=ascend_private
)
if(BUILD_OPEN_PROJECT)
target_compile_definitions(prof_hal_utest PRIVATE BUILD_OPEN_PROJECT)
endif()
target_link_libraries(prof_hal_utest PRIVATE
$<BUILD_INTERFACE:msprof_utestonetrack_pub>
c_sec
)
set_target_properties(prof_hal_utest
PROPERTIES
OUTPUT_NAME prof_hal_utest
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)