Imported Upstream version 1.25.0
[platform/core/ml/nnfw.git] / compiler / visq / CMakeLists.txt
1 unset(VISQ_DEPS)
2
3 ###
4 ### Set up visq executable
5 ###
6 set(VISQ_FILE "visq")
7 set(VISQ_SRC "${CMAKE_CURRENT_SOURCE_DIR}/${VISQ_FILE}")
8 set(VISQ_BIN "${CMAKE_CURRENT_BINARY_DIR}/${VISQ_FILE}")
9
10 add_custom_command(OUTPUT ${VISQ_BIN}
11   COMMAND ${CMAKE_COMMAND} -E copy "${VISQ_SRC}" "${VISQ_BIN}"
12   DEPENDS ${VISQ_SRC}
13   COMMENT "Generate ${VISQ_BIN}"
14 )
15
16 list(APPEND VISQ_DEPS ${VISQ_BIN})
17
18 ###
19 ### Set up visqlib directory
20 ###
21 set(VISQ_PYTHON_DIR "visqlib")
22 set(VISQ_PYTHON_DIR_BIN "${CMAKE_CURRENT_BINARY_DIR}/${VISQ_PYTHON_DIR}")
23
24 add_custom_command(OUTPUT ${VISQ_PYTHON_DIR_BIN}
25   COMMAND ${CMAKE_COMMAND} -E make_directory "${VISQ_PYTHON_DIR_BIN}"
26   COMMENT "Generate ${VISQ_PYTHON_DIR_BIN}"
27 )
28
29 list(APPEND VISQ_DEPS ${VISQ_PYTHON_DIR_BIN})
30
31 ###
32 ### Set up Python files
33 ###
34 set(VISQ_PYTHON_FILES DumpFakeQuantFM.py
35                       DumpFP32FM.py
36                       Palette.py
37                       QErrorComputer.py
38                       DotBuilder.py
39                       Util.py)
40
41 foreach(VISQ_PYTHON_FILE IN ITEMS ${VISQ_PYTHON_FILES})
42   set(VISQ_PYTHON_FILE_SRC "${CMAKE_CURRENT_SOURCE_DIR}/${VISQ_PYTHON_DIR}/${VISQ_PYTHON_FILE}")
43   set(VISQ_PYTHON_FILE_BIN "${CMAKE_CURRENT_BINARY_DIR}/${VISQ_PYTHON_DIR}/${VISQ_PYTHON_FILE}")
44
45   add_custom_command(OUTPUT ${VISQ_PYTHON_FILE_BIN}
46     COMMAND ${CMAKE_COMMAND} -E copy "${VISQ_PYTHON_FILE_SRC}" "${VISQ_PYTHON_FILE_BIN}"
47     DEPENDS ${VISQ_PYTHON_FILE_SRC}
48     COMMENT "Generate ${VISQ_PYTHON_FILE_BIN}"
49   )
50
51   list(APPEND VISQ_DEPS ${VISQ_PYTHON_FILE_BIN})
52
53 endforeach(VISQ_PYTHON_FILE)
54
55 add_custom_target(visq ALL DEPENDS ${VISQ_DEPS})
56
57 install(FILES ${VISQ_FILE}
58         PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE
59                     GROUP_READ GROUP_EXECUTE
60                     WORLD_READ WORLD_EXECUTE
61         DESTINATION bin)
62
63 install(DIRECTORY ${VISQ_PYTHON_DIR}
64         FILE_PERMISSIONS OWNER_WRITE OWNER_READ
65                           GROUP_READ
66                           WORLD_READ
67         DESTINATION bin)