From cb29b1d2ac50e5438d883b7dba8403482a627b8c Mon Sep 17 00:00:00 2001 From: - <-> Date: Tue, 7 Mar 2017 09:45:18 +0100 Subject: [PATCH] Removed unnecesary libs --- src/external/lua/include/lauxlib.h | 256 ---- src/external/lua/include/lua.h | 486 -------- src/external/lua/include/lua.hpp | 9 - src/external/lua/include/luaconf.h | 769 ------------ src/external/lua/include/lualib.h | 58 - src/external/lua/lib/liblua53.a | Bin 322424 -> 0 bytes src/external/lua/lib/liblua53dll.a | Bin 91416 -> 0 bytes src/external/pthread/COPYING | 150 --- src/external/pthread/include/pthread.h | 1368 ---------------------- src/external/pthread/include/sched.h | 183 --- src/external/pthread/include/semaphore.h | 169 --- src/external/pthread/lib/libpthreadGC2.a | Bin 93480 -> 0 bytes src/external/pthread/lib/pthreadGC2.dll | Bin 119888 -> 0 bytes 13 files changed, 3448 deletions(-) delete mode 100644 src/external/lua/include/lauxlib.h delete mode 100644 src/external/lua/include/lua.h delete mode 100644 src/external/lua/include/lua.hpp delete mode 100644 src/external/lua/include/luaconf.h delete mode 100644 src/external/lua/include/lualib.h delete mode 100644 src/external/lua/lib/liblua53.a delete mode 100644 src/external/lua/lib/liblua53dll.a delete mode 100644 src/external/pthread/COPYING delete mode 100644 src/external/pthread/include/pthread.h delete mode 100644 src/external/pthread/include/sched.h delete mode 100644 src/external/pthread/include/semaphore.h delete mode 100644 src/external/pthread/lib/libpthreadGC2.a delete mode 100644 src/external/pthread/lib/pthreadGC2.dll diff --git a/src/external/lua/include/lauxlib.h b/src/external/lua/include/lauxlib.h deleted file mode 100644 index ddb7c228..00000000 --- a/src/external/lua/include/lauxlib.h +++ /dev/null @@ -1,256 +0,0 @@ -/* -** $Id: lauxlib.h,v 1.129 2015/11/23 11:29:43 roberto Exp $ -** Auxiliary functions for building Lua libraries -** See Copyright Notice in lua.h -*/ - - -#ifndef lauxlib_h -#define lauxlib_h - - -#include -#include - -#include "lua.h" - - - -/* extra error code for 'luaL_load' */ -#define LUA_ERRFILE (LUA_ERRERR+1) - - -typedef struct luaL_Reg { - const char *name; - lua_CFunction func; -} luaL_Reg; - - -#define LUAL_NUMSIZES (sizeof(lua_Integer)*16 + sizeof(lua_Number)) - -LUALIB_API void (luaL_checkversion_) (lua_State *L, lua_Number ver, size_t sz); -#define luaL_checkversion(L) \ - luaL_checkversion_(L, LUA_VERSION_NUM, LUAL_NUMSIZES) - -LUALIB_API int (luaL_getmetafield) (lua_State *L, int obj, const char *e); -LUALIB_API int (luaL_callmeta) (lua_State *L, int obj, const char *e); -LUALIB_API const char *(luaL_tolstring) (lua_State *L, int idx, size_t *len); -LUALIB_API int (luaL_argerror) (lua_State *L, int arg, const char *extramsg); -LUALIB_API const char *(luaL_checklstring) (lua_State *L, int arg, - size_t *l); -LUALIB_API const char *(luaL_optlstring) (lua_State *L, int arg, - const char *def, size_t *l); -LUALIB_API lua_Number (luaL_checknumber) (lua_State *L, int arg); -LUALIB_API lua_Number (luaL_optnumber) (lua_State *L, int arg, lua_Number def); - -LUALIB_API lua_Integer (luaL_checkinteger) (lua_State *L, int arg); -LUALIB_API lua_Integer (luaL_optinteger) (lua_State *L, int arg, - lua_Integer def); - -LUALIB_API void (luaL_checkstack) (lua_State *L, int sz, const char *msg); -LUALIB_API void (luaL_checktype) (lua_State *L, int arg, int t); -LUALIB_API void (luaL_checkany) (lua_State *L, int arg); - -LUALIB_API int (luaL_newmetatable) (lua_State *L, const char *tname); -LUALIB_API void (luaL_setmetatable) (lua_State *L, const char *tname); -LUALIB_API void *(luaL_testudata) (lua_State *L, int ud, const char *tname); -LUALIB_API void *(luaL_checkudata) (lua_State *L, int ud, const char *tname); - -LUALIB_API void (luaL_where) (lua_State *L, int lvl); -LUALIB_API int (luaL_error) (lua_State *L, const char *fmt, ...); - -LUALIB_API int (luaL_checkoption) (lua_State *L, int arg, const char *def, - const char *const lst[]); - -LUALIB_API int (luaL_fileresult) (lua_State *L, int stat, const char *fname); -LUALIB_API int (luaL_execresult) (lua_State *L, int stat); - -/* predefined references */ -#define LUA_NOREF (-2) -#define LUA_REFNIL (-1) - -LUALIB_API int (luaL_ref) (lua_State *L, int t); -LUALIB_API void (luaL_unref) (lua_State *L, int t, int ref); - -LUALIB_API int (luaL_loadfilex) (lua_State *L, const char *filename, - const char *mode); - -#define luaL_loadfile(L,f) luaL_loadfilex(L,f,NULL) - -LUALIB_API int (luaL_loadbufferx) (lua_State *L, const char *buff, size_t sz, - const char *name, const char *mode); -LUALIB_API int (luaL_loadstring) (lua_State *L, const char *s); - -LUALIB_API lua_State *(luaL_newstate) (void); - -LUALIB_API lua_Integer (luaL_len) (lua_State *L, int idx); - -LUALIB_API const char *(luaL_gsub) (lua_State *L, const char *s, const char *p, - const char *r); - -LUALIB_API void (luaL_setfuncs) (lua_State *L, const luaL_Reg *l, int nup); - -LUALIB_API int (luaL_getsubtable) (lua_State *L, int idx, const char *fname); - -LUALIB_API void (luaL_traceback) (lua_State *L, lua_State *L1, - const char *msg, int level); - -LUALIB_API void (luaL_requiref) (lua_State *L, const char *modname, - lua_CFunction openf, int glb); - -/* -** =============================================================== -** some useful macros -** =============================================================== -*/ - - -#define luaL_newlibtable(L,l) \ - lua_createtable(L, 0, sizeof(l)/sizeof((l)[0]) - 1) - -#define luaL_newlib(L,l) \ - (luaL_checkversion(L), luaL_newlibtable(L,l), luaL_setfuncs(L,l,0)) - -#define luaL_argcheck(L, cond,arg,extramsg) \ - ((void)((cond) || luaL_argerror(L, (arg), (extramsg)))) -#define luaL_checkstring(L,n) (luaL_checklstring(L, (n), NULL)) -#define luaL_optstring(L,n,d) (luaL_optlstring(L, (n), (d), NULL)) - -#define luaL_typename(L,i) lua_typename(L, lua_type(L,(i))) - -#define luaL_dofile(L, fn) \ - (luaL_loadfile(L, fn) || lua_pcall(L, 0, LUA_MULTRET, 0)) - -#define luaL_dostring(L, s) \ - (luaL_loadstring(L, s) || lua_pcall(L, 0, LUA_MULTRET, 0)) - -#define luaL_getmetatable(L,n) (lua_getfield(L, LUA_REGISTRYINDEX, (n))) - -#define luaL_opt(L,f,n,d) (lua_isnoneornil(L,(n)) ? (d) : f(L,(n))) - -#define luaL_loadbuffer(L,s,sz,n) luaL_loadbufferx(L,s,sz,n,NULL) - - -/* -** {====================================================== -** Generic Buffer manipulation -** ======================================================= -*/ - -typedef struct luaL_Buffer { - char *b; /* buffer address */ - size_t size; /* buffer size */ - size_t n; /* number of characters in buffer */ - lua_State *L; - char initb[LUAL_BUFFERSIZE]; /* initial buffer */ -} luaL_Buffer; - - -#define luaL_addchar(B,c) \ - ((void)((B)->n < (B)->size || luaL_prepbuffsize((B), 1)), \ - ((B)->b[(B)->n++] = (c))) - -#define luaL_addsize(B,s) ((B)->n += (s)) - -LUALIB_API void (luaL_buffinit) (lua_State *L, luaL_Buffer *B); -LUALIB_API char *(luaL_prepbuffsize) (luaL_Buffer *B, size_t sz); -LUALIB_API void (luaL_addlstring) (luaL_Buffer *B, const char *s, size_t l); -LUALIB_API void (luaL_addstring) (luaL_Buffer *B, const char *s); -LUALIB_API void (luaL_addvalue) (luaL_Buffer *B); -LUALIB_API void (luaL_pushresult) (luaL_Buffer *B); -LUALIB_API void (luaL_pushresultsize) (luaL_Buffer *B, size_t sz); -LUALIB_API char *(luaL_buffinitsize) (lua_State *L, luaL_Buffer *B, size_t sz); - -#define luaL_prepbuffer(B) luaL_prepbuffsize(B, LUAL_BUFFERSIZE) - -/* }====================================================== */ - - - -/* -** {====================================================== -** File handles for IO library -** ======================================================= -*/ - -/* -** A file handle is a userdata with metatable 'LUA_FILEHANDLE' and -** initial structure 'luaL_Stream' (it may contain other fields -** after that initial structure). -*/ - -#define LUA_FILEHANDLE "FILE*" - - -typedef struct luaL_Stream { - FILE *f; /* stream (NULL for incompletely created streams) */ - lua_CFunction closef; /* to close stream (NULL for closed streams) */ -} luaL_Stream; - -/* }====================================================== */ - - - -/* compatibility with old module system */ -#if defined(LUA_COMPAT_MODULE) - -LUALIB_API void (luaL_pushmodule) (lua_State *L, const char *modname, - int sizehint); -LUALIB_API void (luaL_openlib) (lua_State *L, const char *libname, - const luaL_Reg *l, int nup); - -#define luaL_register(L,n,l) (luaL_openlib(L,(n),(l),0)) - -#endif - - -/* -** {================================================================== -** "Abstraction Layer" for basic report of messages and errors -** =================================================================== -*/ - -/* print a string */ -#if !defined(lua_writestring) -#define lua_writestring(s,l) fwrite((s), sizeof(char), (l), stdout) -#endif - -/* print a newline and flush the output */ -#if !defined(lua_writeline) -#define lua_writeline() (lua_writestring("\n", 1), fflush(stdout)) -#endif - -/* print an error message */ -#if !defined(lua_writestringerror) -#define lua_writestringerror(s,p) \ - (fprintf(stderr, (s), (p)), fflush(stderr)) -#endif - -/* }================================================================== */ - - -/* -** {============================================================ -** Compatibility with deprecated conversions -** ============================================================= -*/ -#if defined(LUA_COMPAT_APIINTCASTS) - -#define luaL_checkunsigned(L,a) ((lua_Unsigned)luaL_checkinteger(L,a)) -#define luaL_optunsigned(L,a,d) \ - ((lua_Unsigned)luaL_optinteger(L,a,(lua_Integer)(d))) - -#define luaL_checkint(L,n) ((int)luaL_checkinteger(L, (n))) -#define luaL_optint(L,n,d) ((int)luaL_optinteger(L, (n), (d))) - -#define luaL_checklong(L,n) ((long)luaL_checkinteger(L, (n))) -#define luaL_optlong(L,n,d) ((long)luaL_optinteger(L, (n), (d))) - -#endif -/* }============================================================ */ - - - -#endif - - diff --git a/src/external/lua/include/lua.h b/src/external/lua/include/lua.h deleted file mode 100644 index f78899fc..00000000 --- a/src/external/lua/include/lua.h +++ /dev/null @@ -1,486 +0,0 @@ -/* -** $Id: lua.h,v 1.331 2016/05/30 15:53:28 roberto Exp $ -** Lua - A Scripting Language -** Lua.org, PUC-Rio, Brazil (http://www.lua.org) -** See Copyright Notice at the end of this file -*/ - - -#ifndef lua_h -#define lua_h - -#include -#include - - -#include "luaconf.h" - - -#define LUA_VERSION_MAJOR "5" -#define LUA_VERSION_MINOR "3" -#define LUA_VERSION_NUM 503 -#define LUA_VERSION_RELEASE "3" - -#define LUA_VERSION "Lua " LUA_VERSION_MAJOR "." LUA_VERSION_MINOR -#define LUA_RELEASE LUA_VERSION "." LUA_VERSION_RELEASE -#define LUA_COPYRIGHT LUA_RELEASE " Copyright (C) 1994-2016 Lua.org, PUC-Rio" -#define LUA_AUTHORS "R. Ierusalimschy, L. H. de Figueiredo, W. Celes" - - -/* mark for precompiled code ('Lua') */ -#define LUA_SIGNATURE "\x1bLua" - -/* option for multiple returns in 'lua_pcall' and 'lua_call' */ -#define LUA_MULTRET (-1) - - -/* -** Pseudo-indices -** (-LUAI_MAXSTACK is the minimum valid index; we keep some free empty -** space after that to help overflow detection) -*/ -#define LUA_REGISTRYINDEX (-LUAI_MAXSTACK - 1000) -#define lua_upvalueindex(i) (LUA_REGISTRYINDEX - (i)) - - -/* thread status */ -#define LUA_OK 0 -#define LUA_YIELD 1 -#define LUA_ERRRUN 2 -#define LUA_ERRSYNTAX 3 -#define LUA_ERRMEM 4 -#define LUA_ERRGCMM 5 -#define LUA_ERRERR 6 - - -typedef struct lua_State lua_State; - - -/* -** basic types -*/ -#define LUA_TNONE (-1) - -#define LUA_TNIL 0 -#define LUA_TBOOLEAN 1 -#define LUA_TLIGHTUSERDATA 2 -#define LUA_TNUMBER 3 -#define LUA_TSTRING 4 -#define LUA_TTABLE 5 -#define LUA_TFUNCTION 6 -#define LUA_TUSERDATA 7 -#define LUA_TTHREAD 8 - -#define LUA_NUMTAGS 9 - - - -/* minimum Lua stack available to a C function */ -#define LUA_MINSTACK 20 - - -/* predefined values in the registry */ -#define LUA_RIDX_MAINTHREAD 1 -#define LUA_RIDX_GLOBALS 2 -#define LUA_RIDX_LAST LUA_RIDX_GLOBALS - - -/* type of numbers in Lua */ -typedef LUA_NUMBER lua_Number; - - -/* type for integer functions */ -typedef LUA_INTEGER lua_Integer; - -/* unsigned integer type */ -typedef LUA_UNSIGNED lua_Unsigned; - -/* type for continuation-function contexts */ -typedef LUA_KCONTEXT lua_KContext; - - -/* -** Type for C functions registered with Lua -*/ -typedef int (*lua_CFunction) (lua_State *L); - -/* -** Type for continuation functions -*/ -typedef int (*lua_KFunction) (lua_State *L, int status, lua_KContext ctx); - - -/* -** Type for functions that read/write blocks when loading/dumping Lua chunks -*/ -typedef const char * (*lua_Reader) (lua_State *L, void *ud, size_t *sz); - -typedef int (*lua_Writer) (lua_State *L, const void *p, size_t sz, void *ud); - - -/* -** Type for memory-allocation functions -*/ -typedef void * (*lua_Alloc) (void *ud, void *ptr, size_t osize, size_t nsize); - - - -/* -** generic extra include file -*/ -#if defined(LUA_USER_H) -#include LUA_USER_H -#endif - - -/* -** RCS ident string -*/ -extern const char lua_ident[]; - - -/* -** state manipulation -*/ -LUA_API lua_State *(lua_newstate) (lua_Alloc f, void *ud); -LUA_API void (lua_close) (lua_State *L); -LUA_API lua_State *(lua_newthread) (lua_State *L); - -LUA_API lua_CFunction (lua_atpanic) (lua_State *L, lua_CFunction panicf); - - -LUA_API const lua_Number *(lua_version) (lua_State *L); - - -/* -** basic stack manipulation -*/ -LUA_API int (lua_absindex) (lua_State *L, int idx); -LUA_API int (lua_gettop) (lua_State *L); -LUA_API void (lua_settop) (lua_State *L, int idx); -LUA_API void (lua_pushvalue) (lua_State *L, int idx); -LUA_API void (lua_rotate) (lua_State *L, int idx, int n); -LUA_API void (lua_copy) (lua_State *L, int fromidx, int toidx); -LUA_API int (lua_checkstack) (lua_State *L, int n); - -LUA_API void (lua_xmove) (lua_State *from, lua_State *to, int n); - - -/* -** access functions (stack -> C) -*/ - -LUA_API int (lua_isnumber) (lua_State *L, int idx); -LUA_API int (lua_isstring) (lua_State *L, int idx); -LUA_API int (lua_iscfunction) (lua_State *L, int idx); -LUA_API int (lua_isinteger) (lua_State *L, int idx); -LUA_API int (lua_isuserdata) (lua_State *L, int idx); -LUA_API int (lua_type) (lua_State *L, int idx); -LUA_API const char *(lua_typename) (lua_State *L, int tp); - -LUA_API lua_Number (lua_tonumberx) (lua_State *L, int idx, int *isnum); -LUA_API lua_Integer (lua_tointegerx) (lua_State *L, int idx, int *isnum); -LUA_API int (lua_toboolean) (lua_State *L, int idx); -LUA_API const char *(lua_tolstring) (lua_State *L, int idx, size_t *len); -LUA_API size_t (lua_rawlen) (lua_State *L, int idx); -LUA_API lua_CFunction (lua_tocfunction) (lua_State *L, int idx); -LUA_API void *(lua_touserdata) (lua_State *L, int idx); -LUA_API lua_State *(lua_tothread) (lua_State *L, int idx); -LUA_API const void *(lua_topointer) (lua_State *L, int idx); - - -/* -** Comparison and arithmetic functions -*/ - -#define LUA_OPADD 0 /* ORDER TM, ORDER OP */ -#define LUA_OPSUB 1 -#define LUA_OPMUL 2 -#define LUA_OPMOD 3 -#define LUA_OPPOW 4 -#define LUA_OPDIV 5 -#define LUA_OPIDIV 6 -#define LUA_OPBAND 7 -#define LUA_OPBOR 8 -#define LUA_OPBXOR 9 -#define LUA_OPSHL 10 -#define LUA_OPSHR 11 -#define LUA_OPUNM 12 -#define LUA_OPBNOT 13 - -LUA_API void (lua_arith) (lua_State *L, int op); - -#define LUA_OPEQ 0 -#define LUA_OPLT 1 -#define LUA_OPLE 2 - -LUA_API int (lua_rawequal) (lua_State *L, int idx1, int idx2); -LUA_API int (lua_compare) (lua_State *L, int idx1, int idx2, int op); - - -/* -** push functions (C -> stack) -*/ -LUA_API void (lua_pushnil) (lua_State *L); -LUA_API void (lua_pushnumber) (lua_State *L, lua_Number n); -LUA_API void (lua_pushinteger) (lua_State *L, lua_Integer n); -LUA_API const char *(lua_pushlstring) (lua_State *L, const char *s, size_t len); -LUA_API const char *(lua_pushstring) (lua_State *L, const char *s); -LUA_API const char *(lua_pushvfstring) (lua_State *L, const char *fmt, - va_list argp); -LUA_API const char *(lua_pushfstring) (lua_State *L, const char *fmt, ...); -LUA_API void (lua_pushcclosure) (lua_State *L, lua_CFunction fn, int n); -LUA_API void (lua_pushboolean) (lua_State *L, int b); -LUA_API void (lua_pushlightuserdata) (lua_State *L, void *p); -LUA_API int (lua_pushthread) (lua_State *L); - - -/* -** get functions (Lua -> stack) -*/ -LUA_API int (lua_getglobal) (lua_State *L, const char *name); -LUA_API int (lua_gettable) (lua_State *L, int idx); -LUA_API int (lua_getfield) (lua_State *L, int idx, const char *k); -LUA_API int (lua_geti) (lua_State *L, int idx, lua_Integer n); -LUA_API int (lua_rawget) (lua_State *L, int idx); -LUA_API int (lua_rawgeti) (lua_State *L, int idx, lua_Integer n); -LUA_API int (lua_rawgetp) (lua_State *L, int idx, const void *p); - -LUA_API void (lua_createtable) (lua_State *L, int narr, int nrec); -LUA_API void *(lua_newuserdata) (lua_State *L, size_t sz); -LUA_API int (lua_getmetatable) (lua_State *L, int objindex); -LUA_API int (lua_getuservalue) (lua_State *L, int idx); - - -/* -** set functions (stack -> Lua) -*/ -LUA_API void (lua_setglobal) (lua_State *L, const char *name); -LUA_API void (lua_settable) (lua_State *L, int idx); -LUA_API void (lua_setfield) (lua_State *L, int idx, const char *k); -LUA_API void (lua_seti) (lua_State *L, int idx, lua_Integer n); -LUA_API void (lua_rawset) (lua_State *L, int idx); -LUA_API void (lua_rawseti) (lua_State *L, int idx, lua_Integer n); -LUA_API void (lua_rawsetp) (lua_State *L, int idx, const void *p); -LUA_API int (lua_setmetatable) (lua_State *L, int objindex); -LUA_API void (lua_setuservalue) (lua_State *L, int idx); - - -/* -** 'load' and 'call' functions (load and run Lua code) -*/ -LUA_API void (lua_callk) (lua_State *L, int nargs, int nresults, - lua_KContext ctx, lua_KFunction k); -#define lua_call(L,n,r) lua_callk(L, (n), (r), 0, NULL) - -LUA_API int (lua_pcallk) (lua_State *L, int nargs, int nresults, int errfunc, - lua_KContext ctx, lua_KFunction k); -#define lua_pcall(L,n,r,f) lua_pcallk(L, (n), (r), (f), 0, NULL) - -LUA_API int (lua_load) (lua_State *L, lua_Reader reader, void *dt, - const char *chunkname, const char *mode); - -LUA_API int (lua_dump) (lua_State *L, lua_Writer writer, void *data, int strip); - - -/* -** coroutine functions -*/ -LUA_API int (lua_yieldk) (lua_State *L, int nresults, lua_KContext ctx, - lua_KFunction k); -LUA_API int (lua_resume) (lua_State *L, lua_State *from, int narg); -LUA_API int (lua_status) (lua_State *L); -LUA_API int (lua_isyieldable) (lua_State *L); - -#define lua_yield(L,n) lua_yieldk(L, (n), 0, NULL) - - -/* -** garbage-collection function and options -*/ - -#define LUA_GCSTOP 0 -#define LUA_GCRESTART 1 -#define LUA_GCCOLLECT 2 -#define LUA_GCCOUNT 3 -#define LUA_GCCOUNTB 4 -#define LUA_GCSTEP 5 -#define LUA_GCSETPAUSE 6 -#define LUA_GCSETSTEPMUL 7 -#define LUA_GCISRUNNING 9 - -LUA_API int (lua_gc) (lua_State *L, int what, int data); - - -/* -** miscellaneous functions -*/ - -LUA_API int (lua_error) (lua_State *L); - -LUA_API int (lua_next) (lua_State *L, int idx); - -LUA_API void (lua_concat) (lua_State *L, int n); -LUA_API void (lua_len) (lua_State *L, int idx); - -LUA_API size_t (lua_stringtonumber) (lua_State *L, const char *s); - -LUA_API lua_Alloc (lua_getallocf) (lua_State *L, void **ud); -LUA_API void (lua_setallocf) (lua_State *L, lua_Alloc f, void *ud); - - - -/* -** {============================================================== -** some useful macros -** =============================================================== -*/ - -#define lua_getextraspace(L) ((void *)((char *)(L) - LUA_EXTRASPACE)) - -#define lua_tonumber(L,i) lua_tonumberx(L,(i),NULL) -#define lua_tointeger(L,i) lua_tointegerx(L,(i),NULL) - -#define lua_pop(L,n) lua_settop(L, -(n)-1) - -#define lua_newtable(L) lua_createtable(L, 0, 0) - -#define lua_register(L,n,f) (lua_pushcfunction(L, (f)), lua_setglobal(L, (n))) - -#define lua_pushcfunction(L,f) lua_pushcclosure(L, (f), 0) - -#define lua_isfunction(L,n) (lua_type(L, (n)) == LUA_TFUNCTION) -#define lua_istable(L,n) (lua_type(L, (n)) == LUA_TTABLE) -#define lua_islightuserdata(L,n) (lua_type(L, (n)) == LUA_TLIGHTUSERDATA) -#define lua_isnil(L,n) (lua_type(L, (n)) == LUA_TNIL) -#define lua_isboolean(L,n) (lua_type(L, (n)) == LUA_TBOOLEAN) -#define lua_isthread(L,n) (lua_type(L, (n)) == LUA_TTHREAD) -#define lua_isnone(L,n) (lua_type(L, (n)) == LUA_TNONE) -#define lua_isnoneornil(L, n) (lua_type(L, (n)) <= 0) - -#define lua_pushliteral(L, s) lua_pushstring(L, "" s) - -#define lua_pushglobaltable(L) \ - ((void)lua_rawgeti(L, LUA_REGISTRYINDEX, LUA_RIDX_GLOBALS)) - -#define lua_tostring(L,i) lua_tolstring(L, (i), NULL) - - -#define lua_insert(L,idx) lua_rotate(L, (idx), 1) - -#define lua_remove(L,idx) (lua_rotate(L, (idx), -1), lua_pop(L, 1)) - -#define lua_replace(L,idx) (lua_copy(L, -1, (idx)), lua_pop(L, 1)) - -/* }============================================================== */ - - -/* -** {============================================================== -** compatibility macros for unsigned conversions -** =============================================================== -*/ -#if defined(LUA_COMPAT_APIINTCASTS) - -#define lua_pushunsigned(L,n) lua_pushinteger(L, (lua_Integer)(n)) -#define lua_tounsignedx(L,i,is) ((lua_Unsigned)lua_tointegerx(L,i,is)) -#define lua_tounsigned(L,i) lua_tounsignedx(L,(i),NULL) - -#endif -/* }============================================================== */ - -/* -** {====================================================================== -** Debug API -** ======================================================================= -*/ - - -/* -** Event codes -*/ -#define LUA_HOOKCALL 0 -#define LUA_HOOKRET 1 -#define LUA_HOOKLINE 2 -#define LUA_HOOKCOUNT 3 -#define LUA_HOOKTAILCALL 4 - - -/* -** Event masks -*/ -#define LUA_MASKCALL (1 << LUA_HOOKCALL) -#define LUA_MASKRET (1 << LUA_HOOKRET) -#define LUA_MASKLINE (1 << LUA_HOOKLINE) -#define LUA_MASKCOUNT (1 << LUA_HOOKCOUNT) - -typedef struct lua_Debug lua_Debug; /* activation record */ - - -/* Functions to be called by the debugger in specific events */ -typedef void (*lua_Hook) (lua_State *L, lua_Debug *ar); - - -LUA_API int (lua_getstack) (lua_State *L, int level, lua_Debug *ar); -LUA_API int (lua_getinfo) (lua_State *L, const char *what, lua_Debug *ar); -LUA_API const char *(lua_getlocal) (lua_State *L, const lua_Debug *ar, int n); -LUA_API const char *(lua_setlocal) (lua_State *L, const lua_Debug *ar, int n); -LUA_API const char *(lua_getupvalue) (lua_State *L, int funcindex, int n); -LUA_API const char *(lua_setupvalue) (lua_State *L, int funcindex, int n); - -LUA_API void *(lua_upvalueid) (lua_State *L, int fidx, int n); -LUA_API void (lua_upvaluejoin) (lua_State *L, int fidx1, int n1, - int fidx2, int n2); - -LUA_API void (lua_sethook) (lua_State *L, lua_Hook func, int mask, int count); -LUA_API lua_Hook (lua_gethook) (lua_State *L); -LUA_API int (lua_gethookmask) (lua_State *L); -LUA_API int (lua_gethookcount) (lua_State *L); - - -struct lua_Debug { - int event; - const char *name; /* (n) */ - const char *namewhat; /* (n) 'global', 'local', 'field', 'method' */ - const char *what; /* (S) 'Lua', 'C', 'main', 'tail' */ - const char *source; /* (S) */ - int currentline; /* (l) */ - int linedefined; /* (S) */ - int lastlinedefined; /* (S) */ - unsigned char nups; /* (u) number of upvalues */ - unsigned char nparams;/* (u) number of parameters */ - char isvararg; /* (u) */ - char istailcall; /* (t) */ - char short_src[LUA_IDSIZE]; /* (S) */ - /* private part */ - struct CallInfo *i_ci; /* active function */ -}; - -/* }====================================================================== */ - - -/****************************************************************************** -* Copyright (C) 1994-2016 Lua.org, PUC-Rio. -* -* Permission is hereby granted, free of charge, to any person obtaining -* a copy of this software and associated documentation files (the -* "Software"), to deal in the Software without restriction, including -* without limitation the rights to use, copy, modify, merge, publish, -* distribute, sublicense, and/or sell copies of the Software, and to -* permit persons to whom the Software is furnished to do so, subject to -* the following conditions: -* -* The above copyright notice and this permission notice shall be -* included in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -******************************************************************************/ - - -#endif diff --git a/src/external/lua/include/lua.hpp b/src/external/lua/include/lua.hpp deleted file mode 100644 index ec417f59..00000000 --- a/src/external/lua/include/lua.hpp +++ /dev/null @@ -1,9 +0,0 @@ -// lua.hpp -// Lua header files for C++ -// <> not supplied automatically because Lua also compiles as C++ - -extern "C" { -#include "lua.h" -#include "lualib.h" -#include "lauxlib.h" -} diff --git a/src/external/lua/include/luaconf.h b/src/external/lua/include/luaconf.h deleted file mode 100644 index 867e9cb1..00000000 --- a/src/external/lua/include/luaconf.h +++ /dev/null @@ -1,769 +0,0 @@ -/* -** $Id: luaconf.h,v 1.255 2016/05/01 20:06:09 roberto Exp $ -** Configuration file for Lua -** See Copyright Notice in lua.h -*/ - - -#ifndef luaconf_h -#define luaconf_h - -#include -#include - - -/* -** =================================================================== -** Search for "@@" to find all configurable definitions. -** =================================================================== -*/ - - -/* -** {==================================================================== -** System Configuration: macros to adapt (if needed) Lua to some -** particular platform, for instance compiling it with 32-bit numbers or -** restricting it to C89. -** ===================================================================== -*/ - -/* -@@ LUA_32BITS enables Lua with 32-bit integers and 32-bit floats. You -** can also define LUA_32BITS in the make file, but changing here you -** ensure that all software connected to Lua will be compiled with the -** same configuration. -*/ -/* #define LUA_32BITS */ - - -/* -@@ LUA_USE_C89 controls the use of non-ISO-C89 features. -** Define it if you want Lua to avoid the use of a few C99 features -** or Windows-specific features on Windows. -*/ -/* #define LUA_USE_C89 */ - - -/* -** By default, Lua on Windows use (some) specific Windows features -*/ -#if !defined(LUA_USE_C89) && defined(_WIN32) && !defined(_WIN32_WCE) -#define LUA_USE_WINDOWS /* enable goodies for regular Windows */ -#endif - - -#if defined(LUA_USE_WINDOWS) -#define LUA_DL_DLL /* enable support for DLL */ -#define LUA_USE_C89 /* broadly, Windows is C89 */ -#endif - - -#if defined(LUA_USE_LINUX) -#define LUA_USE_POSIX -#define LUA_USE_DLOPEN /* needs an extra library: -ldl */ -#define LUA_USE_READLINE /* needs some extra libraries */ -#endif - - -#if defined(LUA_USE_MACOSX) -#define LUA_USE_POSIX -#define LUA_USE_DLOPEN /* MacOS does not need -ldl */ -#define LUA_USE_READLINE /* needs an extra library: -lreadline */ -#endif - - -/* -@@ LUA_C89_NUMBERS ensures that Lua uses the largest types available for -** C89 ('long' and 'double'); Windows always has '__int64', so it does -** not need to use this case. -*/ -#if defined(LUA_USE_C89) && !defined(LUA_USE_WINDOWS) -#define LUA_C89_NUMBERS -#endif - - - -/* -@@ LUAI_BITSINT defines the (minimum) number of bits in an 'int'. -*/ -/* avoid undefined shifts */ -#if ((INT_MAX >> 15) >> 15) >= 1 -#define LUAI_BITSINT 32 -#else -/* 'int' always must have at least 16 bits */ -#define LUAI_BITSINT 16 -#endif - - -/* -@@ LUA_INT_TYPE defines the type for Lua integers. -@@ LUA_FLOAT_TYPE defines the type for Lua floats. -** Lua should work fine with any mix of these options (if supported -** by your C compiler). The usual configurations are 64-bit integers -** and 'double' (the default), 32-bit integers and 'float' (for -** restricted platforms), and 'long'/'double' (for C compilers not -** compliant with C99, which may not have support for 'long long'). -*/ - -/* predefined options for LUA_INT_TYPE */ -#define LUA_INT_INT 1 -#define LUA_INT_LONG 2 -#define LUA_INT_LONGLONG 3 - -/* predefined options for LUA_FLOAT_TYPE */ -#define LUA_FLOAT_FLOAT 1 -#define LUA_FLOAT_DOUBLE 2 -#define LUA_FLOAT_LONGDOUBLE 3 - -#if defined(LUA_32BITS) /* { */ -/* -** 32-bit integers and 'float' -*/ -#if LUAI_BITSINT >= 32 /* use 'int' if big enough */ -#define LUA_INT_TYPE LUA_INT_INT -#else /* otherwise use 'long' */ -#define LUA_INT_TYPE LUA_INT_LONG -#endif -#define LUA_FLOAT_TYPE LUA_FLOAT_FLOAT - -#elif defined(LUA_C89_NUMBERS) /* }{ */ -/* -** largest types available for C89 ('long' and 'double') -*/ -#define LUA_INT_TYPE LUA_INT_LONG -#define LUA_FLOAT_TYPE LUA_FLOAT_DOUBLE - -#endif /* } */ - - -/* -** default configuration for 64-bit Lua ('long long' and 'double') -*/ -#if !defined(LUA_INT_TYPE) -#define LUA_INT_TYPE LUA_INT_LONGLONG -#endif - -#if !defined(LUA_FLOAT_TYPE) -#define LUA_FLOAT_TYPE LUA_FLOAT_DOUBLE -#endif - -/* }================================================================== */ - - - - -/* -** {================================================================== -** Configuration for Paths. -** =================================================================== -*/ - -/* -@@ LUA_PATH_DEFAULT is the default path that Lua uses to look for -** Lua libraries. -@@ LUA_CPATH_DEFAULT is the default path that Lua uses to look for -** C libraries. -** CHANGE them if your machine has a non-conventional directory -** hierarchy or if you want to install your libraries in -** non-conventional directories. -*/ -#define LUA_VDIR LUA_VERSION_MAJOR "." LUA_VERSION_MINOR -#if defined(_WIN32) /* { */ -/* -** In Windows, any exclamation mark ('!') in the path is replaced by the -** path of the directory of the executable file of the current process. -*/ -#define LUA_LDIR "!\\lua\\" -#define LUA_CDIR "!\\" -#define LUA_SHRDIR "!\\..\\share\\lua\\" LUA_VDIR "\\" -#define LUA_PATH_DEFAULT \ - LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;" \ - LUA_CDIR"?.lua;" LUA_CDIR"?\\init.lua;" \ - LUA_SHRDIR"?.lua;" LUA_SHRDIR"?\\init.lua;" \ - ".\\?.lua;" ".\\?\\init.lua" -#define LUA_CPATH_DEFAULT \ - LUA_CDIR"?.dll;" \ - LUA_CDIR"..\\lib\\lua\\" LUA_VDIR "\\?.dll;" \ - LUA_CDIR"loadall.dll;" ".\\?.dll;" \ - LUA_CDIR"?53.dll;" ".\\?53.dll" - -#else /* }{ */ - -#define LUA_ROOT "/usr/local/" -#define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR "/" -#define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR "/" -#define LUA_PATH_DEFAULT \ - LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ - LUA_CDIR"?.lua;" LUA_CDIR"?/init.lua;" \ - "./?.lua;" "./?/init.lua" -#define LUA_CPATH_DEFAULT \ - LUA_CDIR"?.so;" LUA_CDIR"loadall.so;" "./?.so;" \ - LUA_CDIR"lib?53.so;" "./lib?53.so" -#endif /* } */ - - -/* -@@ LUA_DIRSEP is the directory separator (for submodules). -** CHANGE it if your machine does not use "/" as the directory separator -** and is not Windows. (On Windows Lua automatically uses "\".) -*/ -#if defined(_WIN32) -#define LUA_DIRSEP "\\" -#else -#define LUA_DIRSEP "/" -#endif - -/* }================================================================== */ - - -/* -** {================================================================== -** Marks for exported symbols in the C code -** =================================================================== -*/ - -/* -@@ LUA_API is a mark for all core API functions. -@@ LUALIB_API is a mark for all auxiliary library functions. -@@ LUAMOD_API is a mark for all standard library opening functions. -** CHANGE them if you need to define those functions in some special way. -** For instance, if you want to create one Windows DLL with the core and -** the libraries, you may want to use the following definition (define -** LUA_BUILD_AS_DLL to get it). -*/ -#if defined(LUA_BUILD_AS_DLL) /* { */ - -#if defined(LUA_CORE) || defined(LUA_LIB) /* { */ -#define LUA_API __declspec(dllexport) -#else /* }{ */ -#define LUA_API __declspec(dllimport) -#endif /* } */ - -#else /* }{ */ - -#define LUA_API extern - -#endif /* } */ - - -/* more often than not the libs go together with the core */ -#define LUALIB_API LUA_API -#define LUAMOD_API LUALIB_API - - -/* -@@ LUAI_FUNC is a mark for all extern functions that are not to be -** exported to outside modules. -@@ LUAI_DDEF and LUAI_DDEC are marks for all extern (const) variables -** that are not to be exported to outside modules (LUAI_DDEF for -** definitions and LUAI_DDEC for declarations). -** CHANGE them if you need to mark them in some special way. Elf/gcc -** (versions 3.2 and later) mark them as "hidden" to optimize access -** when Lua is compiled as a shared library. Not all elf targets support -** this attribute. Unfortunately, gcc does not offer a way to check -** whether the target offers that support, and those without support -** give a warning about it. To avoid these warnings, change to the -** default definition. -*/ -#if defined(__GNUC__) && ((__GNUC__*100 + __GNUC_MINOR__) >= 302) && \ - defined(__ELF__) /* { */ -#define LUAI_FUNC __attribute__((visibility("hidden"))) extern -#else /* }{ */ -#define LUAI_FUNC extern -#endif /* } */ - -#define LUAI_DDEC LUAI_FUNC -#define LUAI_DDEF /* empty */ - -/* }================================================================== */ - - -/* -** {================================================================== -** Compatibility with previous versions -** =================================================================== -*/ - -/* -@@ LUA_COMPAT_5_2 controls other macros for compatibility with Lua 5.2. -@@ LUA_COMPAT_5_1 controls other macros for compatibility with Lua 5.1. -** You can define it to get all options, or change specific options -** to fit your specific needs. -*/ -#if defined(LUA_COMPAT_5_2) /* { */ - -/* -@@ LUA_COMPAT_MATHLIB controls the presence of several deprecated -** functions in the mathematical library. -*/ -#define LUA_COMPAT_MATHLIB - -/* -@@ LUA_COMPAT_BITLIB controls the presence of library 'bit32'. -*/ -#define LUA_COMPAT_BITLIB - -/* -@@ LUA_COMPAT_IPAIRS controls the effectiveness of the __ipairs metamethod. -*/ -#define LUA_COMPAT_IPAIRS - -/* -@@ LUA_COMPAT_APIINTCASTS controls the presence of macros for -** manipulating other integer types (lua_pushunsigned, lua_tounsigned, -** luaL_checkint, luaL_checklong, etc.) -*/ -#define LUA_COMPAT_APIINTCASTS - -#endif /* } */ - - -#if defined(LUA_COMPAT_5_1) /* { */ - -/* Incompatibilities from 5.2 -> 5.3 */ -#define LUA_COMPAT_MATHLIB -#define LUA_COMPAT_APIINTCASTS - -/* -@@ LUA_COMPAT_UNPACK controls the presence of global 'unpack'. -** You can replace it with 'table.unpack'. -*/ -#define LUA_COMPAT_UNPACK - -/* -@@ LUA_COMPAT_LOADERS controls the presence of table 'package.loaders'. -** You can replace it with 'package.searchers'. -*/ -#define LUA_COMPAT_LOADERS - -/* -@@ macro 'lua_cpcall' emulates deprecated function lua_cpcall. -** You can call your C function directly (with light C functions). -*/ -#define lua_cpcall(L,f,u) \ - (lua_pushcfunction(L, (f)), \ - lua_pushlightuserdata(L,(u)), \ - lua_pcall(L,1,0,0)) - - -/* -@@ LUA_COMPAT_LOG10 defines the function 'log10' in the math library. -** You can rewrite 'log10(x)' as 'log(x, 10)'. -*/ -#define LUA_COMPAT_LOG10 - -/* -@@ LUA_COMPAT_LOADSTRING defines the function 'loadstring' in the base -** library. You can rewrite 'loadstring(s)' as 'load(s)'. -*/ -#define LUA_COMPAT_LOADSTRING - -/* -@@ LUA_COMPAT_MAXN defines the function 'maxn' in the table library. -*/ -#define LUA_COMPAT_MAXN - -/* -@@ The following macros supply trivial compatibility for some -** changes in the API. The macros themselves document how to -** change your code to avoid using them. -*/ -#define lua_strlen(L,i) lua_rawlen(L, (i)) - -#define lua_objlen(L,i) lua_rawlen(L, (i)) - -#define lua_equal(L,idx1,idx2) lua_compare(L,(idx1),(idx2),LUA_OPEQ) -#define lua_lessthan(L,idx1,idx2) lua_compare(L,(idx1),(idx2),LUA_OPLT) - -/* -@@ LUA_COMPAT_MODULE controls compatibility with previous -** module functions 'module' (Lua) and 'luaL_register' (C). -*/ -#define LUA_COMPAT_MODULE - -#endif /* } */ - - -/* -@@ LUA_COMPAT_FLOATSTRING makes Lua format integral floats without a -@@ a float mark ('.0'). -** This macro is not on by default even in compatibility mode, -** because this is not really an incompatibility. -*/ -/* #define LUA_COMPAT_FLOATSTRING */ - -/* }================================================================== */ - - - -/* -** {================================================================== -** Configuration for Numbers. -** Change these definitions if no predefined LUA_FLOAT_* / LUA_INT_* -** satisfy your needs. -** =================================================================== -*/ - -/* -@@ LUA_NUMBER is the floating-point type used by Lua. -@@ LUAI_UACNUMBER is the result of an 'usual argument conversion' -@@ over a floating number. -@@ l_mathlim(x) corrects limit name 'x' to the proper float type -** by prefixing it with one of FLT/DBL/LDBL. -@@ LUA_NUMBER_FRMLEN is the length modifier for writing floats. -@@ LUA_NUMBER_FMT is the format for writing floats. -@@ lua_number2str converts a float to a string. -@@ l_mathop allows the addition of an 'l' or 'f' to all math operations. -@@ l_floor takes the floor of a float. -@@ lua_str2number converts a decimal numeric string to a number. -*/ - - -/* The following definitions are good for most cases here */ - -#define l_floor(x) (l_mathop(floor)(x)) - -#define lua_number2str(s,sz,n) l_sprintf((s), sz, LUA_NUMBER_FMT, (n)) - -/* -@@ lua_numbertointeger converts a float number to an integer, or -** returns 0 if float is not within the range of a lua_Integer. -** (The range comparisons are tricky because of rounding. The tests -** here assume a two-complement representation, where MININTEGER always -** has an exact representation as a float; MAXINTEGER may not have one, -** and therefore its conversion to float may have an ill-defined value.) -*/ -#define lua_numbertointeger(n,p) \ - ((n) >= (LUA_NUMBER)(LUA_MININTEGER) && \ - (n) < -(LUA_NUMBER)(LUA_MININTEGER) && \ - (*(p) = (LUA_INTEGER)(n), 1)) - - -/* now the variable definitions */ - -#if LUA_FLOAT_TYPE == LUA_FLOAT_FLOAT /* { single float */ - -#define LUA_NUMBER float - -#define l_mathlim(n) (FLT_##n) - -#define LUAI_UACNUMBER double - -#define LUA_NUMBER_FRMLEN "" -#define LUA_NUMBER_FMT "%.7g" - -#define l_mathop(op) op##f - -#define lua_str2number(s,p) strtof((s), (p)) - - -#elif LUA_FLOAT_TYPE == LUA_FLOAT_LONGDOUBLE /* }{ long double */ - -#define LUA_NUMBER long double - -#define l_mathlim(n) (LDBL_##n) - -#define LUAI_UACNUMBER long double - -#define LUA_NUMBER_FRMLEN "L" -#define LUA_NUMBER_FMT "%.19Lg" - -#define l_mathop(op) op##l - -#define lua_str2number(s,p) strtold((s), (p)) - -#elif LUA_FLOAT_TYPE == LUA_FLOAT_DOUBLE /* }{ double */ - -#define LUA_NUMBER double - -#define l_mathlim(n) (DBL_##n) - -#define LUAI_UACNUMBER double - -#define LUA_NUMBER_FRMLEN "" -#define LUA_NUMBER_FMT "%.14g" - -#define l_mathop(op) op - -#define lua_str2number(s,p) strtod((s), (p)) - -#else /* }{ */ - -#error "numeric float type not defined" - -#endif /* } */ - - - -/* -@@ LUA_INTEGER is the integer type used by Lua. -** -@@ LUA_UNSIGNED is the unsigned version of LUA_INTEGER. -** -@@ LUAI_UACINT is the result of an 'usual argument conversion' -@@ over a lUA_INTEGER. -@@ LUA_INTEGER_FRMLEN is the length modifier for reading/writing integers. -@@ LUA_INTEGER_FMT is the format for writing integers. -@@ LUA_MAXINTEGER is the maximum value for a LUA_INTEGER. -@@ LUA_MININTEGER is the minimum value for a LUA_INTEGER. -@@ lua_integer2str converts an integer to a string. -*/ - - -/* The following definitions are good for most cases here */ - -#define LUA_INTEGER_FMT "%" LUA_INTEGER_FRMLEN "d" -#define lua_integer2str(s,sz,n) l_sprintf((s), sz, LUA_INTEGER_FMT, (n)) - -#define LUAI_UACINT LUA_INTEGER - -/* -** use LUAI_UACINT here to avoid problems with promotions (which -** can turn a comparison between unsigneds into a signed comparison) -*/ -#define LUA_UNSIGNED unsigned LUAI_UACINT - - -/* now the variable definitions */ - -#if LUA_INT_TYPE == LUA_INT_INT /* { int */ - -#define LUA_INTEGER int -#define LUA_INTEGER_FRMLEN "" - -#define LUA_MAXINTEGER INT_MAX -#define LUA_MININTEGER INT_MIN - -#elif LUA_INT_TYPE == LUA_INT_LONG /* }{ long */ - -#define LUA_INTEGER long -#define LUA_INTEGER_FRMLEN "l" - -#define LUA_MAXINTEGER LONG_MAX -#define LUA_MININTEGER LONG_MIN - -#elif LUA_INT_TYPE == LUA_INT_LONGLONG /* }{ long long */ - -/* use presence of macro LLONG_MAX as proxy for C99 compliance */ -#if defined(LLONG_MAX) /* { */ -/* use ISO C99 stuff */ - -#define LUA_INTEGER long long -#define LUA_INTEGER_FRMLEN "ll" - -#define LUA_MAXINTEGER LLONG_MAX -#define LUA_MININTEGER LLONG_MIN - -#elif defined(LUA_USE_WINDOWS) /* }{ */ -/* in Windows, can use specific Windows types */ - -#define LUA_INTEGER __int64 -#define LUA_INTEGER_FRMLEN "I64" - -#define LUA_MAXINTEGER _I64_MAX -#define LUA_MININTEGER _I64_MIN - -#else /* }{ */ - -#error "Compiler does not support 'long long'. Use option '-DLUA_32BITS' \ - or '-DLUA_C89_NUMBERS' (see file 'luaconf.h' for details)" - -#endif /* } */ - -#else /* }{ */ - -#error "numeric integer type not defined" - -#endif /* } */ - -/* }================================================================== */ - - -/* -** {================================================================== -** Dependencies with C99 and other C details -** =================================================================== -*/ - -/* -@@ l_sprintf is equivalent to 'snprintf' or 'sprintf' in C89. -** (All uses in Lua have only one format item.) -*/ -#if !defined(LUA_USE_C89) -#define l_sprintf(s,sz,f,i) snprintf(s,sz,f,i) -#else -#define l_sprintf(s,sz,f,i) ((void)(sz), sprintf(s,f,i)) -#endif - - -/* -@@ lua_strx2number converts an hexadecimal numeric string to a number. -** In C99, 'strtod' does that conversion. Otherwise, you can -** leave 'lua_strx2number' undefined and Lua will provide its own -** implementation. -*/ -#if !defined(LUA_USE_C89) -#define lua_strx2number(s,p) lua_str2number(s,p) -#endif - - -/* -@@ lua_number2strx converts a float to an hexadecimal numeric string. -** In C99, 'sprintf' (with format specifiers '%a'/'%A') does that. -** Otherwise, you can leave 'lua_number2strx' undefined and Lua will -** provide its own implementation. -*/ -#if !defined(LUA_USE_C89) -#define lua_number2strx(L,b,sz,f,n) ((void)L, l_sprintf(b,sz,f,n)) -#endif - - -/* -** 'strtof' and 'opf' variants for math functions are not valid in -** C89. Otherwise, the macro 'HUGE_VALF' is a good proxy for testing the -** availability of these variants. ('math.h' is already included in -** all files that use these macros.) -*/ -#if defined(LUA_USE_C89) || (defined(HUGE_VAL) && !defined(HUGE_VALF)) -#undef l_mathop /* variants not available */ -#undef lua_str2number -#define l_mathop(op) (lua_Number)op /* no variant */ -#define lua_str2number(s,p) ((lua_Number)strtod((s), (p))) -#endif - - -/* -@@ LUA_KCONTEXT is the type of the context ('ctx') for continuation -** functions. It must be a numerical type; Lua will use 'intptr_t' if -** available, otherwise it will use 'ptrdiff_t' (the nearest thing to -** 'intptr_t' in C89) -*/ -#define LUA_KCONTEXT ptrdiff_t - -#if !defined(LUA_USE_C89) && defined(__STDC_VERSION__) && \ - __STDC_VERSION__ >= 199901L -#include -#if defined(INTPTR_MAX) /* even in C99 this type is optional */ -#undef LUA_KCONTEXT -#define LUA_KCONTEXT intptr_t -#endif -#endif - - -/* -@@ lua_getlocaledecpoint gets the locale "radix character" (decimal point). -** Change that if you do not want to use C locales. (Code using this -** macro must include header 'locale.h'.) -*/ -#if !defined(lua_getlocaledecpoint) -#define lua_getlocaledecpoint() (localeconv()->decimal_point[0]) -#endif - -/* }================================================================== */ - - -/* -** {================================================================== -** Language Variations -** ===================================================================== -*/ - -/* -@@ LUA_NOCVTN2S/LUA_NOCVTS2N control how Lua performs some -** coercions. Define LUA_NOCVTN2S to turn off automatic coercion from -** numbers to strings. Define LUA_NOCVTS2N to turn off automatic -** coercion from strings to numbers. -*/ -/* #define LUA_NOCVTN2S */ -/* #define LUA_NOCVTS2N */ - - -/* -@@ LUA_USE_APICHECK turns on several consistency checks on the C API. -** Define it as a help when debugging C code. -*/ -#if defined(LUA_USE_APICHECK) -#include -#define luai_apicheck(l,e) assert(e) -#endif - -/* }================================================================== */ - - -/* -** {================================================================== -** Macros that affect the API and must be stable (that is, must be the -** same when you compile Lua and when you compile code that links to -** Lua). You probably do not want/need to change them. -** ===================================================================== -*/ - -/* -@@ LUAI_MAXSTACK limits the size of the Lua stack. -** CHANGE it if you need a different limit. This limit is arbitrary; -** its only purpose is to stop Lua from consuming unlimited stack -** space (and to reserve some numbers for pseudo-indices). -*/ -#if LUAI_BITSINT >= 32 -#define LUAI_MAXSTACK 1000000 -#else -#define LUAI_MAXSTACK 15000 -#endif - - -/* -@@ LUA_EXTRASPACE defines the size of a raw memory area associated with -** a Lua state with very fast access. -** CHANGE it if you need a different size. -*/ -#define LUA_EXTRASPACE (sizeof(void *)) - - -/* -@@ LUA_IDSIZE gives the maximum size for the description of the source -@@ of a function in debug information. -** CHANGE it if you want a different size. -*/ -#define LUA_IDSIZE 60 - - -/* -@@ LUAL_BUFFERSIZE is the buffer size used by the lauxlib buffer system. -** CHANGE it if it uses too much C-stack space. (For long double, -** 'string.format("%.99f", 1e4932)' needs ~5030 bytes, so a -** smaller buffer would force a memory allocation for each call to -** 'string.format'.) -*/ -#if defined(LUA_FLOAT_LONGDOUBLE) -#define LUAL_BUFFERSIZE 8192 -#else -#define LUAL_BUFFERSIZE ((int)(0x80 * sizeof(void*) * sizeof(lua_Integer))) -#endif - -/* }================================================================== */ - - -/* -@@ LUA_QL describes how error messages quote program elements. -** Lua does not use these macros anymore; they are here for -** compatibility only. -*/ -#define LUA_QL(x) "'" x "'" -#define LUA_QS LUA_QL("%s") - - - - -/* =================================================================== */ - -/* -** Local configuration. You can use this space to add your redefinitions -** without modifying the main part of the file. -*/ - - - - - -#endif - diff --git a/src/external/lua/include/lualib.h b/src/external/lua/include/lualib.h deleted file mode 100644 index 5165c0fb..00000000 --- a/src/external/lua/include/lualib.h +++ /dev/null @@ -1,58 +0,0 @@ -/* -** $Id: lualib.h,v 1.44 2014/02/06 17:32:33 roberto Exp $ -** Lua standard libraries -** See Copyright Notice in lua.h -*/ - - -#ifndef lualib_h -#define lualib_h - -#include "lua.h" - - - -LUAMOD_API int (luaopen_base) (lua_State *L); - -#define LUA_COLIBNAME "coroutine" -LUAMOD_API int (luaopen_coroutine) (lua_State *L); - -#define LUA_TABLIBNAME "table" -LUAMOD_API int (luaopen_table) (lua_State *L); - -#define LUA_IOLIBNAME "io" -LUAMOD_API int (luaopen_io) (lua_State *L); - -#define LUA_OSLIBNAME "os" -LUAMOD_API int (luaopen_os) (lua_State *L); - -#define LUA_STRLIBNAME "string" -LUAMOD_API int (luaopen_string) (lua_State *L); - -#define LUA_UTF8LIBNAME "utf8" -LUAMOD_API int (luaopen_utf8) (lua_State *L); - -#define LUA_BITLIBNAME "bit32" -LUAMOD_API int (luaopen_bit32) (lua_State *L); - -#define LUA_MATHLIBNAME "math" -LUAMOD_API int (luaopen_math) (lua_State *L); - -#define LUA_DBLIBNAME "debug" -LUAMOD_API int (luaopen_debug) (lua_State *L); - -#define LUA_LOADLIBNAME "package" -LUAMOD_API int (luaopen_package) (lua_State *L); - - -/* open all previous libraries */ -LUALIB_API void (luaL_openlibs) (lua_State *L); - - - -#if !defined(lua_assert) -#define lua_assert(x) ((void)0) -#endif - - -#endif diff --git a/src/external/lua/lib/liblua53.a b/src/external/lua/lib/liblua53.a deleted file mode 100644 index e51c0c805537bb7611ee9a5066d73c59a5670450..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 322424 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