Imported Upstream version 1.25.0
[platform/core/ml/nnfw.git] / tests / tools / onert_train / CMakeLists.txt
1 if(NOT BUILD_ONERT_TRAIN)
2   return()
3 endif(NOT BUILD_ONERT_TRAIN)
4
5 if(NOT BUILD_ONERT)
6   return()
7 endif(NOT BUILD_ONERT)
8
9 list(APPEND ONERT_TRAIN_SRCS "src/onert_train.cc")
10 list(APPEND ONERT_TRAIN_SRCS "src/args.cc")
11 list(APPEND ONERT_TRAIN_SRCS "src/nnfw_util.cc")
12 list(APPEND ONERT_TRAIN_SRCS "src/randomgen.cc")
13 list(APPEND ONERT_TRAIN_SRCS "src/rawformatter.cc")
14 list(APPEND ONERT_TRAIN_SRCS "src/rawdataloader.cc")
15
16 nnfw_find_package(Boost REQUIRED program_options)
17 nnfw_find_package(HDF5 QUIET)
18
19 if (HDF5_FOUND)
20   list(APPEND ONERT_TRAIN_SRCS "src/h5formatter.cc")
21 endif()
22
23 add_executable(onert_train ${ONERT_TRAIN_SRCS})
24
25 if (HDF5_FOUND)
26   target_compile_definitions(onert_train PRIVATE ONERT_HAVE_HDF5=1)
27   target_include_directories(onert_train PRIVATE ${HDF5_INCLUDE_DIRS})
28   target_link_libraries(onert_train ${HDF5_CXX_LIBRARIES})
29 else()
30   message(WARNING "HDF5 NOT found. Install libhdf5-dev or set EXT_HDF5_DIR to support load/dump in onert_train.")
31 endif(HDF5_FOUND)
32
33 target_include_directories(onert_train PRIVATE src)
34 target_include_directories(onert_train PRIVATE ${Boost_INCLUDE_DIRS})
35
36 target_link_libraries(onert_train nnfw_lib_tflite jsoncpp)
37 target_link_libraries(onert_train nnfw-dev)
38 target_link_libraries(onert_train ${Boost_PROGRAM_OPTIONS_LIBRARY})
39 target_link_libraries(onert_train nnfw_lib_benchmark)
40
41 install(TARGETS onert_train DESTINATION bin)
42
43 if(NOT ENABLE_TEST)
44   return()
45 endif(NOT ENABLE_TEST)
46
47 # Unit Tests
48 set(TEST_ONERT_TRAIN test_onert_train)
49
50 file(GLOB_RECURSE ONERT_TRAIN_TEST_SRCS "test/*.cc")
51 list(APPEND ONERT_TRAIN_TEST_SRCS "src/rawdataloader.cc")
52 list(APPEND ONERT_TRAIN_TEST_SRCS "src/nnfw_util.cc")
53
54 add_executable(${TEST_ONERT_TRAIN} ${ONERT_TRAIN_TEST_SRCS})
55
56 target_link_libraries(${TEST_ONERT_TRAIN} nnfw-dev)
57 target_link_libraries(${TEST_ONERT_TRAIN} gtest gtest_main dl ${LIB_PTHREAD})
58
59 add_test(${TEST_ONERT_TRAIN} ${TEST_ONERT_TRAIN})
60 install(TARGETS ${TEST_ONERT_TRAIN} DESTINATION unittest)