mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	fix(build): distinguish vim.mpack from global require'mpack'
problem: the api of vim.mpack is not compatible with a system provided mpack solution: don't require 'mpack' directly from the system path
This commit is contained in:
		| @@ -1,4 +1,4 @@ | ||||
| local mpack = require('mpack') | ||||
| local mpack = vim.mpack | ||||
|  | ||||
| if arg[1] == '--help' then | ||||
|   print('Usage: lua genvimvim.lua src/nvim runtime/syntax/vim/generated.vim') | ||||
|   | ||||
| @@ -1171,9 +1171,6 @@ static const luaL_reg mpack_functions[] = { | ||||
|   {NULL, NULL} | ||||
| }; | ||||
|  | ||||
| #ifdef NLUA_WIN32 | ||||
|   __declspec(dllexport) | ||||
| #endif | ||||
| int luaopen_mpack(lua_State *L) | ||||
| { | ||||
|   /* Unpacker */ | ||||
|   | ||||
| @@ -1,6 +1,3 @@ | ||||
| #include <lua.h> | ||||
|  | ||||
| #ifdef NLUA_WIN32 | ||||
|   __declspec(dllexport) | ||||
| #endif | ||||
| int luaopen_mpack(lua_State *L); | ||||
|   | ||||
							
								
								
									
										13
									
								
								src/nlua0.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								src/nlua0.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | ||||
| #include <lua.h> | ||||
|  | ||||
| #include "mpack/lmpack.h" | ||||
|  | ||||
| LUA_API int luaopen_nlua0(lua_State* L); | ||||
|  | ||||
| LUA_API int luaopen_nlua0(lua_State* L) { | ||||
|   lua_getglobal(L, "vim"); | ||||
|   luaopen_mpack(L); | ||||
|   lua_setfield(L, -2, "mpack"); | ||||
|  | ||||
|   return 1; | ||||
| } | ||||
| @@ -15,7 +15,7 @@ endif() | ||||
|  | ||||
| add_library(nlua0 MODULE) | ||||
| if(WIN32) | ||||
|   target_compile_definitions(nlua0 PUBLIC LUA_BUILD_AS_DLL NLUA_WIN32) | ||||
|   target_compile_definitions(nlua0 PUBLIC LUA_BUILD_AS_DLL LUA_LIB) | ||||
|   set_target_properties(nlua0 PROPERTIES ENABLE_EXPORTS TRUE) | ||||
| elseif(APPLE) | ||||
|   set_target_properties(nlua0 PROPERTIES LINK_FLAGS "-undefined dynamic_lookup") | ||||
| @@ -322,6 +322,7 @@ if(PREFER_LUA) | ||||
|   target_compile_definitions(main_lib INTERFACE NVIM_VENDOR_BIT) | ||||
| endif() | ||||
|  | ||||
| list(APPEND NLUA0_SOURCES ${PROJECT_SOURCE_DIR}/src/nlua0.c) | ||||
| foreach(subdir | ||||
|         os | ||||
|         api | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| local mpack = require('mpack') | ||||
| local mpack = vim.mpack | ||||
|  | ||||
| local hashy = require'generators.hashy' | ||||
|  | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| local mpack = require('mpack') | ||||
| local mpack = vim.mpack | ||||
|  | ||||
| assert(#arg == 5) | ||||
| local input = io.open(arg[1], 'rb') | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| local mpack = require('mpack') | ||||
| local mpack = vim.mpack | ||||
|  | ||||
| local autodir = arg[1] | ||||
| local metadata_file = arg[2] | ||||
|   | ||||
| @@ -4,6 +4,7 @@ package.path = srcdir .. '/src/nvim/?.lua;' ..srcdir .. '/runtime/lua/?.lua;' .. | ||||
| _G.vim = require'vim.shared' | ||||
| _G.vim.inspect = require 'vim.inspect' | ||||
| package.cpath = package.cpath .. ';' .. nlualib | ||||
| require 'nlua0' | ||||
|  | ||||
| arg[0] = table.remove(arg, 1) | ||||
| return loadfile(arg[0])() | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 bfredl
					bfredl