diff options
author | zeertzjq <zeertzjq@outlook.com> | 2025-03-09 18:57:41 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-03-09 18:57:41 +0800 |
commit | 0a087f207331291a0ef7f1773eb9cdf7f5143879 (patch) | |
tree | f3449d9140e2651a1adc5bbf8d61b152e0e0a7fd /src | |
parent | d4584903f3a7123a389332afa2620f2b997b7f1b (diff) | |
download | rneovim-0a087f207331291a0ef7f1773eb9cdf7f5143879.tar.gz rneovim-0a087f207331291a0ef7f1773eb9cdf7f5143879.tar.bz2 rneovim-0a087f207331291a0ef7f1773eb9cdf7f5143879.zip |
build(generator): add dependencies on hashy (#32796)
This allows generated sources to be automatically rebuilt when modifying
hashy code.
Also, appending to NVIM_GENERATED_FOR_{HEADERS,SOURCES} in the middle of
custom commands is a bit strange. Move that after the custom commands.
Diffstat (limited to 'src')
-rw-r--r-- | src/gen/hashy.lua | 4 | ||||
-rw-r--r-- | src/nvim/CMakeLists.txt | 49 |
2 files changed, 27 insertions, 26 deletions
diff --git a/src/gen/hashy.lua b/src/gen/hashy.lua index 52cc1e64e3..cd0e90830d 100644 --- a/src/gen/hashy.lua +++ b/src/gen/hashy.lua @@ -106,8 +106,8 @@ function M.switcher(put, tab, maxlen, worst_buck_size, icase) return neworder end ---- @param icase boolean generate a case-insensitive hash function. ---- `strings` must not have mixed case when using this. +--- @param icase? boolean generate a case-insensitive hash function. +--- `strings` must not have mixed case when using this. function M.hashy_hash(name, strings, access, icase) local stats = {} local put = function(str) diff --git a/src/nvim/CMakeLists.txt b/src/nvim/CMakeLists.txt index 39c78b3228..355c3c2e6b 100644 --- a/src/nvim/CMakeLists.txt +++ b/src/nvim/CMakeLists.txt @@ -603,6 +603,7 @@ add_custom_command( ${MSGPACK_RPC_HEADERS} ${API_DISPATCH_GENERATOR} ${GENERATOR_C_GRAMMAR} + ${GENERATOR_HASHY} ${UI_METADATA} ${NVIM_VERSION_LUA} ${NVIM_VERSION_GIT_H} @@ -660,28 +661,10 @@ add_custom_command( ${LUA_GEN_DEPS} ${API_UI_EVENTS_GENERATOR} ${GENERATOR_C_GRAMMAR} + ${GENERATOR_HASHY} ${CMAKE_CURRENT_LIST_DIR}/api/ui_events.in.h ) -list(APPEND NVIM_GENERATED_FOR_HEADERS - "${GENERATED_EX_CMDS_ENUM}" - "${GENERATED_EVENTS_ENUM}" - "${GENERATED_KEYSETS_DEFS}" - "${GENERATED_OPTIONS_ENUM}" - "${GENERATED_OPTION_VARS}" -) - -list(APPEND NVIM_GENERATED_FOR_SOURCES - "${GENERATED_API_DISPATCH}" - "${GENERATED_EX_CMDS_DEFS}" - "${GENERATED_EVENTS_NAMES_MAP}" - "${GENERATED_KEYCODE_NAMES}" - "${GENERATED_OPTIONS}" - "${GENERATED_OPTIONS_MAP}" - "${VIM_MODULE_FILE}" - "${PROJECT_BINARY_DIR}/cmake.config/auto/pathdef.h" -) - add_custom_command(OUTPUT ${GENERATED_EX_CMDS_ENUM} ${GENERATED_EX_CMDS_DEFS} COMMAND ${LUA_GEN} ${EX_CMDS_GENERATOR} ${GENERATED_INCLUDES_DIR} ${GENERATED_DIR} DEPENDS ${LUA_GEN_DEPS} ${EX_CMDS_GENERATOR} ${CMAKE_CURRENT_LIST_DIR}/ex_cmds.lua @@ -689,10 +672,8 @@ add_custom_command(OUTPUT ${GENERATED_EX_CMDS_ENUM} ${GENERATED_EX_CMDS_DEFS} add_custom_command(OUTPUT ${GENERATED_FUNCS} ${FUNCS_DATA} COMMAND ${LUA_GEN} ${FUNCS_GENERATOR} ${GENERATED_DIR} ${FUNCS_METADATA} ${FUNCS_DATA} - DEPENDS ${LUA_GEN_DEPS} ${FUNCS_GENERATOR} ${CMAKE_CURRENT_LIST_DIR}/eval.lua ${FUNCS_METADATA} + DEPENDS ${LUA_GEN_DEPS} ${FUNCS_GENERATOR} ${GENERATOR_HASHY} ${CMAKE_CURRENT_LIST_DIR}/eval.lua ${FUNCS_METADATA} ) -list(APPEND NVIM_GENERATED_FOR_SOURCES - "${GENERATED_FUNCS}") add_custom_command(OUTPUT ${GENERATED_EVENTS_ENUM} ${GENERATED_EVENTS_NAMES_MAP} COMMAND ${LUA_GEN} ${EVENTS_GENERATOR} ${GENERATED_EVENTS_ENUM} ${GENERATED_EVENTS_NAMES_MAP} @@ -701,12 +682,32 @@ add_custom_command(OUTPUT ${GENERATED_EVENTS_ENUM} ${GENERATED_EVENTS_NAMES_MAP} add_custom_command(OUTPUT ${GENERATED_KEYCODE_NAMES} COMMAND ${LUA_GEN} ${KEYCODES_GENERATOR} ${GENERATED_KEYCODE_NAMES} - DEPENDS ${LUA_GEN_DEPS} ${KEYCODES_GENERATOR} ${CMAKE_CURRENT_LIST_DIR}/keycodes.lua + DEPENDS ${LUA_GEN_DEPS} ${KEYCODES_GENERATOR} ${GENERATOR_HASHY} ${CMAKE_CURRENT_LIST_DIR}/keycodes.lua ) add_custom_command(OUTPUT ${GENERATED_OPTIONS} ${GENERATED_OPTIONS_ENUM} ${GENERATED_OPTIONS_MAP} ${GENERATED_OPTION_VARS} COMMAND ${LUA_GEN} ${OPTIONS_GENERATOR} ${GENERATED_OPTIONS} ${GENERATED_OPTIONS_ENUM} ${GENERATED_OPTIONS_MAP} ${GENERATED_OPTION_VARS} - DEPENDS ${LUA_GEN_DEPS} ${OPTIONS_GENERATOR} ${CMAKE_CURRENT_LIST_DIR}/options.lua + DEPENDS ${LUA_GEN_DEPS} ${OPTIONS_GENERATOR} ${GENERATOR_HASHY} ${CMAKE_CURRENT_LIST_DIR}/options.lua +) + +list(APPEND NVIM_GENERATED_FOR_HEADERS + "${GENERATED_EX_CMDS_ENUM}" + "${GENERATED_EVENTS_ENUM}" + "${GENERATED_KEYSETS_DEFS}" + "${GENERATED_OPTIONS_ENUM}" + "${GENERATED_OPTION_VARS}" +) + +list(APPEND NVIM_GENERATED_FOR_SOURCES + "${GENERATED_API_DISPATCH}" + "${GENERATED_EX_CMDS_DEFS}" + "${GENERATED_EVENTS_NAMES_MAP}" + "${GENERATED_FUNCS}" + "${GENERATED_KEYCODE_NAMES}" + "${GENERATED_OPTIONS}" + "${GENERATED_OPTIONS_MAP}" + "${VIM_MODULE_FILE}" + "${PROJECT_BINARY_DIR}/cmake.config/auto/pathdef.h" ) # NVIM_GENERATED_FOR_SOURCES and NVIM_GENERATED_FOR_HEADERS must be mutually exclusive. |