diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2006-04-10 15:27:23 -0300 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2006-04-10 15:27:23 -0300 |
| commit | 672bb67ee6b3f1c705fca4537824e6190c4a8d57 (patch) | |
| tree | b5177e0595a029176a8bcfd21f23dbeb4bcdbb0e | |
| parent | 90df6b7a542f39281181d39674756aa759bfad07 (diff) | |
| download | lua-672bb67ee6b3f1c705fca4537824e6190c4a8d57.tar.gz lua-672bb67ee6b3f1c705fca4537824e6190c4a8d57.tar.bz2 lua-672bb67ee6b3f1c705fca4537824e6190c4a8d57.zip | |
environment variable names should be configurable
| -rw-r--r-- | loadlib.c | 6 | ||||
| -rw-r--r-- | lua.c | 6 | ||||
| -rw-r--r-- | luaconf.h | 28 |
3 files changed, 31 insertions, 9 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: loadlib.c,v 1.50 2005/12/19 20:56:39 roberto Exp roberto $ | 2 | ** $Id: loadlib.c,v 1.51 2005/12/29 15:32:11 roberto Exp roberto $ |
| 3 | ** Dynamic library loader for Lua | 3 | ** Dynamic library loader for Lua |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | ** | 5 | ** |
| @@ -22,10 +22,6 @@ | |||
| 22 | #include "lualib.h" | 22 | #include "lualib.h" |
| 23 | 23 | ||
| 24 | 24 | ||
| 25 | /* environment variables that hold the search path for packages */ | ||
| 26 | #define LUA_PATH "LUA_PATH" | ||
| 27 | #define LUA_CPATH "LUA_CPATH" | ||
| 28 | |||
| 29 | /* prefix for open functions in C libraries */ | 25 | /* prefix for open functions in C libraries */ |
| 30 | #define LUA_POF "luaopen_" | 26 | #define LUA_POF "luaopen_" |
| 31 | 27 | ||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lua.c,v 1.156 2005/12/29 12:30:16 roberto Exp roberto $ | 2 | ** $Id: lua.c,v 1.157 2005/12/29 16:23:32 roberto Exp roberto $ |
| 3 | ** Lua stand-alone interpreter | 3 | ** Lua stand-alone interpreter |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -306,12 +306,12 @@ static int runargs (lua_State *L, char **argv, int n) { | |||
| 306 | 306 | ||
| 307 | 307 | ||
| 308 | static int handle_luainit (lua_State *L) { | 308 | static int handle_luainit (lua_State *L) { |
| 309 | const char *init = getenv("LUA_INIT"); | 309 | const char *init = getenv(LUA_INIT); |
| 310 | if (init == NULL) return 0; /* status OK */ | 310 | if (init == NULL) return 0; /* status OK */ |
| 311 | else if (init[0] == '@') | 311 | else if (init[0] == '@') |
| 312 | return dofile(L, init+1); | 312 | return dofile(L, init+1); |
| 313 | else | 313 | else |
| 314 | return dostring(L, init, "=LUA_INIT"); | 314 | return dostring(L, init, "=" LUA_INIT); |
| 315 | } | 315 | } |
| 316 | 316 | ||
| 317 | 317 | ||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: luaconf.h,v 1.80 2006/01/27 13:54:39 roberto Exp roberto $ | 2 | ** $Id: luaconf.h,v 1.81 2006/02/10 17:44:06 roberto Exp roberto $ |
| 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 | */ |
| @@ -60,6 +60,18 @@ | |||
| 60 | 60 | ||
| 61 | 61 | ||
| 62 | /* | 62 | /* |
| 63 | @@ LUA_PATH and LUA_CPATH are the names of the environment variables that | ||
| 64 | @* Lua check to set its paths. | ||
| 65 | @@ LUA_INIT is the name of the environment variable that Lua | ||
| 66 | @* checks for initialization code. | ||
| 67 | ** CHANGE them if you want different names. | ||
| 68 | */ | ||
| 69 | #define LUA_PATH "LUA_PATH" | ||
| 70 | #define LUA_CPATH "LUA_CPATH" | ||
| 71 | #define LUA_INIT "LUA_INIT" | ||
| 72 | |||
| 73 | |||
| 74 | /* | ||
| 63 | @@ LUA_PATH_DEFAULT is the default path that Lua uses to look for | 75 | @@ LUA_PATH_DEFAULT is the default path that Lua uses to look for |
| 64 | @* Lua libraries. | 76 | @* Lua libraries. |
| 65 | @@ LUA_CPATH_DEFAULT is the default path that Lua uses to look for | 77 | @@ LUA_CPATH_DEFAULT is the default path that Lua uses to look for |
| @@ -543,11 +555,25 @@ | |||
| 543 | /* On a Pentium, resort to a trick */ | 555 | /* On a Pentium, resort to a trick */ |
| 544 | #if defined(LUA_NUMBER_DOUBLE) && !defined(LUA_ANSI) && !defined(__SSE2__) && \ | 556 | #if defined(LUA_NUMBER_DOUBLE) && !defined(LUA_ANSI) && !defined(__SSE2__) && \ |
| 545 | (defined(__i386) || defined (_M_IX86) || defined(__i386__)) | 557 | (defined(__i386) || defined (_M_IX86) || defined(__i386__)) |
| 558 | |||
| 559 | /* On a Microsoft compiler, use assembler */ | ||
| 560 | #if defined(_MSC_VER) | ||
| 561 | |||
| 562 | #define lua_number2int(i,d) __asm fld d __asm fistp i | ||
| 563 | #define lua_number2integer(i,n) lua_number2int(i, n) | ||
| 564 | |||
| 565 | /* the next trick should work on any Pentium, but sometimes clashes | ||
| 566 | with a DirectX idiosyncrasy */ | ||
| 567 | #else | ||
| 568 | |||
| 546 | union luai_Cast { double l_d; long l_l; }; | 569 | union luai_Cast { double l_d; long l_l; }; |
| 547 | #define lua_number2int(i,d) \ | 570 | #define lua_number2int(i,d) \ |
| 548 | { volatile union luai_Cast u; u.l_d = (d) + 6755399441055744.0; (i) = u.l_l; } | 571 | { volatile union luai_Cast u; u.l_d = (d) + 6755399441055744.0; (i) = u.l_l; } |
| 549 | #define lua_number2integer(i,n) lua_number2int(i, n) | 572 | #define lua_number2integer(i,n) lua_number2int(i, n) |
| 550 | 573 | ||
| 574 | #endif | ||
| 575 | |||
| 576 | |||
| 551 | /* this option always works, but may be slow */ | 577 | /* this option always works, but may be slow */ |
| 552 | #else | 578 | #else |
| 553 | #define lua_number2int(i,d) ((i)=(int)(d)) | 579 | #define lua_number2int(i,d) ((i)=(int)(d)) |
