Updated OSX executables and added 'fake' proxy for lua-dist support (ref #225).

LuaDist relies on using liblua.dylib for all its modules with the same
name for both Lua 5.1 and Lua 5.2 interpreters. This presents an issue for
ZBS as it needs not only to refer to a proper liblua.dylib, but also to
avoid loading two interpreters as its own interperter loads its own
library.

To resolve this, liblua.dylib doesn't export any symbols (it's a dummy
library), but it needs to be present to satisfy dyld dependency (as some
of the libraries and LuaDist build process are outside of our control).

All the other Lua symbols are already available in memory, but to make
LuaDist libraries to use them, we enforce flat namespace.
This commit is contained in:
Paul Kulchenko
2013-12-03 15:22:18 -08:00
parent 5afa0fe4e8
commit 5268b5fb0d
5 changed files with 2 additions and 0 deletions

BIN
bin/liblua.dylib Executable file → Normal file

Binary file not shown.

BIN
bin/libluadef.dylib Normal file

Binary file not shown.

Binary file not shown.

View File

@@ -5,6 +5,7 @@ bin/clibs52/socket/core.dylib
bin/libwx.dylib
bin/liblua.dylib
bin/liblua52.dylib
bin/libluadef.dylib
bin/lua
bin/lua.app/Contents/Info.plist
bin/lua.app/Contents/MacOS/lua

View File

@@ -3,6 +3,7 @@
ZBS_PATH=${0%/*/*}
if [ ! -d $ZBS_PATH ]; then ZBS_PATH=${PWD%/*}; fi
export DYLD_LIBRARY_PATH="$ZBS_PATH/ZeroBraneStudio/bin"
export DYLD_FORCE_FLAT_NAMESPACE=1
if [[ ! -e $DYLD_LIBRARY_PATH/libedit.3.dylib && ! -e /usr/lib/libedit.3.dylib ]]
then ln -s /usr/lib/libedit.2.dylib $DYLD_LIBRARY_PATH/libedit.3.dylib; fi
(cd "$ZBS_PATH/ZeroBraneStudio"; bin/lua src/main.lua zbstudio "$@")