On Sun, 16 Oct 2011, Marc Balmer wrote: > Modified Files: > src/share/mk: bsd.lua.mk > > Log Message: > Uncomment LUA_DPLIBS processing, but do not auto-include liblua.so, > under the assumption that programs that load Lua modules already have > loaded it.
Regarding this (which I have discussed with Marc off-list previously), I think a Lua module should always depend on liblua.so as there will be calls to functions from there, though I guess Marc is correct that the binary loading the module should have been linked with it anyway. So, is this enough? What if the binary is statically linked with the Lua interpreter, or if it was linked against a different version of lualib.so? Do the symbols in the loaded module get resolved correctly? This comes up really because Marc found it a problem to actually build the modules, as the dependency is taken from the OBJDIR, not the DESTDIR (I took this concept from bsd.lib.mk, it is the same there), so just building a module (or a library, see eg libmenu) means you must build the dependencies first rather than being able to use the host (DESTDIR) versions.. iain