Merge pull request #334 from wheremyfoodat/delete-emu
Add libuv to lua bindings
This commit is contained in:
6
.gitmodules
vendored
6
.gitmodules
vendored
@@ -49,3 +49,9 @@
|
|||||||
[submodule "third_party/oaknut"]
|
[submodule "third_party/oaknut"]
|
||||||
path = third_party/oaknut
|
path = third_party/oaknut
|
||||||
url = https://github.com/merryhime/oaknut
|
url = https://github.com/merryhime/oaknut
|
||||||
|
[submodule "third_party/luv"]
|
||||||
|
path = third_party/luv
|
||||||
|
url = https://github.com/luvit/luv
|
||||||
|
[submodule "third_party/libuv"]
|
||||||
|
path = third_party/libuv
|
||||||
|
url = https://github.com/libuv/libuv
|
||||||
|
|||||||
@@ -266,6 +266,16 @@ set(THIRD_PARTY_SOURCE_FILES third_party/imgui/imgui.cpp
|
|||||||
third_party/xxhash/xxhash.c
|
third_party/xxhash/xxhash.c
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(ENABLE_LUAJIT AND NOT ANDROID)
|
||||||
|
# Build luv and libuv for Lua TCP server usage if we're not on Android
|
||||||
|
include_directories(third_party/luv/src)
|
||||||
|
include_directories(third_party/luv/deps/lua-compat-5.3/c-api)
|
||||||
|
include_directories(third_party/libuv/include)
|
||||||
|
set(THIRD_PARTY_SOURCE_FILES ${THIRD_PARTY_SOURCE_FILES} third_party/luv/src/luv.c)
|
||||||
|
set(LIBUV_BUILD_SHARED OFF)
|
||||||
|
|
||||||
|
add_subdirectory(third_party/libuv)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(ENABLE_QT_GUI)
|
if(ENABLE_QT_GUI)
|
||||||
include_directories(third_party/duckstation)
|
include_directories(third_party/duckstation)
|
||||||
@@ -433,6 +443,11 @@ endif()
|
|||||||
if(ENABLE_LUAJIT)
|
if(ENABLE_LUAJIT)
|
||||||
target_compile_definitions(Alber PUBLIC "PANDA3DS_ENABLE_LUA=1")
|
target_compile_definitions(Alber PUBLIC "PANDA3DS_ENABLE_LUA=1")
|
||||||
target_link_libraries(Alber PRIVATE libluajit)
|
target_link_libraries(Alber PRIVATE libluajit)
|
||||||
|
|
||||||
|
# If we're not on Android, link libuv too
|
||||||
|
if (NOT ANDROID)
|
||||||
|
target_link_libraries(Alber PRIVATE uv_a)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(ENABLE_OPENGL)
|
if(ENABLE_OPENGL)
|
||||||
|
|||||||
15
src/lua.cpp
15
src/lua.cpp
@@ -1,6 +1,12 @@
|
|||||||
#ifdef PANDA3DS_ENABLE_LUA
|
#ifdef PANDA3DS_ENABLE_LUA
|
||||||
#include "lua_manager.hpp"
|
#include "lua_manager.hpp"
|
||||||
|
|
||||||
|
#ifndef __ANDROID__
|
||||||
|
extern "C" {
|
||||||
|
#include "luv.h"
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
void LuaManager::initialize() {
|
void LuaManager::initialize() {
|
||||||
L = luaL_newstate(); // Open Lua
|
L = luaL_newstate(); // Open Lua
|
||||||
|
|
||||||
@@ -9,10 +15,15 @@ void LuaManager::initialize() {
|
|||||||
initialized = false;
|
initialized = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
luaL_openlibs(L);
|
luaL_openlibs(L);
|
||||||
initializeThunks();
|
|
||||||
|
|
||||||
|
#ifndef __ANDROID__
|
||||||
|
lua_pushstring(L, "luv");
|
||||||
|
luaopen_luv(L);
|
||||||
|
lua_settable(L, LUA_GLOBALSINDEX);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
initializeThunks();
|
||||||
initialized = true;
|
initialized = true;
|
||||||
haveScript = false;
|
haveScript = false;
|
||||||
}
|
}
|
||||||
|
|||||||
1
third_party/libuv
vendored
Submodule
1
third_party/libuv
vendored
Submodule
Submodule third_party/libuv added at b8368a1441
1
third_party/luv
vendored
Submodule
1
third_party/luv
vendored
Submodule
Submodule third_party/luv added at 3e55ac4331
Reference in New Issue
Block a user