1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
set(ALL_DATA
${DATA_BIN_DIR}/tsi.dat
${DATA_BIN_DIR}/word.dat
)
add_custom_target(data ALL DEPENDS ${ALL_DATA})
# We need to copy static data to binary tree when using out of tree build.
set(ALL_STATIC_DATA
${DATA_SRC_DIR}/swkb.dat
${DATA_SRC_DIR}/symbols.dat
)
add_custom_target(all_static_data
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${DATA_SRC_DIR}/swkb.dat ${DATA_BIN_DIR}/swkb.dat
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${DATA_SRC_DIR}/symbols.dat ${DATA_BIN_DIR}/symbols.dat
)
# tools
set(ALL_TOOLS init_database)
# tools command
file(MAKE_DIRECTORY ${DATA_BIN_DIR})
set(DATA_COPYRIGHT "Copyright \\(c\\) 2022 libchewing Core Team")
set(DATA_LICENSE "LGPL-2.1-or-later")
set(DATA_VERSION ${LIBCHEWING_VERSION})
add_custom_command(
OUTPUT
${ALL_DATA}
COMMAND chewing-cli init-database
-c ${DATA_COPYRIGHT}
-l ${DATA_LICENSE}
-r ${DATA_VERSION}
-t trie
-n 內建詞庫
${DATA_SRC_DIR}/tsi.src tsi.dat
COMMAND chewing-cli init-database
-c ${DATA_COPYRIGHT}
-l ${DATA_LICENSE}
-r ${DATA_VERSION}
-t trie
-n 內建字庫
${DATA_SRC_DIR}/word.src word.dat
COMMAND chewing-cli init-database
-c ${DATA_COPYRIGHT}
-l ${DATA_LICENSE}
-r ${DATA_VERSION}
-t trie
-n 內嵌字庫
${DATA_SRC_DIR}/mini.src mini.dat
DEPENDS
chewing-cli
${DATA_SRC_DIR}/mini.src
${DATA_SRC_DIR}/word.src
${DATA_SRC_DIR}/tsi.src
WORKING_DIRECTORY ${DATA_BIN_DIR}
)
install(FILES ${ALL_DATA} DESTINATION ${CMAKE_INSTALL_DATADIR}/libchewing)
install(FILES ${ALL_STATIC_DATA} DESTINATION ${CMAKE_INSTALL_DATADIR}/libchewing)
|