65 lines
1.3 KiB
C
65 lines
1.3 KiB
C
#include "unigi/main.h"
|
|
#include "unigi.platform.sdl2/main.c"
|
|
#include "unigi.ext/main.c"
|
|
#include "unigi.ext/main_wrap.c"
|
|
|
|
#ifdef unigi_ext_flag_inline_lua
|
|
#include "luaconf.h"
|
|
#include "lapi.c"
|
|
#include "lcode.c"
|
|
#include "ldebug.c"
|
|
#include "ldo.c"
|
|
#include "ldump.c"
|
|
#include "lfunc.c"
|
|
#include "lgc.c"
|
|
#include "llex.c"
|
|
#include "lmem.c"
|
|
#include "lobject.c"
|
|
#include "lopcodes.c"
|
|
#include "lparser.c"
|
|
#include "lstate.c"
|
|
#include "lstring.c"
|
|
#include "ltable.c"
|
|
#include "ltm.c"
|
|
#include "lundump.c"
|
|
#include "lvm.c"
|
|
#include "lzio.c"
|
|
#include "lauxlib.c"
|
|
#include "lbaselib.c"
|
|
#include "ldblib.c"
|
|
#include "liolib.c"
|
|
#include "lmathlib.c"
|
|
#include "loslib.c"
|
|
#include "ltablib.c"
|
|
#include "lstrlib.c"
|
|
#include "loadlib.c"
|
|
#include "linit.c"
|
|
#endif
|
|
|
|
#if LUA_VERSION_NUM < 503
|
|
#include <lualib.h>
|
|
#endif
|
|
|
|
|
|
int main(int argc, char *argv[]) {
|
|
lua_State *L = luaL_newstate();
|
|
assert(L != NULL);
|
|
luaL_openlibs(L);
|
|
luaopen_unigi(L); // Load the wrapped module
|
|
|
|
for (int i = 0; i < argc; i++) {
|
|
lua_pushstring(L, argv[i]);
|
|
lua_rawseti(L, -2, i + 1);
|
|
}
|
|
lua_setglobal(L, "arg");
|
|
|
|
if (luaL_dostring(L,
|
|
"main_path = (arg[1]:match(\"(.*[/\\\\])\") or \"./\"):sub(1,-2)\n"
|
|
"dofile(main_path .. \"/mods/main/script/main.lua\")"
|
|
) != 0) {
|
|
fprintf(stderr, "Error running Lua code: %s\n", lua_tostring(L, -1));
|
|
return 1;
|
|
}
|
|
return 0;
|
|
}
|