123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- /*
- ** Configuration header.
- ** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h
- */
- #ifndef luaconf_h
- #define luaconf_h
- #include <limits.h>
- #include <stddef.h>
- /* Default path for loading Lua and C modules with require(). */
- #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_PATH_DEFAULT \
- ".\\?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;"
- #define LUA_CPATH_DEFAULT \
- ".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll"
- #else
- /*
- ** Note to distribution maintainers: do NOT patch the following line!
- ** Please read ../doc/install.html#distro and pass PREFIX=/usr instead.
- */
- #define LUA_ROOT "/usr/local/"
- #define LUA_LDIR LUA_ROOT "share/lua/5.1/"
- #define LUA_CDIR LUA_ROOT "lib/lua/5.1/"
- #ifdef LUA_XROOT
- #define LUA_JDIR LUA_XROOT "share/luajit-2.0.2/"
- #define LUA_XPATH \
- ";" LUA_XROOT "share/lua/5.1/?.lua;" LUA_XROOT "share/lua/5.1/?/init.lua"
- #define LUA_XCPATH LUA_XROOT "lib/lua/5.1/?.so;"
- #else
- #define LUA_JDIR LUA_ROOT "share/luajit-2.0.2/"
- #define LUA_XPATH
- #define LUA_XCPATH
- #endif
- #define LUA_PATH_DEFAULT \
- "./?.lua;" LUA_JDIR"?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua" LUA_XPATH
- #define LUA_CPATH_DEFAULT \
- "./?.so;" LUA_CDIR"?.so;" LUA_XCPATH LUA_CDIR"loadall.so"
- #endif
- /* Environment variable names for path overrides and initialization code. */
- #define LUA_PATH "LUA_PATH"
- #define LUA_CPATH "LUA_CPATH"
- #define LUA_INIT "LUA_INIT"
- /* Special file system characters. */
- #if defined(_WIN32)
- #define LUA_DIRSEP "\\"
- #else
- #define LUA_DIRSEP "/"
- #endif
- #define LUA_PATHSEP ";"
- #define LUA_PATH_MARK "?"
- #define LUA_EXECDIR "!"
- #define LUA_IGMARK "-"
- #define LUA_PATH_CONFIG \
- LUA_DIRSEP "\n" LUA_PATHSEP "\n" LUA_PATH_MARK "\n" \
- LUA_EXECDIR "\n" LUA_IGMARK
- /* Quoting in error messages. */
- #define LUA_QL(x) "'" x "'"
- #define LUA_QS LUA_QL("%s")
- /* Various tunables. */
- #define LUAI_MAXSTACK 65500 /* Max. # of stack slots for a thread (<64K). */
- #define LUAI_MAXCSTACK 8000 /* Max. # of stack slots for a C func (<10K). */
- #define LUAI_GCPAUSE 200 /* Pause GC until memory is at 200%. */
- #define LUAI_GCMUL 200 /* Run GC at 200% of allocation speed. */
- #define LUA_MAXCAPTURES 32 /* Max. pattern captures. */
- /* Compatibility with older library function names. */
- #define LUA_COMPAT_MOD /* OLD: math.mod, NEW: math.fmod */
- #define LUA_COMPAT_GFIND /* OLD: string.gfind, NEW: string.gmatch */
- /* Configuration for the frontend (the luajit executable). */
- #if defined(luajit_c)
- #define LUA_PROGNAME "luajit" /* Fallback frontend name. */
- #define LUA_PROMPT "> " /* Interactive prompt. */
- #define LUA_PROMPT2 ">> " /* Continuation prompt. */
- #define LUA_MAXINPUT 512 /* Max. input line length. */
- #endif
- /* Note: changing the following defines breaks the Lua 5.1 ABI. */
- #define LUA_INTEGER ptrdiff_t
- #define LUA_IDSIZE 60 /* Size of lua_Debug.short_src. */
- /*
- ** Size of lauxlib and io.* on-stack buffers. Weird workaround to avoid using
- ** unreasonable amounts of stack space, but still retain ABI compatibility.
- ** Blame Lua for depending on BUFSIZ in the ABI, blame **** for wrecking it.
- */
- #define LUAL_BUFFERSIZE (BUFSIZ > 16384 ? 8192 : BUFSIZ)
- /* The following defines are here only for compatibility with luaconf.h
- ** from the standard Lua distribution. They must not be changed for LuaJIT.
- */
- #define LUA_NUMBER_DOUBLE
- #define LUA_NUMBER double
- #define LUAI_UACNUMBER double
- #define LUA_NUMBER_SCAN "%lf"
- #define LUA_NUMBER_FMT "%.14g"
- #define lua_number2str(s, n) sprintf((s), LUA_NUMBER_FMT, (n))
- #define LUAI_MAXNUMBER2STR 32
- #define LUA_INTFRMLEN "l"
- #define LUA_INTFRM_T long
- /* Linkage of public API functions. */
- #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
- #define LUALIB_API LUA_API
- /* Support for internal assertions. */
- #if defined(LUA_USE_ASSERT) || defined(LUA_USE_APICHECK)
- #include <assert.h>
- #endif
- #ifdef LUA_USE_ASSERT
- #define lua_assert(x) assert(x)
- #endif
- #ifdef LUA_USE_APICHECK
- #define luai_apicheck(L, o) { (void)L; assert(o); }
- #else
- #define luai_apicheck(L, o) { (void)L; }
- #endif
- #endif
|