Cache generated tests (#4755)
author이한종/On-Device Lab(SR)/Engineer/삼성전자 <hanjoung.lee@samsung.com>
Sun, 17 Mar 2019 23:51:34 +0000 (08:51 +0900)
committer박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 <saehie.park@samsung.com>
Sun, 17 Mar 2019 23:51:34 +0000 (08:51 +0900)
Do not generate generated tests unless related files are changed.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
tests/nnapi/CMakeLists.txt

index 04a9b4c..d03d1ae 100644 (file)
@@ -3,7 +3,17 @@ if (NOT BUILD_RUNTIME_NNAPI_TEST)
 endif(NOT BUILD_RUNTIME_NNAPI_TEST)
 
 if (GENERATE_RUNTIME_NNAPI_TESTS)
-  execute_process(COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/specs/generate_test.sh)
+  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)
@@ -20,6 +30,10 @@ 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