[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: RE: bug in building and installing luasocket
- From: "Jerome Vuarand" <jerome.vuarand@...>
- Date: Wed, 30 May 2007 10:52:01 -0400
Paul Ducklin wrote:
> This isn't any kind of bug :-) But I thought of it as a result of
> this thread.
> What if LuaSocket were divided so that instead of being modulised
> with two shared libs in subdirectories, it consisted of two core C
> packages plus the various Lua components?
> socket.core and mime.core are terribly useful on their own, so if
> they were implemented as (say) coresock and coremime, and were
> require()d accordingly from socket.lua and mime.lua, they could very
> much more easily be built and used on their own.
> In particular, it would then be trivial to build a Lua binary with
> coresock and coremime compiled in. As it stands, you need to make
> (admittedly tiny) changes to both the C and Lua files to make this
> work. Basic socket support, at least for tcp, is close to a core
> feature of modern scripting...
AFAICT from the sources socket/core.so (which can also be named
socket.so) is already a submodule that is require'd from socket.lua. You
can already statically link the so file to your lua interpreter. All you
have to modify is lua.c so that it puts luaopen_socket_core C function
in package.preload Lua table. No change to either LuaSocket C code or
Lua code is necessary. You could even do the same for the Lua files,
embeddeding them in the C code, but that's slightly more work.