if (NOT BUILD_RUNTIME_NNAPI_TEST) return() endif(NOT BUILD_RUNTIME_NNAPI_TEST) if (GENERATE_RUNTIME_NNAPI_TESTS) set(GENERATOR_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/specs/generate_test.sh") file(GLOB_RECURSE TEST_SPECS "${CMAKE_CURRENT_SOURCE_DIR}/specs/*.mod.py") set(GENERATED_CPPS "${CMAKE_CURRENT_SOURCE_DIR}/src/generated/all_generated_V1_1_cts_tests.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/src/generated/all_generated_V1_0_cts_tests.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/src/generated/all_generated_Ex_cts_tests.cpp") add_custom_command(OUTPUT ${GENERATED_CPPS} COMMAND ${GENERATOR_SCRIPT} DEPENDS ${GENERATOR_SCRIPT} ${TEST_SPECS} COMMENT "Generating runtime nnapi tests") add_custom_target(generate-runtime-nnapi-tests DEPENDS ${GENERATED_CPPS}) endif(GENERATE_RUNTIME_NNAPI_TESTS) # Executable `runtime_run` (Dummy runner executable using NN API) set(RUNTIME_NNAPI_TEST nnapi_gtest) set(RUNTIME_NNAPI_TEST_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/TestMain.cpp ${CMAKE_CURRENT_SOURCE_DIR}/src/TestTrivialModel.cpp ${CMAKE_CURRENT_SOURCE_DIR}/src/TestValidation.cpp) set(GENERATED_TEST_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/TestGenerated_V1_0.cpp ${CMAKE_CURRENT_SOURCE_DIR}/src/TestGenerated_V1_1.cpp ${CMAKE_CURRENT_SOURCE_DIR}/src/TestGenerated_Ex.cpp) set(RUNTIME_NNAPI_TEST_SRC ${RUNTIME_NNAPI_TEST_SRC} ${GENERATED_TEST_SRC}) add_executable(${RUNTIME_NNAPI_TEST} ${RUNTIME_NNAPI_TEST_SRC}) if (GENERATE_RUNTIME_NNAPI_TESTS) add_dependencies(${RUNTIME_NNAPI_TEST} generate-runtime-nnapi-tests) endif(GENERATE_RUNTIME_NNAPI_TESTS) nnfw_find_package(GTest) set(RUNTIME_NNAPI_TEST_SRC_INC ${CMAKE_CURRENT_SOURCE_DIR}/include ${CMAKE_CURRENT_SOURCE_DIR}/src) target_include_directories(${RUNTIME_NNAPI_TEST} PRIVATE ${RUNTIME_NNAPI_TEST_SRC_INC}) if (BUILD_NEURUN) set(SKIPLIST_FILE_NAME ${RUNTIME_NNAPI_TEST}.skip.${TARGET_PLATFORM}.neurun) elseif (BUILD_PURE_ARM_COMPUTE) set(SKIPLIST_FILE_NAME ${RUNTIME_NNAPI_TEST}.skip.${TARGET_PLATFORM}) endif() target_link_libraries(${RUNTIME_NNAPI_TEST} nnapi-header) target_link_libraries(${RUNTIME_NNAPI_TEST} gtest) target_link_libraries(${RUNTIME_NNAPI_TEST} ${LIB_PTHREAD} dl) install(TARGETS nnapi_gtest DESTINATION unittest) install(FILES ${SKIPLIST_FILE_NAME} DESTINATION unittest RENAME ${RUNTIME_NNAPI_TEST}.skip OPTIONAL) # Install skiplist file for target as backup FILE(GLOB SKIPLIST_ALL_RUNTIME ${CMAKE_CURRENT_SOURCE_DIR}/${RUNTIME_NNAPI_TEST}.skip.${TARGET_PLATFORM}*) install(FILES ${SKIPLIST_ALL_RUNTIME} DESTINATION unittest OPTIONAL)