diff options
Diffstat (limited to 'src/nvim/CMakeLists.txt')
-rw-r--r-- | src/nvim/CMakeLists.txt | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/nvim/CMakeLists.txt b/src/nvim/CMakeLists.txt index d49b8dc416..7348e1475a 100644 --- a/src/nvim/CMakeLists.txt +++ b/src/nvim/CMakeLists.txt @@ -27,6 +27,17 @@ set(OPTIONS_GENERATOR ${PROJECT_SOURCE_DIR}/scripts/genoptions.lua) set(EVENTS_LIST_FILE ${PROJECT_SOURCE_DIR}/src/nvim/auevents.lua) set(EX_CMDS_DEFS_FILE ${PROJECT_SOURCE_DIR}/src/nvim/ex_cmds.lua) set(OPTIONS_LIST_FILE ${PROJECT_SOURCE_DIR}/src/nvim/options.lua) +set(UNICODE_TABLES_GENERATOR ${PROJECT_SOURCE_DIR}/scripts/genunicodetables.lua) +set(UNICODE_DOWNLOAD_DIR ${PROJECT_BINARY_DIR}/unicode) +set(DOWNLOAD_URL_BASE "http://unicode.org/Public/UNIDATA") +set(UNICODEDATA_BASENAME UnicodeData.txt) +set(CASEFOLDING_BASENAME CaseFolding.txt) +set(EASTASIANWIDTH_BASENAME EastAsianWidth.txt) +set(DOWNLOADED_UNICODEDATA ${UNICODE_DOWNLOAD_DIR}/${UNICODEDATA_BASENAME}) +set(DOWNLOADED_CASEFOLDING ${UNICODE_DOWNLOAD_DIR}/${CASEFOLDING_BASENAME}) +set(DOWNLOADED_EASTASIANWIDTH + ${UNICODE_DOWNLOAD_DIR}/${EASTASIANWIDTH_BASENAME}) +set(GENERATED_UNICODE_TABLES ${GENERATED_DIR}/unicode_tables.generated.h) include_directories(${GENERATED_DIR}) include_directories(${GENERATED_INCLUDES_DIR}) @@ -46,6 +57,8 @@ file(MAKE_DIRECTORY ${GENERATED_INCLUDES_DIR}/msgpack_rpc) file(MAKE_DIRECTORY ${GENERATED_INCLUDES_DIR}/tui) file(MAKE_DIRECTORY ${GENERATED_INCLUDES_DIR}/event) +file(MAKE_DIRECTORY ${UNICODE_DOWNLOAD_DIR}) + file(GLOB NEOVIM_SOURCES *.c os/*.c api/*.c api/private/*.c msgpack_rpc/*.c tui/*.c event/*.c) file(GLOB_RECURSE NEOVIM_HEADERS *.h) @@ -143,6 +156,26 @@ foreach(sfile ${NEOVIM_SOURCES} endif() endforeach() +file(DOWNLOAD ${DOWNLOAD_URL_BASE}/${UNICODEDATA_BASENAME} + ${DOWNLOADED_UNICODEDATA}) +file(DOWNLOAD ${DOWNLOAD_URL_BASE}/${CASEFOLDING_BASENAME} + ${DOWNLOADED_CASEFOLDING}) +file(DOWNLOAD ${DOWNLOAD_URL_BASE}/${EASTASIANWIDTH_BASENAME} + ${DOWNLOADED_EASTASIANWIDTH}) + +add_custom_command(OUTPUT ${GENERATED_UNICODE_TABLES} + COMMAND ${LUA_PRG} ${UNICODE_TABLES_GENERATOR} + ${DOWNLOADED_UNICODEDATA} + ${DOWNLOADED_CASEFOLDING} + ${DOWNLOADED_EASTASIANWIDTH} + ${GENERATED_UNICODE_TABLES} + DEPENDS + ${UNICODE_TABLES_GENERATOR} + ${DOWNLOADED_UNICODEDATA} + ${DOWNLOADED_CASEFOLDING} + ${DOWNLOADED_EASTASIANWIDTH} +) + add_custom_command(OUTPUT ${MSGPACK_DISPATCH} COMMAND ${LUA_PRG} ${DISPATCH_GENERATOR} ${API_HEADERS} ${MSGPACK_DISPATCH} DEPENDS @@ -159,6 +192,7 @@ list(APPEND NEOVIM_GENERATED_SOURCES "${GENERATED_EVENTS_ENUM}" "${GENERATED_EVENTS_NAMES_MAP}" "${GENERATED_OPTIONS}" + "${GENERATED_UNICODE_TABLES}" ) add_custom_command(OUTPUT ${GENERATED_EX_CMDS_ENUM} ${GENERATED_EX_CMDS_DEFS} |