set(TOP_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../..) set(TEST_DIR ${TOP_DIR}/mindspore/lite/test) set(LITE_DIR ${TOP_DIR}/mindspore/lite) include_directories(${TOP_DIR}) include_directories(${TEST_DIR}) include_directories(${TOP_DIR}/mindspore/ccsrc/backend/kernel_compiler/cpu) include(${TOP_DIR}/cmake/external_libs/gtest.cmake) if(MSLITE_ENABLE_V0) add_definitions(-DENABLE_V0) endif() file(GLOB_RECURSE TEST_UT_SRC ${TEST_DIR}/main.cc ${TEST_DIR}/common/common_test.cc ${TEST_DIR}/ut/src/infer_test.cc ${TEST_DIR}/ut/src/utils_test.cc ${TEST_DIR}/ut/src/scheduler_test.cc ${TEST_DIR}/ut/src/registry/registry_test.cc ${TEST_DIR}/ut/src/registry/registry_custom_op_test.cc ${TEST_DIR}/ut/src/runtime/runtime_pass_tests.cc ${TEST_DIR}/st/multiple_device_test.cc ${TEST_DIR}/st/mindrt_parallel_runtime_test.cc ${TEST_DIR}/st/mix_data_type_test.cc ${TEST_DIR}/ut/nnacl/infer/*.cc ${TEST_DIR}/ut/src/runtime/kernel/arm/common/*.cc ${TEST_DIR}/ut/src/runtime/kernel/arm/fp32/*.cc ${TEST_DIR}/ut/src/runtime/kernel/arm/int8/*.cc ${TEST_DIR}/ut/src/runtime/kernel/arm/string/*.cc ) if(MSLITE_ENABLE_TRAIN) file(GLOB_RECURSE TEST_TRAIN_UT_SRC ${TEST_DIR}/ut/src/runtime/kernel/arm/fp32_grad/*.cc ${TEST_DIR}/ut/src/runtime/kernel/arm/cxx_api/*.cc ) list(APPEND TEST_UT_SRC ${TEST_TRAIN_UT_SRC}) endif() if(MSLITE_GPU_BACKEND STREQUAL opencl) file(GLOB_RECURSE TEST_GPU_UT_SRC ${TEST_DIR}/ut/src/runtime/kernel/opencl/*.cc ${TEST_DIR}/ut/src/registry/registry_gpu_custom_op_test.cc ) list(APPEND TEST_UT_SRC ${TEST_GPU_UT_SRC}) endif() if(MSLITE_ENABLE_FP16) file(GLOB_RECURSE TEST_FP16_UT_SRC ${TEST_DIR}/ut/src/runtime/kernel/arm/fp16/*.cc ) list(APPEND TEST_UT_SRC ${TEST_FP16_UT_SRC}) if(SUPPORT_TRAIN) file(GLOB_RECURSE TEST_TRAIN_FP16_SRC ${TEST_DIR}/ut/src/runtime/kernel/arm/fp16_grad/*.cc) list(APPEND TEST_UT_SRC ${TEST_TRAIN_FP16_SRC}) endif() endif() if(MSLITE_ENABLE_TOOLS) list(APPEND TEST_UT_SRC ${TEST_DIR}/st/benchmark_test.cc) set(TEST_LITE_SRC ${TEST_LITE_SRC} ${LITE_DIR}/tools/benchmark/run_benchmark.cc ${LITE_DIR}/tools/benchmark/benchmark_base.cc ${LITE_DIR}/tools/benchmark/benchmark_unified_api.cc ${LITE_DIR}/tools/benchmark/benchmark.cc ) if(NOT MSLITE_ENABLE_CONVERTER) list(APPEND TEST_LITE_SRC ${LITE_DIR}/tools/common/flag_parser.cc) endif() endif() if(MSLITE_ENABLE_CONVERTER) add_definitions(-DPRIMITIVE_WRITEABLE) add_definitions(-DUSE_GLOG) file(GLOB_RECURSE TEST_CONVERTER_UT_SRC ${TEST_DIR}/ut/tools/converter/registry/*.cc ${TEST_DIR}/ut/tools/converter/parser/tflite/*.cc ${TEST_DIR}/st/converter_test.cc ${TEST_DIR}/st/delegate_test.cc ${TEST_DIR}/st/mindrt_parallel_test.cc ${TEST_DIR}/st/graph_test.cc ${TEST_DIR}/st/sub_graph_test.cc ${TEST_DIR}/ut/src/dynamic_library_loader_test.cc ${TEST_DIR}/ut/tools/optimizer/fusion/conv_biasadd_fusion_test.cc ${TEST_DIR}/ut/tools/optimizer/fusion/conv_bn_fusion_test.cc ${TEST_DIR}/ut/tools/optimizer/fusion/conv_scale_fusion_test.cc ${TEST_DIR}/ut/tools/optimizer/fusion/conv_activation_fusion_test.cc ${TEST_DIR}/ut/tools/optimizer/fusion/constant_folding_fusion_test.cc ) list(APPEND TEST_UT_SRC ${TEST_CONVERTER_UT_SRC}) set(TEST_LITE_SRC ${TEST_LITE_SRC} ${TEST_DIR}/common/import_from_meta_graphT.cc ${LITE_DIR}/src/ops/ops_utils.cc ${LITE_DIR}/src/ops/ops_def.cc ${LITE_DIR}/src/tensor.cc ) endif() set(TEST_SRC ${TEST_UT_SRC} ${TEST_LITE_SRC} ) add_executable(lite-test ${TEST_SRC}) add_dependencies(lite-test fbs_src fbs_inner_src) target_link_libraries(lite-test mindspore-lite dl mindspore::gtest) if(MSLITE_ENABLE_TRAIN) target_link_libraries(lite-test mindspore-lite-train minddata-lite) endif() if(PLATFORM_ARM) target_link_libraries(lite-test log) else() target_link_libraries(lite-test ${SECUREC_LIBRARY} pthread) endif() if(MSLITE_ENABLE_NPU) target_link_libraries(lite-test c++_shared) endif() if(MSLITE_ENABLE_MINDRT) add_library(mindrt_test_mid OBJECT ${TEST_DIR}/ut/src/lite_mindrt_test.cc) add_dependencies(mindrt_test_mid fbs_src fbs_inner_src) if("${CMAKE_BUILD_TYPE}" STREQUAL "Release") target_compile_options(mindrt_test_mid PRIVATE -fno-rtti) endif() target_link_libraries(lite-test mindrt_test_mid) endif() if(MSLITE_ENABLE_CONVERTER) target_link_libraries(lite-test anf_exporter_mid mslite_converter_plugin tflite_parser_mid caffe_parser_mid onnx_parser_mid tf_parser_mid graph_pass_mid fusion_mid quantizer_mid proto_mid ccsrc_src_mid converter_src_mid mindspore::protobuf mindspore::eigen mindspore::json -Wl,--whole-archive mindspore_core -Wl,--no-whole-archive mindspore::glog preprocess_mid config_parser_mid ) endif() if(ENABLE_MODEL_OBF) target_link_libraries(lite-test ${OBF_LIB_DIR}/libmsdeobfuscator-lite.so) endif()