root/luaconf.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2 ** Configuration header.
   3 ** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
   4 */
   5 
   6 #ifndef luaconf_h
   7 #define luaconf_h
   8 
   9 #ifndef WINVER
  10 #define WINVER 0x0501
  11 #endif
  12 #include <limits.h>
  13 #include <stddef.h>
  14 
  15 /* Default path for loading Lua and C modules with require(). */
  16 #if defined(_WIN32)
  17 /*
  18 ** In Windows, any exclamation mark ('!') in the path is replaced by the
  19 ** path of the directory of the executable file of the current process.
  20 */
  21 #define LUA_LDIR        "!\\lua\\"
  22 #define LUA_CDIR        "!\\"
  23 #define LUA_PATH_DEFAULT \
  24   ".\\?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;"
  25 #define LUA_CPATH_DEFAULT \
  26   ".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll"
  27 #else
  28 /*
  29 ** Note to distribution maintainers: do NOT patch the following lines!
  30 ** Please read ../doc/install.html#distro and pass PREFIX=/usr instead.
  31 */
  32 #ifndef LUA_MULTILIB
  33 #define LUA_MULTILIB    "lib"
  34 #endif
  35 #ifndef LUA_LMULTILIB
  36 #define LUA_LMULTILIB   "lib"
  37 #endif
  38 #define LUA_LROOT       "/usr/local"
  39 #define LUA_LUADIR      "/lua/5.1/"
  40 #define LUA_LJDIR       "/luajit-2.1.0-beta3/"
  41 
  42 #ifdef LUA_ROOT
  43 #define LUA_JROOT       LUA_ROOT
  44 #define LUA_RLDIR       LUA_ROOT "/share" LUA_LUADIR
  45 #define LUA_RCDIR       LUA_ROOT "/" LUA_MULTILIB LUA_LUADIR
  46 #define LUA_RLPATH      ";" LUA_RLDIR "?.lua;" LUA_RLDIR "?/init.lua"
  47 #define LUA_RCPATH      ";" LUA_RCDIR "?.so"
  48 #else
  49 #define LUA_JROOT       LUA_LROOT
  50 #define LUA_RLPATH
  51 #define LUA_RCPATH
  52 #endif
  53 
  54 #define LUA_JPATH       ";" LUA_JROOT "/share" LUA_LJDIR "?.lua"
  55 #define LUA_LLDIR       LUA_LROOT "/share" LUA_LUADIR
  56 #define LUA_LCDIR       LUA_LROOT "/" LUA_LMULTILIB LUA_LUADIR
  57 #define LUA_LLPATH      ";" LUA_LLDIR "?.lua;" LUA_LLDIR "?/init.lua"
  58 #define LUA_LCPATH1     ";" LUA_LCDIR "?.so"
  59 #define LUA_LCPATH2     ";" LUA_LCDIR "loadall.so"
  60 
  61 #define LUA_PATH_DEFAULT        "./?.lua" LUA_JPATH LUA_LLPATH LUA_RLPATH
  62 #define LUA_CPATH_DEFAULT       "./?.so" LUA_LCPATH1 LUA_RCPATH LUA_LCPATH2
  63 #endif
  64 
  65 /* Environment variable names for path overrides and initialization code. */
  66 #define LUA_PATH        "LUA_PATH"
  67 #define LUA_CPATH       "LUA_CPATH"
  68 #define LUA_INIT        "LUA_INIT"
  69 
  70 /* Special file system characters. */
  71 #if defined(_WIN32)
  72 #define LUA_DIRSEP      "\\"
  73 #else
  74 #define LUA_DIRSEP      "/"
  75 #endif
  76 #define LUA_PATHSEP     ";"
  77 #define LUA_PATH_MARK   "?"
  78 #define LUA_EXECDIR     "!"
  79 #define LUA_IGMARK      "-"
  80 #define LUA_PATH_CONFIG \
  81   LUA_DIRSEP "\n" LUA_PATHSEP "\n" LUA_PATH_MARK "\n" \
  82   LUA_EXECDIR "\n" LUA_IGMARK "\n"
  83 
  84 /* Quoting in error messages. */
  85 #define LUA_QL(x)       "'" x "'"
  86 #define LUA_QS          LUA_QL("%s")
  87 
  88 /* Various tunables. */
  89 #define LUAI_MAXSTACK   65500   /* Max. # of stack slots for a thread (<64K). */
  90 #define LUAI_MAXCSTACK  8000    /* Max. # of stack slots for a C func (<10K). */
  91 #define LUAI_GCPAUSE    200     /* Pause GC until memory is at 200%. */
  92 #define LUAI_GCMUL      200     /* Run GC at 200% of allocation speed. */
  93 #define LUA_MAXCAPTURES 32      /* Max. pattern captures. */
  94 
  95 /* Configuration for the frontend (the luajit executable). */
  96 #if defined(luajit_c)
  97 #define LUA_PROGNAME    "luajit"  /* Fallback frontend name. */
  98 #define LUA_PROMPT      "> "    /* Interactive prompt. */
  99 #define LUA_PROMPT2     ">> "   /* Continuation prompt. */
 100 #define LUA_MAXINPUT    512     /* Max. input line length. */
 101 #endif
 102 
 103 /* Note: changing the following defines breaks the Lua 5.1 ABI. */
 104 #define LUA_INTEGER     ptrdiff_t
 105 #define LUA_IDSIZE      60      /* Size of lua_Debug.short_src. */
 106 /*
 107 ** Size of lauxlib and io.* on-stack buffers. Weird workaround to avoid using
 108 ** unreasonable amounts of stack space, but still retain ABI compatibility.
 109 ** Blame Lua for depending on BUFSIZ in the ABI, blame **** for wrecking it.
 110 */
 111 #define LUAL_BUFFERSIZE (BUFSIZ > 16384 ? 8192 : BUFSIZ)
 112 
 113 /* The following defines are here only for compatibility with luaconf.h
 114 ** from the standard Lua distribution. They must not be changed for LuaJIT.
 115 */
 116 #define LUA_NUMBER_DOUBLE
 117 #define LUA_NUMBER              double
 118 #define LUAI_UACNUMBER          double
 119 #define LUA_NUMBER_SCAN         "%lf"
 120 #define LUA_NUMBER_FMT          "%.14g"
 121 #define lua_number2str(s, n)    sprintf((s), LUA_NUMBER_FMT, (n))
 122 #define LUAI_MAXNUMBER2STR      32
 123 #define LUA_INTFRMLEN           "l"
 124 #define LUA_INTFRM_T            long
 125 
 126 /* Linkage of public API functions. */
 127 #if defined(LUA_BUILD_AS_DLL)
 128 #if defined(LUA_CORE) || defined(LUA_LIB)
 129 #define LUA_API         __declspec(dllexport)
 130 #else
 131 #define LUA_API         __declspec(dllimport)
 132 #endif
 133 #else
 134 #define LUA_API         extern
 135 #endif
 136 
 137 #define LUALIB_API      LUA_API
 138 
 139 /* Support for internal assertions. */
 140 #if defined(LUA_USE_ASSERT) || defined(LUA_USE_APICHECK)
 141 #include <assert.h>
 142 #endif
 143 #ifdef LUA_USE_ASSERT
 144 #define lua_assert(x)           assert(x)
 145 #endif
 146 #ifdef LUA_USE_APICHECK
 147 #define luai_apicheck(L, o)     { (void)L; assert(o); }
 148 #else
 149 #define luai_apicheck(L, o)     { (void)L; }
 150 #endif
 151 
 152 #endif

/* [<][>][^][v][top][bottom][index][help] */