diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lua-interface.cpp | 30 | 
1 files changed, 27 insertions, 3 deletions
| diff --git a/src/lua-interface.cpp b/src/lua-interface.cpp index 267a615..f560bd3 100644 --- a/src/lua-interface.cpp +++ b/src/lua-interface.cpp @@ -51,11 +51,16 @@  #ifndef _MSVC  // this seems ignored under apple's gcc... dammit. +// Gah. msys doesn't support that properly either.  #define WEAK __attribute__ ((weak))  #else  #define WEAK  #endif +#if defined(__APPLE__) || defined(__MINGW32__) +#define NO_SMART_MODULES +#endif +  extern "C" {  extern void luaconfigfiles_init(Lua * L) WEAK; @@ -79,6 +84,13 @@ extern void luacd_init(Lua * L) WEAK;  #define main dll_main  #endif +#ifdef LUA_INTERFACE_LIGHT +#define MODULES_BUILT_IN +#define LIGHT "-light" +#else +#define LIGHT +#endif +  #ifdef _WIN32  #include <windows.h> @@ -312,15 +324,17 @@ int sLua_baselua_interface::baselua_interface_proceed_statics(Lua * L, int n, in      case BASELUA_INTERFACE_LOADMODULE:          filename = L->tostring();          if (0) { -#if !(defined(__APPLE__) || defined(MODULES_BUILT_IN)) +#if !defined(NO_SMART_MODULES) || defined(MODULES_BUILT_IN)  	} else if ((filename == "luaconfigfiles") && (luaconfigfiles_init != NULL)) {              luaconfigfiles_init(L); +#ifndef LUA_INTERFACE_LIGHT  #ifndef _MSVC          } else if ((filename == "luaftgl") && (luaftgl_init != NULL)) {              luaftgl_init(L);          } else if ((filename == "luagl") && (luagl_init != NULL)) {              luagl_init(L);  #endif +#endif          } else if ((filename == "luahandle") && (luahandle_init != NULL)) {              luahandle_init(L);          } else if ((filename == "luahttp") && (luahttp_init != NULL)) { @@ -329,18 +343,23 @@ int sLua_baselua_interface::baselua_interface_proceed_statics(Lua * L, int n, in              luasmtp_init(L);          } else if ((filename == "lualibs") && (lualibs_init != NULL)) {              lualibs_init(L); +#ifndef LUA_INTERFACE_LIGHT  #ifndef _MSVC          } else if ((filename == "luaocci") && (luaocci_init != NULL)) {              luaocci_init(L);  #endif +#endif          } else if ((filename == "luaregex") && (luaregex_init != NULL)) {              luaregex_init(L); +#ifndef LUA_INTERFACE_LIGHT          } else if ((filename == "luasql") && (luasql_init != NULL)) {              luasql_init(L); +#endif          } else if ((filename == "luatask") && (luatask_init != NULL)) {              luatask_init(L);          } else if ((filename == "luaxml") && (luaxml_init != NULL)) {              luaxml_init(L); +#ifndef LUA_INTERFACE_LIGHT  #ifndef _MSVC          } else if ((filename == "luaosmesa") && (luaosmesa_init != NULL)) {              luaosmesa_init(L); @@ -348,6 +367,7 @@ int sLua_baselua_interface::baselua_interface_proceed_statics(Lua * L, int n, in          } else if ((filename == "luacd") && (luacd_init != NULL)) {              luacd_init(L);  #endif +#endif          } else {      	    LuaLoadPlugin(filename, L);      	} @@ -537,7 +557,7 @@ Lua * start_full_lua(void) {  void showbanner() {      printm(M_BARE, -"Lua-Interface version " VERSION " (c) 2003-2008 Nicolas \"Pixel\" Noble\n" +"Lua-Interface" LIGHT " version " VERSION " (c) 2003-2009 Nicolas \"Pixel\" Noble\n"  LUA_RELEASE " " LUA_COPYRIGHT "\n"  #ifdef WIP  "Special version Work In Progress, compiled the " __DATE__ " at " __TIME__ "\n" @@ -689,7 +709,7 @@ static void * interactive_prompt(void * __L) {  }  void autoload_exports(Lua * L) { -#if not defined(__APPLE__) or defined(MODULES_BUILT_IN) +#if !defined(NO_SMART_MODULES) || defined(MODULES_BUILT_IN)      if (lualibs_init)          lualibs_init(L);      if (luahandle_init) @@ -702,12 +722,15 @@ void autoload_exports(Lua * L) {          luasmtp_init(L);      if (luaregex_init)          luaregex_init(L); +#ifndef LUA_INTERFACE_LIGHT      if (luasql_init)          luasql_init(L); +#endif      if (luatask_init)          luatask_init(L);      if (luaxml_init)          luaxml_init(L); +#ifndef LUA_INTERFACE_LIGHT  #ifndef _MSVC      if (luaftgl_init)          luaftgl_init(L); @@ -721,6 +744,7 @@ void autoload_exports(Lua * L) {      if (luacd_init)          luacd_init(L);  #endif +#endif  }  virtual int startup() throw (GeneralException) { | 
