diff options
Diffstat (limited to 'package/lua/5.1.5/lua-02-shared-libs-for-lua.patch')
| -rw-r--r-- | package/lua/5.1.5/lua-02-shared-libs-for-lua.patch | 39 |
1 files changed, 34 insertions, 5 deletions
diff --git a/package/lua/5.1.5/lua-02-shared-libs-for-lua.patch b/package/lua/5.1.5/lua-02-shared-libs-for-lua.patch index 97a70684f8..3f863a530c 100644 --- a/package/lua/5.1.5/lua-02-shared-libs-for-lua.patch +++ b/package/lua/5.1.5/lua-02-shared-libs-for-lua.patch @@ -1,8 +1,31 @@ Add the compilation of a shared library. Compile the lua binary with the shared library. +And install the shared library. +The variable BUILDMODE allows to switch between static and dynamic mode. Signed-off-by: Francois Perrad <francois.perrad@gadz.org> +Index: b/Makefile +=================================================================== +--- a/Makefile ++++ b/Makefile +@@ -44,6 +44,7 @@ + TO_BIN= lua luac + TO_INC= lua.h luaconf.h lualib.h lauxlib.h ../etc/lua.hpp + TO_LIB= liblua.a ++TO_SOLIB = liblua.so.$(R) + TO_MAN= lua.1 luac.1 + + # Lua version and release. +@@ -61,6 +62,8 @@ + install: dummy + cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD) + cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN) ++ test -f src/$(TO_SOLIB) && cd src && $(INSTALL_EXEC) $(TO_SOLIB) $(INSTALL_LIB) || : ++ test -f src/$(TO_SOLIB) && ln -sf $(TO_SOLIB) $(INSTALL_LIB)/liblua.so || : + cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC) + cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB) + cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN) Index: b/src/Makefile =================================================================== --- a/src/Makefile @@ -15,18 +38,21 @@ Index: b/src/Makefile CORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \ lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o \ lundump.o lvm.o lzio.o -@@ -36,8 +37,9 @@ +@@ -36,8 +37,13 @@ LUAC_O= luac.o print.o ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O) --ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) ++ifneq (dynamic,$(BUILDMODE)) + ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) ++else +ALL_T= $(LUA_A) $(LUA_SO) $(LUA_T) $(LUAC_T) ++endif ALL_A= $(LUA_A) +ALL_SO= $(LUA_SO) default: $(PLAT) -@@ -47,12 +49,18 @@ +@@ -47,12 +53,23 @@ a: $(ALL_A) @@ -36,14 +62,17 @@ Index: b/src/Makefile $(AR) $@ $(CORE_O) $(LIB_O) # DLL needs all object files $(RANLIB) $@ --$(LUA_T): $(LUA_O) $(LUA_A) -- $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) +$(LUA_SO): $(CORE_O) $(LIB_O) + $(CC) -o $@.$(PKG_VERSION) -shared -Wl,-soname="$@.$(PKG_VERSION)" $? + ln -fs $@.$(PKG_VERSION) $@ + ++ifneq (dynamic,$(BUILDMODE)) + $(LUA_T): $(LUA_O) $(LUA_A) + $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) ++else +$(LUA_T): $(LUA_O) $(LUA_SO) + $(CC) -o $@ -L. $(MYLDFLAGS) $(LUA_O) -llua $(LIBS) ++endif $(LUAC_T): $(LUAC_O) $(LUA_A) $(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) |

