diff options
| author | bfredl <bjorn.linse@gmail.com> | 2025-05-02 10:34:25 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-05-02 10:34:25 +0200 |
| commit | da401ca25b4dbef121da627fdcdc1dbaf8b7e092 (patch) | |
| tree | 53a37c82e5e7298a30c4809c452926aa0a31fa5b /src/nvim | |
| parent | ce8b755a86c10496a81675c49b3bc9a42c79d80f (diff) | |
| parent | 1f004970f00bd8ef7ad955b52857df136f82185b (diff) | |
| download | rneovim-da401ca25b4dbef121da627fdcdc1dbaf8b7e092.tar.gz rneovim-da401ca25b4dbef121da627fdcdc1dbaf8b7e092.tar.bz2 rneovim-da401ca25b4dbef121da627fdcdc1dbaf8b7e092.zip | |
Merge pull request #28344 from bfredl/wonderland
feat(build): build.zig MVP: build and run functionaltests on linux
Diffstat (limited to 'src/nvim')
| -rw-r--r-- | src/nvim/CMakeLists.txt | 18 | ||||
| -rw-r--r-- | src/nvim/lua/converter.c | 2 | ||||
| -rw-r--r-- | src/nvim/macros_defs.h | 4 | ||||
| -rw-r--r-- | src/nvim/os/lang.c | 4 | ||||
| -rw-r--r-- | src/nvim/os/pty_proc_unix.c | 3 |
5 files changed, 20 insertions, 11 deletions
diff --git a/src/nvim/CMakeLists.txt b/src/nvim/CMakeLists.txt index 2a60eefe7c..f6112a3c2a 100644 --- a/src/nvim/CMakeLists.txt +++ b/src/nvim/CMakeLists.txt @@ -595,8 +595,11 @@ add_custom_command( ${LUA_API_C_BINDINGS} ${GENERATED_KEYSETS_DEFS} ${UI_METADATA} - ${NVIM_VERSION_GIT_H} + ${NVIM_VERSION_GIT_H} ${NVIM_VERSION_LUA} + ${GENERATOR_DIR}/dump_bin_array.lua + ${CMAKE_CURRENT_LIST_DIR}/api/dispatch_deprecated.lua ${API_HEADERS} + DEPENDS ${LUA_GEN_DEPS} ${API_HEADERS} @@ -604,6 +607,7 @@ add_custom_command( ${API_DISPATCH_GENERATOR} ${GENERATOR_C_GRAMMAR} ${GENERATOR_HASHY} + ${GENERATOR_DIR}/dump_bin_array.lua ${UI_METADATA} ${NVIM_VERSION_LUA} ${NVIM_VERSION_GIT_H} @@ -666,27 +670,27 @@ add_custom_command( ) add_custom_command(OUTPUT ${GENERATED_EX_CMDS_ENUM} ${GENERATED_EX_CMDS_DEFS} - COMMAND ${LUA_GEN} ${EX_CMDS_GENERATOR} ${GENERATED_INCLUDES_DIR} ${GENERATED_DIR} + COMMAND ${LUA_GEN} ${EX_CMDS_GENERATOR} ${GENERATED_EX_CMDS_ENUM} ${GENERATED_EX_CMDS_DEFS} ${CMAKE_CURRENT_LIST_DIR}/ex_cmds.lua DEPENDS ${LUA_GEN_DEPS} ${EX_CMDS_GENERATOR} ${CMAKE_CURRENT_LIST_DIR}/ex_cmds.lua ) add_custom_command(OUTPUT ${GENERATED_FUNCS} ${FUNCS_DATA} - COMMAND ${LUA_GEN} ${FUNCS_GENERATOR} ${GENERATED_DIR} ${FUNCS_METADATA} ${FUNCS_DATA} + COMMAND ${LUA_GEN} ${FUNCS_GENERATOR} ${GENERATED_FUNCS} ${FUNCS_METADATA} ${FUNCS_DATA} ${CMAKE_CURRENT_LIST_DIR}/eval.lua DEPENDS ${LUA_GEN_DEPS} ${FUNCS_GENERATOR} ${GENERATOR_HASHY} ${CMAKE_CURRENT_LIST_DIR}/eval.lua ${FUNCS_METADATA} ) add_custom_command(OUTPUT ${GENERATED_EVENTS_ENUM} ${GENERATED_EVENTS_NAMES_MAP} - COMMAND ${LUA_GEN} ${EVENTS_GENERATOR} ${GENERATED_EVENTS_ENUM} ${GENERATED_EVENTS_NAMES_MAP} + COMMAND ${LUA_GEN} ${EVENTS_GENERATOR} ${GENERATED_EVENTS_ENUM} ${GENERATED_EVENTS_NAMES_MAP} ${CMAKE_CURRENT_LIST_DIR}/auevents.lua DEPENDS ${LUA_GEN_DEPS} ${EVENTS_GENERATOR} ${GENERATOR_HASHY} ${CMAKE_CURRENT_LIST_DIR}/auevents.lua ) add_custom_command(OUTPUT ${GENERATED_KEYCODE_NAMES} - COMMAND ${LUA_GEN} ${KEYCODES_GENERATOR} ${GENERATED_KEYCODE_NAMES} + COMMAND ${LUA_GEN} ${KEYCODES_GENERATOR} ${GENERATED_KEYCODE_NAMES} ${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} + COMMAND ${LUA_GEN} ${OPTIONS_GENERATOR} ${GENERATED_OPTIONS} ${GENERATED_OPTIONS_ENUM} ${GENERATED_OPTIONS_MAP} ${GENERATED_OPTION_VARS} ${CMAKE_CURRENT_LIST_DIR}/options.lua DEPENDS ${LUA_GEN_DEPS} ${OPTIONS_GENERATOR} ${GENERATOR_HASHY} ${CMAKE_CURRENT_LIST_DIR}/options.lua ) @@ -967,7 +971,7 @@ add_target(doc-vim ) add_target(doc-eval - COMMAND ${NVIM_LUA} ${PROJECT_SOURCE_DIR}/src/gen/gen_eval_files.lua + COMMAND ${NVIM_LUA} ${PROJECT_SOURCE_DIR}/src/gen/gen_eval_files.lua ${FUNCS_METADATA} DEPENDS nvim ${FUNCS_METADATA} diff --git a/src/nvim/lua/converter.c b/src/nvim/lua/converter.c index 292588ee64..98d99c1c95 100644 --- a/src/nvim/lua/converter.c +++ b/src/nvim/lua/converter.c @@ -661,7 +661,7 @@ static inline void nlua_create_typed_table(lua_State *lstate, const size_t narr, void nlua_push_String(lua_State *lstate, const String s, int flags) FUNC_ATTR_NONNULL_ALL { - lua_pushlstring(lstate, s.data, s.size); + lua_pushlstring(lstate, s.size ? s.data : "", s.size); } /// Convert given Integer to Lua number diff --git a/src/nvim/macros_defs.h b/src/nvim/macros_defs.h index 67da29031c..84417659e9 100644 --- a/src/nvim/macros_defs.h +++ b/src/nvim/macros_defs.h @@ -1,6 +1,8 @@ #pragma once -#include "auto/config.h" +#ifndef NVIM_NLUA0 +# include "auto/config.h" +#endif // EXTERN is only defined in main.c. That's where global variables are // actually defined and initialized. diff --git a/src/nvim/os/lang.c b/src/nvim/os/lang.c index 6f6eba805a..47eeef702a 100644 --- a/src/nvim/os/lang.c +++ b/src/nvim/os/lang.c @@ -1,4 +1,4 @@ -#ifdef __APPLE__ +#if defined(__APPLE__) && !defined(ZIG_BUILD) # define Boolean CFBoolean // Avoid conflict with API's Boolean # define FileInfo CSFileInfo // Avoid conflict with API's Fileinfo # include <CoreServices/CoreServices.h> @@ -340,7 +340,7 @@ char *get_locales(expand_T *xp, int idx) void lang_init(void) { -#ifdef __APPLE__ +#if defined(__APPLE__) && !defined(ZIG_BUILD) if (!os_env_exists("LANG", true)) { char buf[50] = { 0 }; diff --git a/src/nvim/os/pty_proc_unix.c b/src/nvim/os/pty_proc_unix.c index 10a464bbc3..98d6f7a2f9 100644 --- a/src/nvim/os/pty_proc_unix.c +++ b/src/nvim/os/pty_proc_unix.c @@ -13,6 +13,9 @@ // forkpty is not in POSIX, so headers are platform-specific #if defined(__FreeBSD__) || defined(__DragonFly__) # include <libutil.h> +// TODO(bfredl): this is avaliable on darwin, but there is an issue with cross-compile headers +#elif defined(__APPLE__) && !defined(HAVE_FORKPTY) +int forkpty(int *, char *, const struct termios *, const struct winsize *); #elif defined(__OpenBSD__) || defined(__NetBSD__) || defined(__APPLE__) # include <util.h> #elif defined(__sun) |