Переглянути джерело

LuaJIT support (Step 2/?)

bel2125 10 роки тому
батько
коміт
d50aef8b61
2 змінених файлів з 16 додано та 4 видалено
  1. 8 4
      resources/Makefile.in-lua
  2. 8 0
      src/mod_lua.inl

+ 8 - 4
resources/Makefile.in-lua

@@ -65,24 +65,28 @@ LUA_SOURCES = $(addprefix $(LUA_DIR)/, $(LUA_SOURCE_FILES))
 LUA_OBJECTS = $(LUA_SOURCES:.c=.o)
 
 SQLITE_DIR = src/third_party
-SQLITE_SOURCE_FILES = sqlite3.c lsqlite3.c
+SQLITE_SOURCE_FILES = 
+#SQLITE_SOURCE_FILES = sqlite3.c lsqlite3.c
 SQLITE_SOURCES = $(addprefix $(SQLITE_DIR)/, $(SQLITE_SOURCE_FILES))
 SQLITE_OBJECTS = $(SQLITE_SOURCES:.c=.o)
 SQLITE_CFLAGS = -I$(SQLITE_DIR) -DTHREADSAFE=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS
 
 LFS_DIR = src/third_party
-LFS_SOURCE_FILES = lfs.c
+LFS_SOURCE_FILES = 
+#LFS_SOURCE_FILES = lfs.c
 LFS_SOURCES = $(addprefix $(LFS_DIR)/, $(LFS_SOURCE_FILES))
 LFS_OBJECTS = $(LFS_SOURCES:.c=.o)
 LFS_CFLAGS = -I$(LFS_DIR)
 
 LXML_DIR = src/third_party
-LXML_SOURCE_FILES = LuaXML_lib.c
+LXML_SOURCE_FILES =
+#LXML_SOURCE_FILES = LuaXML_lib.c
 LXML_SOURCES = $(addprefix $(LXML_DIR)/, $(LXML_SOURCE_FILES))
 LXML_OBJECTS = $(LXML_SOURCES:.c=.o)
 LXML_CFLAGS = -I$(LXML_DIR)
 
 OBJECTS += $(LUA_OBJECTS) $(SQLITE_OBJECTS) $(LFS_OBJECTS) $(LXML_OBJECTS)
-CFLAGS += $(LUA_CFLAGS) $(SQLITE_CFLAGS) $(LFS_CFLAGS) -DUSE_LUA_SQLITE3 -DUSE_LUA_FILE_SYSTEM -DUSE_LUA_LUAXML
+CFLAGS += $(LUA_CFLAGS) $(SQLITE_CFLAGS) $(LFS_CFLAGS) 
+#CFLAGS += -DUSE_LUA_SQLITE3 -DUSE_LUA_FILE_SYSTEM -DUSE_LUA_LUAXML
 SOURCE_DIRS = $(LUA_DIR)
 

+ 8 - 0
src/mod_lua.inl

@@ -4,17 +4,23 @@
 
 #ifndef LUA_VERSION_NUM
 #error "Unknown Lua version"
+
 #elif LUA_VERSION_NUM == 501
 /* Lua 5.1 detected */
 #define LUA_OK 0
 #define LUA_ERRGCMM 999 /* not supported */
 #define mg_lua_load(a,b,c,d,e) lua_load(a,b,c,d)
+#define lua_rawlen lua_objlen
+#define lua_newstate(a, b) luaL_newstate() /* Must use luaL_newstate() for 64 bit target */
+
 #elif LUA_VERSION_NUM == 502
 /* Lua 5.2 detected */
 #define mg_lua_load lua_load
+
 #elif LUA_VERSION_NUM == 503
 /* Lua 5.3 detected */
 #define mg_lua_load lua_load
+
 #endif
 
 
@@ -1162,12 +1168,14 @@ static void prepare_lua_environment(struct mg_context *ctx,
 {
 	lua_civet_open_all_libs(L);
 
+#if LUA_VERSION_NUM != 501
 	luaL_newmetatable(L, LUASOCKET);
 	lua_pushliteral(L, "__index");
 	luaL_newlib(L, luasocket_methods);
 	lua_rawset(L, -3);
 	lua_pop(L, 1);
 	lua_register(L, "connect", lsp_connect);
+#endif
 
 	/* Store context in the registry */
 	if (ctx != NULL) {