diff options
Diffstat (limited to 'apps/plugins/lua/luaconf.h')
-rw-r--r-- | apps/plugins/lua/luaconf.h | 335 |
1 files changed, 194 insertions, 141 deletions
diff --git a/apps/plugins/lua/luaconf.h b/apps/plugins/lua/luaconf.h index 3ed495b207..4b6f25d008 100644 --- a/apps/plugins/lua/luaconf.h +++ b/apps/plugins/lua/luaconf.h | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id$ | 2 | ** $Id: luaconf.h,v 1.82.1.7 2008/02/11 16:25:08 roberto Exp $ |
3 | ** Configuration file for Lua | 3 | ** Configuration file for Lua |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -35,13 +35,13 @@ | |||
35 | 35 | ||
36 | #if defined(LUA_USE_LINUX) | 36 | #if defined(LUA_USE_LINUX) |
37 | #define LUA_USE_POSIX | 37 | #define LUA_USE_POSIX |
38 | #define LUA_USE_DLOPEN /* needs an extra library: -ldl */ | 38 | #define LUA_USE_DLOPEN /* needs an extra library: -ldl */ |
39 | #define LUA_USE_READLINE /* needs some extra libraries */ | 39 | #define LUA_USE_READLINE /* needs some extra libraries */ |
40 | #endif | 40 | #endif |
41 | 41 | ||
42 | #if defined(LUA_USE_MACOSX) | 42 | #if defined(LUA_USE_MACOSX) |
43 | #define LUA_USE_POSIX | 43 | #define LUA_USE_POSIX |
44 | #define LUA_DL_DYLD /* does not need extra library */ | 44 | #define LUA_DL_DYLD /* does not need extra library */ |
45 | #endif | 45 | #endif |
46 | 46 | ||
47 | 47 | ||
@@ -68,7 +68,7 @@ | |||
68 | */ | 68 | */ |
69 | #define LUA_PATH "LUA_PATH" | 69 | #define LUA_PATH "LUA_PATH" |
70 | #define LUA_CPATH "LUA_CPATH" | 70 | #define LUA_CPATH "LUA_CPATH" |
71 | #define LUA_INIT "LUA_INIT" | 71 | #define LUA_INIT "LUA_INIT" |
72 | 72 | ||
73 | 73 | ||
74 | /* | 74 | /* |
@@ -85,23 +85,23 @@ | |||
85 | ** In Windows, any exclamation mark ('!') in the path is replaced by the | 85 | ** In Windows, any exclamation mark ('!') in the path is replaced by the |
86 | ** path of the directory of the executable file of the current process. | 86 | ** path of the directory of the executable file of the current process. |
87 | */ | 87 | */ |
88 | #define LUA_LDIR "!\\lua\\" | 88 | #define LUA_LDIR "!\\lua\\" |
89 | #define LUA_CDIR "!\\" | 89 | #define LUA_CDIR "!\\" |
90 | #define LUA_PATH_DEFAULT \ | 90 | #define LUA_PATH_DEFAULT \ |
91 | ".\\?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;" \ | 91 | ".\\?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;" \ |
92 | LUA_CDIR"?.lua;" LUA_CDIR"?\\init.lua" | 92 | LUA_CDIR"?.lua;" LUA_CDIR"?\\init.lua" |
93 | #define LUA_CPATH_DEFAULT \ | 93 | #define LUA_CPATH_DEFAULT \ |
94 | ".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll" | 94 | ".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll" |
95 | 95 | ||
96 | #else | 96 | #else |
97 | #define LUA_ROOT "/usr/local/" | 97 | #define LUA_ROOT "/usr/local/" |
98 | #define LUA_LDIR LUA_ROOT "share/lua/5.1/" | 98 | #define LUA_LDIR LUA_ROOT "share/lua/5.1/" |
99 | #define LUA_CDIR LUA_ROOT "lib/lua/5.1/" | 99 | #define LUA_CDIR LUA_ROOT "lib/lua/5.1/" |
100 | #define LUA_PATH_DEFAULT \ | 100 | #define LUA_PATH_DEFAULT \ |
101 | "./?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ | 101 | "./?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ |
102 | LUA_CDIR"?.lua;" LUA_CDIR"?/init.lua" | 102 | LUA_CDIR"?.lua;" LUA_CDIR"?/init.lua" |
103 | #define LUA_CPATH_DEFAULT \ | 103 | #define LUA_CPATH_DEFAULT \ |
104 | "./?.so;" LUA_CDIR"?.so;" LUA_CDIR"loadall.so" | 104 | "./?.so;" LUA_CDIR"?.so;" LUA_CDIR"loadall.so" |
105 | #endif | 105 | #endif |
106 | 106 | ||
107 | 107 | ||
@@ -111,9 +111,9 @@ | |||
111 | ** and is not Windows. (On Windows Lua automatically uses "\".) | 111 | ** and is not Windows. (On Windows Lua automatically uses "\".) |
112 | */ | 112 | */ |
113 | #if defined(_WIN32) | 113 | #if defined(_WIN32) |
114 | #define LUA_DIRSEP "\\" | 114 | #define LUA_DIRSEP "\\" |
115 | #else | 115 | #else |
116 | #define LUA_DIRSEP "/" | 116 | #define LUA_DIRSEP "/" |
117 | #endif | 117 | #endif |
118 | 118 | ||
119 | 119 | ||
@@ -129,10 +129,10 @@ | |||
129 | ** characters. (E.g., if one of those characters is a common character | 129 | ** characters. (E.g., if one of those characters is a common character |
130 | ** in file/directory names.) Probably you do not need to change them. | 130 | ** in file/directory names.) Probably you do not need to change them. |
131 | */ | 131 | */ |
132 | #define LUA_PATHSEP ";" | 132 | #define LUA_PATHSEP ";" |
133 | #define LUA_PATH_MARK "?" | 133 | #define LUA_PATH_MARK "?" |
134 | #define LUA_EXECDIR "!" | 134 | #define LUA_EXECDIR "!" |
135 | #define LUA_IGMARK "-" | 135 | #define LUA_IGMARK "-" |
136 | 136 | ||
137 | 137 | ||
138 | /* | 138 | /* |
@@ -140,7 +140,7 @@ | |||
140 | ** CHANGE that if ptrdiff_t is not adequate on your machine. (On most | 140 | ** CHANGE that if ptrdiff_t is not adequate on your machine. (On most |
141 | ** machines, ptrdiff_t gives a good choice between int or long.) | 141 | ** machines, ptrdiff_t gives a good choice between int or long.) |
142 | */ | 142 | */ |
143 | #define LUA_INTEGER ptrdiff_t | 143 | #define LUA_INTEGER ptrdiff_t |
144 | 144 | ||
145 | 145 | ||
146 | /* | 146 | /* |
@@ -161,12 +161,12 @@ | |||
161 | 161 | ||
162 | #else | 162 | #else |
163 | 163 | ||
164 | #define LUA_API extern | 164 | #define LUA_API extern |
165 | 165 | ||
166 | #endif | 166 | #endif |
167 | 167 | ||
168 | /* more often than not the libs go together with the core */ | 168 | /* more often than not the libs go together with the core */ |
169 | #define LUALIB_API LUA_API | 169 | #define LUALIB_API LUA_API |
170 | 170 | ||
171 | 171 | ||
172 | /* | 172 | /* |
@@ -179,17 +179,17 @@ | |||
179 | ** when Lua is compiled as a shared library. | 179 | ** when Lua is compiled as a shared library. |
180 | */ | 180 | */ |
181 | #if defined(luaall_c) | 181 | #if defined(luaall_c) |
182 | #define LUAI_FUNC static | 182 | #define LUAI_FUNC static |
183 | #define LUAI_DATA /* empty */ | 183 | #define LUAI_DATA /* empty */ |
184 | 184 | ||
185 | #elif defined(__GNUC__) && ((__GNUC__*100 + __GNUC_MINOR__) >= 302) && \ | 185 | #elif defined(__GNUC__) && ((__GNUC__*100 + __GNUC_MINOR__) >= 302) && \ |
186 | defined(__ELF__) | 186 | defined(__ELF__) |
187 | #define LUAI_FUNC __attribute__((visibility("hidden"))) extern | 187 | #define LUAI_FUNC __attribute__((visibility("hidden"))) extern |
188 | #define LUAI_DATA LUAI_FUNC | 188 | #define LUAI_DATA LUAI_FUNC |
189 | 189 | ||
190 | #else | 190 | #else |
191 | #define LUAI_FUNC extern | 191 | #define LUAI_FUNC extern |
192 | #define LUAI_DATA extern | 192 | #define LUAI_DATA extern |
193 | #endif | 193 | #endif |
194 | 194 | ||
195 | 195 | ||
@@ -198,8 +198,8 @@ | |||
198 | @@ LUA_QL describes how error messages quote program elements. | 198 | @@ LUA_QL describes how error messages quote program elements. |
199 | ** CHANGE it if you want a different appearance. | 199 | ** CHANGE it if you want a different appearance. |
200 | */ | 200 | */ |
201 | #define LUA_QL(x) "'" x "'" | 201 | #define LUA_QL(x) "'" x "'" |
202 | #define LUA_QS LUA_QL("%s") | 202 | #define LUA_QS LUA_QL("%s") |
203 | 203 | ||
204 | 204 | ||
205 | /* | 205 | /* |
@@ -207,7 +207,7 @@ | |||
207 | @* of a function in debug information. | 207 | @* of a function in debug information. |
208 | ** CHANGE it if you want a different size. | 208 | ** CHANGE it if you want a different size. |
209 | */ | 209 | */ |
210 | #define LUA_IDSIZE 60 | 210 | #define LUA_IDSIZE 60 |
211 | 211 | ||
212 | 212 | ||
213 | /* | 213 | /* |
@@ -226,13 +226,13 @@ | |||
226 | */ | 226 | */ |
227 | #if defined(LUA_USE_ISATTY) | 227 | #if defined(LUA_USE_ISATTY) |
228 | #include <unistd.h> | 228 | #include <unistd.h> |
229 | #define lua_stdin_is_tty() isatty(0) | 229 | #define lua_stdin_is_tty() isatty(0) |
230 | #elif defined(LUA_WIN) | 230 | #elif defined(LUA_WIN) |
231 | #include <io.h> | 231 | #include <io.h> |
232 | #include <stdio.h> | 232 | #include <stdio.h> |
233 | #define lua_stdin_is_tty() _isatty(_fileno(stdin)) | 233 | #define lua_stdin_is_tty() _isatty(_fileno(stdin)) |
234 | #else | 234 | #else |
235 | #define lua_stdin_is_tty() 1 /* assume stdin is a tty */ | 235 | #define lua_stdin_is_tty() 1 /* assume stdin is a tty */ |
236 | #endif | 236 | #endif |
237 | 237 | ||
238 | 238 | ||
@@ -242,8 +242,8 @@ | |||
242 | ** CHANGE them if you want different prompts. (You can also change the | 242 | ** CHANGE them if you want different prompts. (You can also change the |
243 | ** prompts dynamically, assigning to globals _PROMPT/_PROMPT2.) | 243 | ** prompts dynamically, assigning to globals _PROMPT/_PROMPT2.) |
244 | */ | 244 | */ |
245 | #define LUA_PROMPT "> " | 245 | #define LUA_PROMPT "> " |
246 | #define LUA_PROMPT2 ">> " | 246 | #define LUA_PROMPT2 ">> " |
247 | 247 | ||
248 | 248 | ||
249 | /* | 249 | /* |
@@ -251,7 +251,7 @@ | |||
251 | ** CHANGE it if your stand-alone interpreter has a different name and | 251 | ** CHANGE it if your stand-alone interpreter has a different name and |
252 | ** your system is not able to detect that name automatically. | 252 | ** your system is not able to detect that name automatically. |
253 | */ | 253 | */ |
254 | #define LUA_PROGNAME "lua" | 254 | #define LUA_PROGNAME "lua" |
255 | 255 | ||
256 | 256 | ||
257 | /* | 257 | /* |
@@ -259,7 +259,7 @@ | |||
259 | @* stand-alone interpreter. | 259 | @* stand-alone interpreter. |
260 | ** CHANGE it if you need longer lines. | 260 | ** CHANGE it if you need longer lines. |
261 | */ | 261 | */ |
262 | #define LUA_MAXINPUT 512 | 262 | #define LUA_MAXINPUT 512 |
263 | 263 | ||
264 | 264 | ||
265 | /* | 265 | /* |
@@ -274,17 +274,17 @@ | |||
274 | #include <stdio.h> | 274 | #include <stdio.h> |
275 | #include <readline/readline.h> | 275 | #include <readline/readline.h> |
276 | #include <readline/history.h> | 276 | #include <readline/history.h> |
277 | #define lua_readline(L,b,p) ((void)L, ((b)=readline(p)) != NULL) | 277 | #define lua_readline(L,b,p) ((void)L, ((b)=readline(p)) != NULL) |
278 | #define lua_saveline(L,idx) \ | 278 | #define lua_saveline(L,idx) \ |
279 | if (lua_strlen(L,idx) > 0) /* non-empty line? */ \ | 279 | if (lua_strlen(L,idx) > 0) /* non-empty line? */ \ |
280 | add_history(lua_tostring(L, idx)); /* add it to history */ | 280 | add_history(lua_tostring(L, idx)); /* add it to history */ |
281 | #define lua_freeline(L,b) ((void)L, free(b)) | 281 | #define lua_freeline(L,b) ((void)L, free(b)) |
282 | #else | 282 | #else |
283 | #define lua_readline(L,b,p) \ | 283 | #define lua_readline(L,b,p) \ |
284 | ((void)L, fputs(p, stdout), fflush(stdout), /* show prompt */ \ | 284 | ((void)L, fputs(p, stdout), fflush(stdout), /* show prompt */ \ |
285 | fgets(b, LUA_MAXINPUT, stdin) != NULL) /* get line */ | 285 | fgets(b, LUA_MAXINPUT, stdin) != NULL) /* get line */ |
286 | #define lua_saveline(L,idx) { (void)L; (void)idx; } | 286 | #define lua_saveline(L,idx) { (void)L; (void)idx; } |
287 | #define lua_freeline(L,b) { (void)L; (void)b; } | 287 | #define lua_freeline(L,b) { (void)L; (void)b; } |
288 | #endif | 288 | #endif |
289 | 289 | ||
290 | #endif | 290 | #endif |
@@ -299,7 +299,7 @@ | |||
299 | ** mean larger pauses which mean slower collection.) You can also change | 299 | ** mean larger pauses which mean slower collection.) You can also change |
300 | ** this value dynamically. | 300 | ** this value dynamically. |
301 | */ | 301 | */ |
302 | #define LUAI_GCPAUSE 200 /* 200% (wait memory to double before next GC) */ | 302 | #define LUAI_GCPAUSE 200 /* 200% (wait memory to double before next GC) */ |
303 | 303 | ||
304 | 304 | ||
305 | /* | 305 | /* |
@@ -310,7 +310,7 @@ | |||
310 | ** infinity, where each step performs a full collection.) You can also | 310 | ** infinity, where each step performs a full collection.) You can also |
311 | ** change this value dynamically. | 311 | ** change this value dynamically. |
312 | */ | 312 | */ |
313 | #define LUAI_GCMUL 200 /* GC runs 'twice the speed' of memory allocation */ | 313 | #define LUAI_GCMUL 200 /* GC runs 'twice the speed' of memory allocation */ |
314 | 314 | ||
315 | 315 | ||
316 | 316 | ||
@@ -333,14 +333,14 @@ | |||
333 | ** CHANGE it to undefined as soon as your programs use only '...' to | 333 | ** CHANGE it to undefined as soon as your programs use only '...' to |
334 | ** access vararg parameters (instead of the old 'arg' table). | 334 | ** access vararg parameters (instead of the old 'arg' table). |
335 | */ | 335 | */ |
336 | #undef LUA_COMPAT_VARARG | 336 | #define LUA_COMPAT_VARARG |
337 | 337 | ||
338 | /* | 338 | /* |
339 | @@ LUA_COMPAT_MOD controls compatibility with old math.mod function. | 339 | @@ LUA_COMPAT_MOD controls compatibility with old math.mod function. |
340 | ** CHANGE it to undefined as soon as your programs use 'math.fmod' or | 340 | ** CHANGE it to undefined as soon as your programs use 'math.fmod' or |
341 | ** the new '%' operator instead of 'math.mod'. | 341 | ** the new '%' operator instead of 'math.mod'. |
342 | */ | 342 | */ |
343 | #undef LUA_COMPAT_MOD | 343 | #define LUA_COMPAT_MOD |
344 | 344 | ||
345 | /* | 345 | /* |
346 | @@ LUA_COMPAT_LSTR controls compatibility with old long string nesting | 346 | @@ LUA_COMPAT_LSTR controls compatibility with old long string nesting |
@@ -348,22 +348,22 @@ | |||
348 | ** CHANGE it to 2 if you want the old behaviour, or undefine it to turn | 348 | ** CHANGE it to 2 if you want the old behaviour, or undefine it to turn |
349 | ** off the advisory error when nesting [[...]]. | 349 | ** off the advisory error when nesting [[...]]. |
350 | */ | 350 | */ |
351 | #undef LUA_COMPAT_LSTR | 351 | #define LUA_COMPAT_LSTR 1 |
352 | 352 | ||
353 | /* | 353 | /* |
354 | @@ LUA_COMPAT_GFIND controls compatibility with old 'string.gfind' name. | 354 | @@ LUA_COMPAT_GFIND controls compatibility with old 'string.gfind' name. |
355 | ** CHANGE it to undefined as soon as you rename 'string.gfind' to | 355 | ** CHANGE it to undefined as soon as you rename 'string.gfind' to |
356 | ** 'string.gmatch'. | 356 | ** 'string.gmatch'. |
357 | */ | 357 | */ |
358 | #undef LUA_COMPAT_GFIND | 358 | #define LUA_COMPAT_GFIND |
359 | 359 | ||
360 | /* | 360 | /* |
361 | @@ LUA_COMPAT_OPENLIB controls compatibility with old 'luaL_openlib' | 361 | @@ LUA_COMPAT_OPENLIB controls compatibility with old 'luaL_openlib' |
362 | @* behavior. | 362 | @* behavior. |
363 | ** CHANGE it to undefined as soon as you replace to 'luaL_registry' | 363 | ** CHANGE it to undefined as soon as you replace to 'luaL_register' |
364 | ** your uses of 'luaL_openlib' | 364 | ** your uses of 'luaL_openlib' |
365 | */ | 365 | */ |
366 | #undef LUA_COMPAT_OPENLIB | 366 | #define LUA_COMPAT_OPENLIB |
367 | 367 | ||
368 | 368 | ||
369 | 369 | ||
@@ -376,9 +376,9 @@ | |||
376 | */ | 376 | */ |
377 | #if defined(LUA_USE_APICHECK) | 377 | #if defined(LUA_USE_APICHECK) |
378 | #include <assert.h> | 378 | #include <assert.h> |
379 | #define luai_apicheck(L,o) { (void)L; assert(o); } | 379 | #define luai_apicheck(L,o) { (void)L; assert(o); } |
380 | #else | 380 | #else |
381 | #define luai_apicheck(L,o) { (void)L; } | 381 | #define luai_apicheck(L,o) { (void)L; } |
382 | #endif | 382 | #endif |
383 | 383 | ||
384 | 384 | ||
@@ -389,10 +389,10 @@ | |||
389 | */ | 389 | */ |
390 | /* avoid overflows in comparison */ | 390 | /* avoid overflows in comparison */ |
391 | #if INT_MAX-20 < 32760 | 391 | #if INT_MAX-20 < 32760 |
392 | #define LUAI_BITSINT 16 | 392 | #define LUAI_BITSINT 16 |
393 | #elif INT_MAX > 2147483640L | 393 | #elif INT_MAX > 2147483640L |
394 | /* int has at least 32 bits */ | 394 | /* int has at least 32 bits */ |
395 | #define LUAI_BITSINT 32 | 395 | #define LUAI_BITSINT 32 |
396 | #else | 396 | #else |
397 | #error "you must define LUA_BITSINT with number of bits in an integer" | 397 | #error "you must define LUA_BITSINT with number of bits in an integer" |
398 | #endif | 398 | #endif |
@@ -411,18 +411,18 @@ | |||
411 | ** longs.) Probably you do not need to change this. | 411 | ** longs.) Probably you do not need to change this. |
412 | */ | 412 | */ |
413 | #if LUAI_BITSINT >= 32 | 413 | #if LUAI_BITSINT >= 32 |
414 | #define LUAI_UINT32 unsigned int | 414 | #define LUAI_UINT32 unsigned int |
415 | #define LUAI_INT32 int | 415 | #define LUAI_INT32 int |
416 | #define LUAI_MAXINT32 INT_MAX | 416 | #define LUAI_MAXINT32 INT_MAX |
417 | #define LUAI_UMEM size_t | 417 | #define LUAI_UMEM size_t |
418 | #define LUAI_MEM ptrdiff_t | 418 | #define LUAI_MEM ptrdiff_t |
419 | #else | 419 | #else |
420 | /* 16-bit ints */ | 420 | /* 16-bit ints */ |
421 | #define LUAI_UINT32 unsigned long | 421 | #define LUAI_UINT32 unsigned long |
422 | #define LUAI_INT32 long | 422 | #define LUAI_INT32 long |
423 | #define LUAI_MAXINT32 LONG_MAX | 423 | #define LUAI_MAXINT32 LONG_MAX |
424 | #define LUAI_UMEM unsigned long | 424 | #define LUAI_UMEM unsigned long |
425 | #define LUAI_MEM long | 425 | #define LUAI_MEM long |
426 | #endif | 426 | #endif |
427 | 427 | ||
428 | 428 | ||
@@ -432,7 +432,7 @@ | |||
432 | ** arbitrary; its only purpose is to stop infinite recursion before | 432 | ** arbitrary; its only purpose is to stop infinite recursion before |
433 | ** exhausting memory. | 433 | ** exhausting memory. |
434 | */ | 434 | */ |
435 | #define LUAI_MAXCALLS 20000 | 435 | #define LUAI_MAXCALLS 20000 |
436 | 436 | ||
437 | 437 | ||
438 | /* | 438 | /* |
@@ -443,7 +443,7 @@ | |||
443 | ** functions to consume unlimited stack space. (must be smaller than | 443 | ** functions to consume unlimited stack space. (must be smaller than |
444 | ** -LUA_REGISTRYINDEX) | 444 | ** -LUA_REGISTRYINDEX) |
445 | */ | 445 | */ |
446 | #define LUAI_MAXCSTACK 8000 | 446 | #define LUAI_MAXCSTACK 8000 |
447 | 447 | ||
448 | 448 | ||
449 | 449 | ||
@@ -465,27 +465,27 @@ | |||
465 | @@ LUAI_MAXCCALLS is the maximum depth for nested C calls (short) and | 465 | @@ LUAI_MAXCCALLS is the maximum depth for nested C calls (short) and |
466 | @* syntactical nested non-terminals in a program. | 466 | @* syntactical nested non-terminals in a program. |
467 | */ | 467 | */ |
468 | #define LUAI_MAXCCALLS 200 | 468 | #define LUAI_MAXCCALLS 200 |
469 | 469 | ||
470 | 470 | ||
471 | /* | 471 | /* |
472 | @@ LUAI_MAXVARS is the maximum number of local variables per function | 472 | @@ LUAI_MAXVARS is the maximum number of local variables per function |
473 | @* (must be smaller than 250). | 473 | @* (must be smaller than 250). |
474 | */ | 474 | */ |
475 | #define LUAI_MAXVARS 200 | 475 | #define LUAI_MAXVARS 200 |
476 | 476 | ||
477 | 477 | ||
478 | /* | 478 | /* |
479 | @@ LUAI_MAXUPVALUES is the maximum number of upvalues per function | 479 | @@ LUAI_MAXUPVALUES is the maximum number of upvalues per function |
480 | @* (must be smaller than 250). | 480 | @* (must be smaller than 250). |
481 | */ | 481 | */ |
482 | #define LUAI_MAXUPVALUES 60 | 482 | #define LUAI_MAXUPVALUES 60 |
483 | 483 | ||
484 | 484 | ||
485 | /* | 485 | /* |
486 | @@ LUAL_BUFFERSIZE is the buffer size used by the lauxlib buffer system. | 486 | @@ LUAL_BUFFERSIZE is the buffer size used by the lauxlib buffer system. |
487 | */ | 487 | */ |
488 | #define LUAL_BUFFERSIZE 1024 | 488 | #define LUAL_BUFFERSIZE BUFSIZ |
489 | 489 | ||
490 | /* }================================================================== */ | 490 | /* }================================================================== */ |
491 | 491 | ||
@@ -501,14 +501,14 @@ | |||
501 | ** =================================================================== | 501 | ** =================================================================== |
502 | */ | 502 | */ |
503 | 503 | ||
504 | #undef LUA_NUMBER_DOUBLE | 504 | #define LUA_NUMBER_DOUBLE |
505 | #define LUA_NUMBER long | 505 | #define LUA_NUMBER double |
506 | 506 | ||
507 | /* | 507 | /* |
508 | @@ LUAI_UACNUMBER is the result of an 'usual argument conversion' | 508 | @@ LUAI_UACNUMBER is the result of an 'usual argument conversion' |
509 | @* over a number. | 509 | @* over a number. |
510 | */ | 510 | */ |
511 | #define LUAI_UACNUMBER long | 511 | #define LUAI_UACNUMBER double |
512 | 512 | ||
513 | 513 | ||
514 | /* | 514 | /* |
@@ -518,29 +518,29 @@ | |||
518 | @@ LUAI_MAXNUMBER2STR is maximum size of previous conversion. | 518 | @@ LUAI_MAXNUMBER2STR is maximum size of previous conversion. |
519 | @@ lua_str2number converts a string to a number. | 519 | @@ lua_str2number converts a string to a number. |
520 | */ | 520 | */ |
521 | #define LUA_NUMBER_SCAN "%ld" | 521 | #define LUA_NUMBER_SCAN "%lf" |
522 | #define LUA_NUMBER_FMT "%ld" | 522 | #define LUA_NUMBER_FMT "%.14g" |
523 | #define LUAI_MAXNUMBER2STR 32 /* 16 digits, sign, point, and \0 */ | 523 | #define lua_number2str(s,n) sprintf((s), LUA_NUMBER_FMT, (n)) |
524 | #define lua_number2str(s,n) snprintf((s), 32, LUA_NUMBER_FMT, (n)) | 524 | #define LUAI_MAXNUMBER2STR 32 /* 16 digits, sign, point, and \0 */ |
525 | #define lua_str2number(s,p) strtol((s), (p), 10) | 525 | #define lua_str2number(s,p) strtod((s), (p)) |
526 | 526 | ||
527 | 527 | ||
528 | /* | 528 | /* |
529 | @@ The luai_num* macros define the primitive operations over numbers. | 529 | @@ The luai_num* macros define the primitive operations over numbers. |
530 | */ | 530 | */ |
531 | #if defined(LUA_CORE) | 531 | #if defined(LUA_CORE) |
532 | extern long rb_pow(long, long); | 532 | /*#include <math.h> //ROCKLUA_REMOVED */ |
533 | #define luai_numadd(a,b) ((a)+(b)) | 533 | #define luai_numadd(a,b) ((a)+(b)) |
534 | #define luai_numsub(a,b) ((a)-(b)) | 534 | #define luai_numsub(a,b) ((a)-(b)) |
535 | #define luai_nummul(a,b) ((a)*(b)) | 535 | #define luai_nummul(a,b) ((a)*(b)) |
536 | #define luai_numdiv(a,b) ((a)/(b)) | 536 | #define luai_numdiv(a,b) ((a)/(b)) |
537 | #define luai_nummod(a,b) ((a)%(b)) | 537 | #define luai_nummod(a,b) ((a) - floor((a)/(b))*(b)) |
538 | #define luai_numpow(a,b) (rb_pow(a,b)) | 538 | #define luai_numpow(a,b) (pow(a,b)) |
539 | #define luai_numunm(a) (-(a)) | 539 | #define luai_numunm(a) (-(a)) |
540 | #define luai_numeq(a,b) ((a)==(b)) | 540 | #define luai_numeq(a,b) ((a)==(b)) |
541 | #define luai_numlt(a,b) ((a)<(b)) | 541 | #define luai_numlt(a,b) ((a)<(b)) |
542 | #define luai_numle(a,b) ((a)<=(b)) | 542 | #define luai_numle(a,b) ((a)<=(b)) |
543 | #define luai_numisnan(a) (!luai_numeq((a), (a))) | 543 | #define luai_numisnan(a) (!luai_numeq((a), (a))) |
544 | #endif | 544 | #endif |
545 | 545 | ||
546 | 546 | ||
@@ -561,7 +561,7 @@ extern long rb_pow(long, long); | |||
561 | #if defined(_MSC_VER) | 561 | #if defined(_MSC_VER) |
562 | 562 | ||
563 | #define lua_number2int(i,d) __asm fld d __asm fistp i | 563 | #define lua_number2int(i,d) __asm fld d __asm fistp i |
564 | #define lua_number2integer(i,n) lua_number2int(i, n) | 564 | #define lua_number2integer(i,n) lua_number2int(i, n) |
565 | 565 | ||
566 | /* the next trick should work on any Pentium, but sometimes clashes | 566 | /* the next trick should work on any Pentium, but sometimes clashes |
567 | with a DirectX idiosyncrasy */ | 567 | with a DirectX idiosyncrasy */ |
@@ -570,15 +570,15 @@ extern long rb_pow(long, long); | |||
570 | union luai_Cast { double l_d; long l_l; }; | 570 | union luai_Cast { double l_d; long l_l; }; |
571 | #define lua_number2int(i,d) \ | 571 | #define lua_number2int(i,d) \ |
572 | { volatile union luai_Cast u; u.l_d = (d) + 6755399441055744.0; (i) = u.l_l; } | 572 | { volatile union luai_Cast u; u.l_d = (d) + 6755399441055744.0; (i) = u.l_l; } |
573 | #define lua_number2integer(i,n) lua_number2int(i, n) | 573 | #define lua_number2integer(i,n) lua_number2int(i, n) |
574 | 574 | ||
575 | #endif | 575 | #endif |
576 | 576 | ||
577 | 577 | ||
578 | /* this option always works, but may be slow */ | 578 | /* this option always works, but may be slow */ |
579 | #else | 579 | #else |
580 | #define lua_number2int(i,d) ((i)=(int)(d)) | 580 | #define lua_number2int(i,d) ((i)=(int)(d)) |
581 | #define lua_number2integer(i,d) ((i)=(lua_Integer)(d)) | 581 | #define lua_number2integer(i,d) ((i)=(lua_Integer)(d)) |
582 | 582 | ||
583 | #endif | 583 | #endif |
584 | 584 | ||
@@ -592,7 +592,7 @@ union luai_Cast { double l_d; long l_l; }; | |||
592 | ** aligned in 16-byte boundaries, then you should add long double in the | 592 | ** aligned in 16-byte boundaries, then you should add long double in the |
593 | ** union.) Probably you do not need to change this. | 593 | ** union.) Probably you do not need to change this. |
594 | */ | 594 | */ |
595 | #define LUAI_USER_ALIGNMENT_T union { void *s; long l; } | 595 | #define LUAI_USER_ALIGNMENT_T union { double u; void *s; long l; } |
596 | 596 | ||
597 | 597 | ||
598 | /* | 598 | /* |
@@ -605,22 +605,22 @@ union luai_Cast { double l_d; long l_l; }; | |||
605 | */ | 605 | */ |
606 | #if defined(__cplusplus) | 606 | #if defined(__cplusplus) |
607 | /* C++ exceptions */ | 607 | /* C++ exceptions */ |
608 | #define LUAI_THROW(L,c) throw(c) | 608 | #define LUAI_THROW(L,c) throw(c) |
609 | #define LUAI_TRY(L,c,a) try { a } catch(...) \ | 609 | #define LUAI_TRY(L,c,a) try { a } catch(...) \ |
610 | { if ((c)->status == 0) (c)->status = -1; } | 610 | { if ((c)->status == 0) (c)->status = -1; } |
611 | #define luai_jmpbuf int /* dummy variable */ | 611 | #define luai_jmpbuf int /* dummy variable */ |
612 | 612 | ||
613 | #elif defined(LUA_USE_ULONGJMP) | 613 | #elif defined(LUA_USE_ULONGJMP) |
614 | /* in Unix, try _longjmp/_setjmp (more efficient) */ | 614 | /* in Unix, try _longjmp/_setjmp (more efficient) */ |
615 | #define LUAI_THROW(L,c) _longjmp((c)->b, 1) | 615 | #define LUAI_THROW(L,c) _longjmp((c)->b, 1) |
616 | #define LUAI_TRY(L,c,a) if (_setjmp((c)->b) == 0) { a } | 616 | #define LUAI_TRY(L,c,a) if (_setjmp((c)->b) == 0) { a } |
617 | #define luai_jmpbuf jmp_buf | 617 | #define luai_jmpbuf jmp_buf |
618 | 618 | ||
619 | #else | 619 | #else |
620 | /* default handling with long jumps */ | 620 | /* default handling with long jumps */ |
621 | #define LUAI_THROW(L,c) longjmp((c)->b, 1) | 621 | #define LUAI_THROW(L,c) longjmp((c)->b, 1) |
622 | #define LUAI_TRY(L,c,a) if (setjmp((c)->b) == 0) { a } | 622 | #define LUAI_TRY(L,c,a) if (setjmp((c)->b) == 0) { a } |
623 | #define luai_jmpbuf jmp_buf | 623 | #define luai_jmpbuf jmp_buf |
624 | 624 | ||
625 | #endif | 625 | #endif |
626 | 626 | ||
@@ -630,7 +630,7 @@ union luai_Cast { double l_d; long l_l; }; | |||
630 | @* can do during pattern-matching. | 630 | @* can do during pattern-matching. |
631 | ** CHANGE it if you need more captures. This limit is arbitrary. | 631 | ** CHANGE it if you need more captures. This limit is arbitrary. |
632 | */ | 632 | */ |
633 | #define LUA_MAXCAPTURES 32 | 633 | #define LUA_MAXCAPTURES 32 |
634 | 634 | ||
635 | 635 | ||
636 | /* | 636 | /* |
@@ -645,16 +645,16 @@ union luai_Cast { double l_d; long l_l; }; | |||
645 | 645 | ||
646 | #if defined(LUA_USE_MKSTEMP) | 646 | #if defined(LUA_USE_MKSTEMP) |
647 | #include <unistd.h> | 647 | #include <unistd.h> |
648 | #define LUA_TMPNAMBUFSIZE 32 | 648 | #define LUA_TMPNAMBUFSIZE 32 |
649 | #define lua_tmpnam(b,e) { \ | 649 | #define lua_tmpnam(b,e) { \ |
650 | strcpy(b, "/tmp/lua_XXXXXX"); \ | 650 | strcpy(b, "/tmp/lua_XXXXXX"); \ |
651 | e = mkstemp(b); \ | 651 | e = mkstemp(b); \ |
652 | if (e != -1) close(e); \ | 652 | if (e != -1) close(e); \ |
653 | e = (e == -1); } | 653 | e = (e == -1); } |
654 | 654 | ||
655 | #else | 655 | #else |
656 | #define LUA_TMPNAMBUFSIZE L_tmpnam | 656 | #define LUA_TMPNAMBUFSIZE L_tmpnam |
657 | #define lua_tmpnam(b,e) { e = (tmpnam(b) == NULL); } | 657 | #define lua_tmpnam(b,e) { e = (tmpnam(b) == NULL); } |
658 | #endif | 658 | #endif |
659 | 659 | ||
660 | #endif | 660 | #endif |
@@ -667,19 +667,19 @@ union luai_Cast { double l_d; long l_l; }; | |||
667 | */ | 667 | */ |
668 | #if defined(LUA_USE_POPEN) | 668 | #if defined(LUA_USE_POPEN) |
669 | 669 | ||
670 | #define lua_popen(L,c,m) ((void)L, fflush(NULL), popen(c,m)) | 670 | #define lua_popen(L,c,m) ((void)L, fflush(NULL), popen(c,m)) |
671 | #define lua_pclose(L,file) ((void)L, (pclose(file) != -1)) | 671 | #define lua_pclose(L,file) ((void)L, (pclose(file) != -1)) |
672 | 672 | ||
673 | #elif defined(LUA_WIN) | 673 | #elif defined(LUA_WIN) |
674 | 674 | ||
675 | #define lua_popen(L,c,m) ((void)L, _popen(c,m)) | 675 | #define lua_popen(L,c,m) ((void)L, _popen(c,m)) |
676 | #define lua_pclose(L,file) ((void)L, (_pclose(file) != -1)) | 676 | #define lua_pclose(L,file) ((void)L, (_pclose(file) != -1)) |
677 | 677 | ||
678 | #else | 678 | #else |
679 | 679 | ||
680 | #define lua_popen(L,c,m) ((void)((void)c, m), \ | 680 | #define lua_popen(L,c,m) ((void)((void)c, m), \ |
681 | luaL_error(L, LUA_QL("popen") " not supported"), (FILE*)0) | 681 | luaL_error(L, LUA_QL("popen") " not supported"), (FILE*)0) |
682 | #define lua_pclose(L,file) ((void)((void)L, file), 0) | 682 | #define lua_pclose(L,file) ((void)((void)L, file), 0) |
683 | 683 | ||
684 | #endif | 684 | #endif |
685 | 685 | ||
@@ -712,7 +712,7 @@ union luai_Cast { double l_d; long l_l; }; | |||
712 | ** CHANGE (define) this if you really need that. This value must be | 712 | ** CHANGE (define) this if you really need that. This value must be |
713 | ** a multiple of the maximum alignment required for your machine. | 713 | ** a multiple of the maximum alignment required for your machine. |
714 | */ | 714 | */ |
715 | #define LUAI_EXTRASPACE 0 | 715 | #define LUAI_EXTRASPACE 0 |
716 | 716 | ||
717 | 717 | ||
718 | /* | 718 | /* |
@@ -720,12 +720,12 @@ union luai_Cast { double l_d; long l_l; }; | |||
720 | ** CHANGE them if you defined LUAI_EXTRASPACE and need to do something | 720 | ** CHANGE them if you defined LUAI_EXTRASPACE and need to do something |
721 | ** extra when a thread is created/deleted/resumed/yielded. | 721 | ** extra when a thread is created/deleted/resumed/yielded. |
722 | */ | 722 | */ |
723 | #define luai_userstateopen(L) ((void)L) | 723 | #define luai_userstateopen(L) ((void)L) |
724 | #define luai_userstateclose(L) ((void)L) | 724 | #define luai_userstateclose(L) ((void)L) |
725 | #define luai_userstatethread(L,L1) ((void)L) | 725 | #define luai_userstatethread(L,L1) ((void)L) |
726 | #define luai_userstatefree(L) ((void)L) | 726 | #define luai_userstatefree(L) ((void)L) |
727 | #define luai_userstateresume(L,n) ((void)L) | 727 | #define luai_userstateresume(L,n) ((void)L) |
728 | #define luai_userstateyield(L,n) ((void)L) | 728 | #define luai_userstateyield(L,n) ((void)L) |
729 | 729 | ||
730 | 730 | ||
731 | /* | 731 | /* |
@@ -738,13 +738,13 @@ union luai_Cast { double l_d; long l_l; }; | |||
738 | 738 | ||
739 | #if defined(LUA_USELONGLONG) | 739 | #if defined(LUA_USELONGLONG) |
740 | 740 | ||
741 | #define LUA_INTFRMLEN "ll" | 741 | #define LUA_INTFRMLEN "ll" |
742 | #define LUA_INTFRM_T long long | 742 | #define LUA_INTFRM_T long long |
743 | 743 | ||
744 | #else | 744 | #else |
745 | 745 | ||
746 | #define LUA_INTFRMLEN "l" | 746 | #define LUA_INTFRMLEN "l" |
747 | #define LUA_INTFRM_T long | 747 | #define LUA_INTFRM_T long |
748 | 748 | ||
749 | #endif | 749 | #endif |
750 | 750 | ||
@@ -757,7 +757,60 @@ union luai_Cast { double l_d; long l_l; }; | |||
757 | ** without modifying the main part of the file. | 757 | ** without modifying the main part of the file. |
758 | */ | 758 | */ |
759 | 759 | ||
760 | /*Rocklua integer patch */ | ||
761 | #undef LUA_NUMBER_DOUBLE | ||
762 | |||
763 | #undef LUA_NUMBER | ||
764 | #define LUA_NUMBER long | ||
765 | |||
766 | #undef LUAI_UACNUMBER | ||
767 | #define LUAI_UACNUMBER long | ||
768 | |||
769 | #undef LUA_NUMBER_SCAN | ||
770 | #define LUA_NUMBER_SCAN "%ld" | ||
771 | |||
772 | #undef LUA_NUMBER_FMT | ||
773 | #define LUA_NUMBER_FMT "%ld" | ||
774 | |||
775 | #undef lua_number2str | ||
776 | #define lua_number2str(s,n) snprintf((s), 32, LUA_NUMBER_FMT, (n)) | ||
777 | |||
778 | #define LUAI_MAXNUMBER2STR 32 /* 16 digits, sign, point, and \0 */ | ||
779 | |||
780 | #undef lua_str2number | ||
781 | #define lua_str2number(s,p) strtol((s), (p), 10) | ||
782 | |||
783 | #undef luai_nummod | ||
784 | #define luai_nummod(a,b) ((a)%(b)) | ||
785 | |||
786 | extern long rb_pow(long, long); | ||
787 | #undef luai_numpow | ||
788 | #define luai_numpow(a,b) (rb_pow(a,b)) | ||
789 | |||
790 | #undef LUAI_USER_ALIGNMENT_T | ||
791 | #define LUAI_USER_ALIGNMENT_T union { void *s; long l; } | ||
792 | |||
793 | /* Compatibility */ | ||
794 | #undef LUA_COMPAT_VARARG | ||
795 | #undef LUA_COMPAT_MOD | ||
796 | #undef LUA_COMPAT_LSTR | ||
797 | #undef LUA_COMPAT_GFIND | ||
798 | #undef LUA_COMPAT_OPENLIB | ||
799 | |||
800 | /* Resize heap allocated buffers */ | ||
801 | #undef LUAI_MAXVARS /*200*/ | ||
802 | #define LUAI_MAXVARS 100 | ||
803 | |||
804 | #undef LUAI_MAXUPVALUES /*60*/ | ||
805 | #define LUAI_MAXUPVALUES 30 | ||
806 | |||
807 | #undef LUAL_BUFFERSIZE /*1024*/ | ||
808 | #define LUAL_BUFFERSIZE 512 | ||
809 | |||
810 | /*Rocklua functions*/ | ||
760 | #include "rockconf.h" | 811 | #include "rockconf.h" |
812 | |||
813 | /*else*/ | ||
761 | #define LUAC_TRUST_BINARIES | 814 | #define LUAC_TRUST_BINARIES |
762 | #endif | ||
763 | 815 | ||
816 | #endif | ||