lua: choice between 5.1.x & 5.2.x
PATCH v2 1/3 lua: choice between 5.1.x & 5.2.x
---
package/lua/{ => 5.1.5}/lua-01-root-path.patch | 0
.../{ => 5.1.5}/lua-02-shared-libs-for-lua.patch | 0
package/lua/{ => 5.1.5}/lua-11-linenoise.patch | 0
package/lua/5.2.3/lua-01-root-path.patch | 17 +++++++++
.../{ => 5.2.3}/lua-02-shared-libs-for-lua.patch | 28 +++++++-------
package/lua/5.2.3/lua-04-lua-pc.patch | 40 ++++++++++++++++++++
package/lua/{ => 5.2.3}/lua-11-linenoise.patch | 22 ++++++-----
package/lua/Config.in | 14 +++++++
package/lua/lua.mk | 18 ++++++++-
package/luainterpreter/Config.in | 5 +++
package/luainterpreter/luainterpreter.mk | 2 +
11 files changed, 121 insertions(+), 25 deletions(-)
rename package/lua/{ => 5.1.5}/lua-01-root-path.patch (100%)
copy package/lua/{ => 5.1.5}/lua-02-shared-libs-for-lua.patch (100%)
copy package/lua/{ => 5.1.5}/lua-11-linenoise.patch (100%)
create mode 100644 package/lua/5.2.3/lua-01-root-path.patch
rename package/lua/{ => 5.2.3}/lua-02-shared-libs-for-lua.patch (59%)
create mode 100644 package/lua/5.2.3/lua-04-lua-pc.patch
rename package/lua/{ => 5.2.3}/lua-11-linenoise.patch (60%)package/lua/5.1.5/lua-01-root-path.patch renamed from package/lua/lua-01-root-path.patch +0 -0
package/lua/5.1.5/lua-02-shared-libs-for-lua.patch renamed from package/lua/lua-02-shared-libs-for-lua.patch +0 -0
package/lua/5.1.5/lua-11-linenoise.patch renamed from package/lua/lua-11-linenoise.patch +0 -0
package/lua/5.2.3/lua-01-root-path.patch new file +17 -0
@@ -0,0 +1,17 @@ +Adjust installation location to /usr. + +Signed-off-by: Francois Perrad <[email protected]> + +Index: b/src/luaconf.h +=================================================================== +--- a/src/luaconf.h ++++ b/src/luaconf.h +@@ -100,7 +100,7 @@ + #else /* }{ */ + + #define LUA_VDIR LUA_VERSION_MAJOR "." LUA_VERSION_MINOR "/" +-#define LUA_ROOT "/usr/local/" ++#define LUA_ROOT "/usr/" + #define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR + #define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR + #define LUA_PATH_DEFAULT \
package/lua/5.2.3/lua-02-shared-libs-for-lua.patch renamed from package/lua/lua-02-shared-libs-for-lua.patch +14 -14
@@ -7,43 +7,43 @@ Index: b/src/Makefile =================================================================== --- a/src/Makefile +++ b/src/Makefile -@@ -23,6 +23,7 @@ +@@ -29,6 +29,7 @@ PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris LUA_A= liblua.a +LUA_SO= liblua.so - 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 @@ - LUAC_O= luac.o print.o + CORE_O= lapi.o lcode.o lctype.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 +@@ -43,8 +44,9 @@ + LUAC_O= luac.o - ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O) + ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O) -ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) +ALL_T= $(LUA_A) $(LUA_SO) $(LUA_T) $(LUAC_T) ALL_A= $(LUA_A) +ALL_SO= $(LUA_SO) + # Targets start here. default: $(PLAT) - -@@ -47,12 +49,18 @@ +@@ -55,12 +57,18 @@ a: $(ALL_A) +so: $(ALL_SO) + - $(LUA_A): $(CORE_O) $(LIB_O) - $(AR) $@ $(CORE_O) $(LIB_O) # DLL needs all object files + $(LUA_A): $(BASE_O) + $(AR) $@ $(BASE_O) $(RANLIB) $@ -$(LUA_T): $(LUA_O) $(LUA_A) -- $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) +- $(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) +$(LUA_SO): $(CORE_O) $(LIB_O) + $(CC) -o $@.$(PKG_VERSION) -shared -Wl,-soname="$@.$(PKG_VERSION)" $? + ln -fs $@.$(PKG_VERSION) $@ + +$(LUA_T): $(LUA_O) $(LUA_SO) -+ $(CC) -o $@ -L. $(MYLDFLAGS) $(LUA_O) -llua $(LIBS) ++ $(CC) -o $@ -L. $(LDFLAGS) $(LUA_O) -llua $(LIBS) $(LUAC_T): $(LUAC_O) $(LUA_A) - $(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) + $(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
package/lua/5.2.3/lua-04-lua-pc.patch new file +40 -0
@@ -0,0 +1,40 @@ +add lua.pc + +Signed-off-by: Francois Perrad <[email protected]> + +Index: b/etc/lua.pc +=================================================================== +--- /dev/null ++++ b/etc/lua.pc +@@ -0,0 +1,31 @@ ++# lua.pc -- pkg-config data for Lua ++ ++# vars from install Makefile ++ ++# grep '^V=' ../Makefile ++V= 5.2 ++# grep '^R=' ../Makefile ++R= 5.2.3 ++ ++# grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/' ++prefix= /usr ++INSTALL_BIN= ${prefix}/bin ++INSTALL_INC= ${prefix}/include ++INSTALL_LIB= ${prefix}/lib ++INSTALL_MAN= ${prefix}/man/man1 ++INSTALL_LMOD= ${prefix}/share/lua/${V} ++INSTALL_CMOD= ${prefix}/lib/lua/${V} ++ ++# canonical vars ++exec_prefix=${prefix} ++libdir=${exec_prefix}/lib ++includedir=${prefix}/include ++ ++Name: Lua ++Description: An Extensible Extension Language ++Version: ${R} ++Requires: ++Libs: -L${libdir} -llua -lm ++Cflags: -I${includedir} ++ ++# (end of lua.pc)
package/lua/5.2.3/lua-11-linenoise.patch renamed from package/lua/lua-11-linenoise.patch +12 -10
@@ -4,21 +4,23 @@ see discussion, http://lua-users.org/lists/lua-l/2010-03/msg00879.html Signed-off-by: Francois Perrad <[email protected]> -Index: b/src/luaconf.h +Index: b/src/lua.c =================================================================== ---- a/src/luaconf.h -+++ b/src/luaconf.h -@@ -279,6 +279,13 @@ - if (lua_strlen(L,idx) > 0) /* non-empty line? */ \ - add_history(lua_tostring(L, idx)); /* add it to history */ +--- a/src/lua.c ++++ b/src/lua.c +@@ -72,6 +72,15 @@ + add_history(lua_tostring(L, idx)); /* add it to history */ #define lua_freeline(L,b) ((void)L, free(b)) + +#elif defined(LUA_USE_LINENOISE) ++ +#include <linenoise.h> +#define lua_readline(L,b,p) ((void)L, ((b)=linenoise(p)) != NULL) +#define lua_saveline(L,idx) \ -+ if (lua_strlen(L,idx) > 0) /* non-empty line? */ \ ++ if (lua_rawlen(L,idx) > 0) /* non-empty line? */ \ + linenoiseHistoryAdd(lua_tostring(L, idx)); /* add it to history */ +#define lua_freeline(L,b) ((void)L, free(b)) - #else - #define lua_readline(L,b,p) \ - ((void)L, fputs(p, stdout), fflush(stdout), /* show prompt */ \ ++ + #elif !defined(lua_readline) + + #define lua_readline(L,b,p) \
package/lua/Config.in +14 -0
@@ -12,6 +12,20 @@ config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER default "lua" choice + prompt "Lua Version" + default BR2_PACKAGE_LUA_5_1 + help + Select the version of Lua API/ABI you wish to use. + + config BR2_PACKAGE_LUA_5_1 + bool "Lua 5.1.x" + + config BR2_PACKAGE_LUA_5_2 + bool "Lua 5.2.x" + +endchoice + +choice prompt "Lua Interpreter command-line editing" default BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE
package/lua/lua.mk +17 -1
@@ -4,7 +4,11 @@ # ################################################################################ +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +LUA_VERSION = 5.2.3 +else LUA_VERSION = 5.1.5 +endif LUA_SITE = http://www.lua.org/ftp LUA_INSTALL_STAGING = YES LUA_LICENSE = MIT
@@ -13,6 +17,13 @@ LUA_LICENSE_FILES = COPYRIGHT LUA_CFLAGS = -Wall -fPIC LUA_MYLIBS += -ldl +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +LUA_CFLAGS += -DLUA_COMPAT_ALL +ifneq ($(BR2_LARGEFILE),y) +LUA_CFLAGS += -D_FILE_OFFSET_BITS=32 +endif +endif + ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y) LUA_DEPENDENCIES = readline ncurses LUA_MYLIBS += -lreadline -lhistory -lncurses
@@ -33,6 +44,10 @@ HOST_LUA_DEPENDENCIES = HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX HOST_LUA_MYLIBS = -ldl +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +HOST_LUA_CFLAGS += -DLUA_COMPAT_ALL +endif + define LUA_BUILD_CMDS $(MAKE) \ CC="$(TARGET_CC)" RANLIB="$(TARGET_RANLIB)" \
@@ -70,7 +85,8 @@ define LUA_INSTALL_TARGET_CMDS $(INSTALL) -m 0755 -D $(@D)/src/liblua.so.$(LUA_VERSION) \ $(TARGET_DIR)/usr/lib/liblua.so.$(LUA_VERSION) ln -sf liblua.so.$(LUA_VERSION) $(TARGET_DIR)/usr/lib/liblua.so - $(INSTALL) -m 0644 -D $(@D)/src/liblua.a $(TARGET_DIR)/usr/lib/liblua.a + mkdir -p $(TARGET_DIR)/usr/lib/lua/$(LUAINTERPRETER_ABIVER) + mkdir -p $(TARGET_DIR)/usr/share/lua/$(LUAINTERPRETER_ABIVER) endef define HOST_LUA_INSTALL_CMDS
package/luainterpreter/Config.in +5 -0
@@ -4,3 +4,8 @@ config BR2_PACKAGE_HAS_LUA_INTERPRETER config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER string depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + +config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION + string + default "5.1" if BR2_PACKAGE_LUA_5_1 || BR2_PACKAGE_LUAJIT + default "5.2" if BR2_PACKAGE_LUA_5_2
package/luainterpreter/luainterpreter.mk +2 -0
@@ -7,4 +7,6 @@ LUAINTERPRETER_SOURCE = LUAINTERPRETER_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LUA_INTERPRETER)) +LUAINTERPRETER_ABIVER = $(call qstrip,$(BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION)) + $(eval $(generic-package))
Signature · 1 line
1.7.9.5
PATCH v2 2/3 lua-modules: choice between Lua 5.1.x & Lua 5.2.x
--- package/lbase64/Config.in | 4 ++++ package/lua-ev/lua-ev.mk | 2 +- package/lua-msgpack-native/Config.in | 4 ++++ package/lua-msgpack-native/lua-msgpack-native.mk | 3 ++- package/luaexpat/Config.in | 4 ++++ package/luaexpatutils/Config.in | 4 ++++ package/luaexpatutils/luaexpatutils.mk | 2 +- package/luaposix/Config.in | 2 +- package/luaposix/luaposix.mk | 2 +- package/luarocks/luarocks.mk | 4 ++-- package/luasec/Config.in | 4 ++++ 11 files changed, 28 insertions(+), 7 deletions(-)
package/lbase64/Config.in +4 -0
@@ -1,7 +1,11 @@ config BR2_PACKAGE_LBASE64 bool "lbase64" depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on !BR2_PACKAGE_LUA_5_2 help A base64 library for Lua http://luaforge.net/projects/lbase64/ + +comment "lbase64 needs a Lua 5.1 interpreter" + depends on BR2_PACKAGE_LUA_5_2
package/lua-ev/lua-ev.mk +1 -1
@@ -9,6 +9,6 @@ LUA_EV_SITE = $(call github,brimworks,lua-ev,$(LUA_EV_VERSION)) LUA_EV_DEPENDENCIES = luainterpreter libev LUA_EV_LICENSE = MIT LUA_EV_LICENSE_FILES = README -LUA_EV_CONF_OPT = -DINSTALL_CMOD="/usr/lib/lua/5.1" +LUA_EV_CONF_OPT = -DINSTALL_CMOD="/usr/lib/lua/$(LUAINTERPRETER_ABIVER)" $(eval $(cmake-package))
package/lua-msgpack-native/Config.in +4 -0
@@ -1,8 +1,12 @@ config BR2_PACKAGE_LUA_MSGPACK_NATIVE bool "lua-msgpack-native" depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on !BR2_PACKAGE_LUA_5_2 help This is a native, C language implementation of msgpack (http://msgpack.org) library/protocol for Lua language https://github.com/kengonakajima/lua-msgpack-native + +comment "lua-msgpack-native needs a Lua 5.1 interpreter" + depends on BR2_PACKAGE_LUA_5_2
package/lua-msgpack-native/lua-msgpack-native.mk +2 -1
@@ -15,7 +15,8 @@ define LUA_MSGPACK_NATIVE_BUILD_CMDS endef define LUA_MSGPACK_NATIVE_INSTALL_TARGET_CMDS - $(INSTALL) -m 755 -D $(@D)/msgpack.so $(TARGET_DIR)/usr/lib/lua/5.1/msgpack.so + $(INSTALL) -m 755 -D $(@D)/msgpack.so \ + $(TARGET_DIR)/usr/lib/lua/$(LUAINTERPRETER_ABIVER)/msgpack.so endef $(eval $(generic-package))
package/luaexpat/Config.in +4 -0
@@ -2,7 +2,11 @@ config BR2_PACKAGE_LUAEXPAT bool "luaexpat" select BR2_PACKAGE_EXPAT depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on !BR2_PACKAGE_LUA_5_2 help LuaExpat is a SAX XML parser based on the Expat library. http://matthewwild.co.uk/projects/luaexpat/ + +comment "LuaExpat needs a Lua 5.1 interpreter" + depends on BR2_PACKAGE_LUA_5_2
package/luaexpatutils/Config.in +4 -0
@@ -1,8 +1,12 @@ config BR2_PACKAGE_LUAEXPATUTILS bool "luaexpatutils" select BR2_PACKAGE_LUAEXPAT + depends on !BR2_PACKAGE_LUA_5_2 help lxp.doc is a module that provides useful features for working with XML formats in LOM format as used by the LuaExpat project from Kepler. https://github.com/stevedonovan/LuaExpatUtils + +comment "LuaExpatUtils needs a Lua 5.1 interpreter" + depends on BR2_PACKAGE_LUA_5_2
package/luaexpatutils/luaexpatutils.mk +1 -1
@@ -11,7 +11,7 @@ LUAEXPATUTILS_DEPENDENCIES = luaexpat define LUAEXPATUTILS_INSTALL_TARGET_CMDS $(INSTALL) -m 0644 -D $(@D)/lua/doc.lua \ - $(TARGET_DIR)/usr/share/lua/5.1/lxp/doc.lua + $(TARGET_DIR)/usr/share/lua/$(LUAINTERPRETER_ABIVER)/lxp/doc.lua endef $(eval $(generic-package))
package/luaposix/Config.in +1 -1
@@ -1,7 +1,7 @@ config BR2_PACKAGE_LUAPOSIX bool "luaposix" depends on BR2_PACKAGE_HAS_LUA_INTERPRETER - select BR2_PACKAGE_LUABITOP if BR2_PACKAGE_LUA + select BR2_PACKAGE_LUABITOP if BR2_PACKAGE_LUA_5_1 # LuaBitOp is already included in LuaJIT help luaposix is a POSIX binding, including curses, for Lua 5.1
package/luaposix/luaposix.mk +1 -1
@@ -10,7 +10,7 @@ LUAPOSIX_SOURCE = release-v$(LUAPOSIX_VERSION).tar.gz LUAPOSIX_LICENSE = MIT LUAPOSIX_LICENSE_FILES = COPYING LUAPOSIX_DEPENDENCIES = luainterpreter host-lua -LUAPOSIX_CONF_OPT = --libdir="/usr/lib/lua/5.1" --datarootdir="/usr/share/lua/5.1" +LUAPOSIX_CONF_OPT = --libdir="/usr/lib/lua/$(LUAINTERPRETER_ABIVER)" --datarootdir="/usr/share/lua/$(LUAINTERPRETER_ABIVER)" ifeq ($(BR2_PACKAGE_NCURSES),y) LUAPOSIX_DEPENDENCIES += ncurses
package/luarocks/luarocks.mk +2 -2
@@ -12,7 +12,7 @@ LUAROCKS_LICENSE_FILES = COPYING HOST_LUAROCKS_DEPENDENCIES = host-lua luainterpreter LUAROCKS_CONFIG_DIR = $(HOST_DIR)/usr/etc/luarocks -LUAROCKS_CONFIG_FILE = $(LUAROCKS_CONFIG_DIR)/config-5.1.lua +LUAROCKS_CONFIG_FILE = $(LUAROCKS_CONFIG_DIR)/config-$(LUAINTERPRETER_ABIVER).lua define HOST_LUAROCKS_CONFIGURE_CMDS cd $(@D) && ./configure \
@@ -41,5 +41,5 @@ endef $(eval $(host-generic-package)) -LUAROCKS_RUN = LUA_PATH="$(HOST_DIR)/usr/share/lua/5.1/?.lua" \ +LUAROCKS_RUN = LUA_PATH="$(HOST_DIR)/usr/share/lua/$(LUAINTERPRETER_ABIVER)/?.lua" \ $(HOST_DIR)/usr/bin/lua $(HOST_DIR)/usr/bin/luarocks
package/luasec/Config.in +4 -0
@@ -3,8 +3,12 @@ config BR2_PACKAGE_LUASEC select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_LUASOCKET depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on !BR2_PACKAGE_LUA_5_2 help LuaSec is a binding for OpenSSL library to provide TLS/SSL communication. http://www.inf.puc-rio.br/~brunoos/luasec/ + +comment "LuaSec needs a Lua 5.1 interpreter" + depends on BR2_PACKAGE_LUA_5_2
Signature · 1 line
1.7.9.5
PATCH v2 2/3 lua-modules: choice between Lua 5.1.x & Lua 5.2.x
On 15/01/14 20:54, Francois Perrad wrote:
[snip]
Quoted 5 lines
package/luaexpat/Config.in +0
-0
package/luaexpat/Config.in config BR2_PACKAGE_LUAEXPAT · line 11
Quoted 10 lines
package/luaexpat/Config.in +3
-0@@ -2,7 +2,11 @@ config BR2_PACKAGE_LUAEXPAT bool "luaexpat" select BR2_PACKAGE_EXPAT depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on !BR2_PACKAGE_LUA_5_2 help LuaExpat is a SAX XML parser based on the Expat library. http://matthewwild.co.uk/projects/luaexpat/ + +comment "LuaExpat needs a Lua 5.1 interpreter"
Capitalization should be the same as in the normal config symbol, i.e.
luaexpat instead of LuaExpat.
Personally I would be in favour of changing our coding style to use the
upstream capitalization for the user-visible text, but that's not how it is done now... But it certainly should be consistent between the config symbol and the comment.
Regards,
Arnout
Quoted 1 line
package/luaexpat/Config.in +1
-0+ depends on BR2_PACKAGE_LUA_5_2
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v2 2/3 lua-modules: choice between Lua 5.1.x & Lua 5.2.x
2014/1/16 Arnout Vandecappelle <[email protected]>:
Quoted 15 lines · Francois Perrad
[snip]
Quoted 12 lines
package/luaexpat/Config.in +1
-0@@ -2,7 +2,11 @@ config BR2_PACKAGE_LUAEXPAT bool "luaexpat" select BR2_PACKAGE_EXPAT depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on !BR2_PACKAGE_LUA_5_2 help LuaExpat is a SAX XML parser based on the Expat library.
Quoted 7 lines
package/luaexpat/Config.in config BR2_PACKAGE_LUAEXPAT · line 11
Quoted 3 lines
package/luaexpat/Config.in +2
-0http://matthewwild.co.uk/projects/luaexpat/ + +comment "LuaExpat needs a Lua 5.1 interpreter"Capitalization should be the same as in the normal config symbol, i.e.
luaexpat instead of LuaExpat.
Ok.
Fran?ois
Quoted 26 lines
Personally I would be in favour of changing our coding style to use the
upstream capitalization for the user-visible text, but that's not how it is done now... But it certainly should be consistent between the config symbol and the comment.Regards,
Arnoutpackage/luaexpat/Config.in config BR2_PACKAGE_LUAEXPAT · line 12
Quoted 1 line
package/luaexpat/Config.in +1
-0+ depends on BR2_PACKAGE_LUA_5_2--
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
PATCH v2 3/3 lua: add an upstream patch
In reply to Francois Perradfrom http://www.lua.org/bugs.html
--- package/lua/5.1.5/lua-12-fix-reader-at-eoz.patch | 46 ++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 package/lua/5.1.5/lua-12-fix-reader-at-eoz.patch
package/lua/5.1.5/lua-12-fix-reader-at-eoz.patch new file +46 -0
@@ -0,0 +1,46 @@ +When loading a file, Lua may call the reader function again after it returned end of input. + +Fetch from: http://www.lua.org/bugs.html#5.1.5-2 + +Signed-off-by: Francois Perrad <[email protected]> + +Index: b/src/lzio.c +=================================================================== +--- a/src/lzio.c ++++ b/src/lzio.c +@@ -22,10 +22,14 @@ + size_t size; + lua_State *L = z->L; + const char *buff; ++ if (z->eoz) return EOZ; + lua_unlock(L); + buff = z->reader(L, z->data, &size); + lua_lock(L); +- if (buff == NULL || size == 0) return EOZ; ++ if (buff == NULL || size == 0) { ++ z->eoz = 1; /* avoid calling reader function next time */ ++ return EOZ; ++ } + z->n = size - 1; + z->p = buff; + return char2int(*(z->p++)); +@@ -51,6 +55,7 @@ + z->data = data; + z->n = 0; + z->p = NULL; ++ z->eoz = 0; + } + + +Index: b/src/lzio.h +=================================================================== +--- a/src/lzio.h ++++ b/src/lzio.h +@@ -59,6 +59,7 @@ + lua_Reader reader; + void* data; /* additional data */ + lua_State *L; /* Lua state (for reader) */ ++ int eoz; /* true if reader has no more data */ + }; + +
Signature · 1 line
1.7.9.5
PATCH v2 1/3 lua: choice between 5.1.x & 5.2.x
In reply to Francois PerradQuoted 2 lines · Francois Perrad
Signed-off-by Francois Perrad <[email protected]>
[snip]
package/lua/5.2.3/lua-04-lua-pc.patch line 1
Quoted 7 lines
package/lua/5.2.3/lua-04-lua-pc.patch new file +1
-0@@ -0,0 +1,40 @@ +add lua.pc
So they had a .pc file, and now they removed it? How weird...
[snip]
Quoted 37 lines
package/lua/lua.mk +14
-0@@ -4,7 +4,11 @@ # ################################################################################ +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +LUA_VERSION = 5.2.3 +else LUA_VERSION = 5.1.5 +endif LUA_SITE = http://www.lua.org/ftp LUA_INSTALL_STAGING = YES LUA_LICENSE = MIT@@ -13,6 +17,13 @@ LUA_LICENSE_FILES = COPYRIGHT LUA_CFLAGS = -Wall -fPIC LUA_MYLIBS += -ldl +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +LUA_CFLAGS += -DLUA_COMPAT_ALL +ifneq ($(BR2_LARGEFILE),y) +LUA_CFLAGS += -D_FILE_OFFSET_BITS=32 +endif +endif + ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y) LUA_DEPENDENCIES = readline ncurses LUA_MYLIBS += -lreadline -lhistory -lncurses@@ -33,6 +44,10 @@ HOST_LUA_DEPENDENCIES = HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX HOST_LUA_MYLIBS = -ldl +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +HOST_LUA_CFLAGS += -DLUA_COMPAT_ALL +endif
[snip]
package/luainterpreter/Config.in config BR2_PACKAGE_HAS_LUA_INTERPRETER · line 11
Quoted 13 lines
package/luainterpreter/Config.in +5
-0@@ -4,3 +4,8 @@ config BR2_PACKAGE_HAS_LUA_INTERPRETER config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER string depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + +config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION + string + default "5.1" if BR2_PACKAGE_LUA_5_1 || BR2_PACKAGE_LUAJIT + default "5.2" if BR2_PACKAGE_LUA_5_2
Sorry, not OK. It should be split over the three packages.
In luainterpreter/Config.in:
config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION
string
In lua/Config.in (inside the LUA condition):
config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION
default "5.1" if BR2_PACKAGE_LUA_5_1 default "5.2" if BR2_PACKAGE_LUA_5_2
In luajit/Config.in:
config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION
default "5.1"
Regards,
Arnout
Quoted 12 lines
package/luainterpreter/luainterpreter.mk +2
-0@@ -7,4 +7,6 @@ LUAINTERPRETER_SOURCE = LUAINTERPRETER_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LUA_INTERPRETER)) +LUAINTERPRETER_ABIVER = $(call qstrip,$(BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION)) + $(eval $(generic-package))
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v2 1/3 lua: choice between 5.1.x & 5.2.x
2014/1/16 Arnout Vandecappelle <[email protected]>:
Quoted 7 lines · Francois Perrad
Quoted 3 lines
Signed-off-by Francois Perrad <[email protected]>[snip]
Quoted 12 lines
package/lua/5.2.3/lua-04-lua-pc.patch line 1
Quoted 8 lines
package/lua/5.2.3/lua-04-lua-pc.patch new file +1
-0@@ -0,0 +1,40 @@ +add lua.pcSo they had a .pc file, and now they removed it? How weird...
Yes, :)
Quoted 72 lines
[snip]
Quoted 38 lines
package/lua/lua.mk +4
-0@@ -4,7 +4,11 @@ # ################################################################################ +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +LUA_VERSION = 5.2.3 +else LUA_VERSION = 5.1.5 +endif LUA_SITE = http://www.lua.org/ftp LUA_INSTALL_STAGING = YES
LUA_LICENSE= MITpackage/lua/lua.mk +10
-0@@ -13,6 +17,13 @@ LUA_LICENSE_FILES = COPYRIGHT LUA_CFLAGS = -Wall -fPIC LUA_MYLIBS += -ldl +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +LUA_CFLAGS += -DLUA_COMPAT_ALL +ifneq ($(BR2_LARGEFILE),y) +LUA_CFLAGS += -D_FILE_OFFSET_BITS=32 +endif +endif + ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y) LUA_DEPENDENCIES = readline ncurses LUA_MYLIBS += -lreadline -lhistory -lncurses@@ -33,6 +44,10 @@ HOST_LUA_DEPENDENCIES = HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX HOST_LUA_MYLIBS = -ldl +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +HOST_LUA_CFLAGS += -DLUA_COMPAT_ALL +endif[snip]
Quoted 6 lines
package/luainterpreter/Config.in +0
-0package/luainterpreter/Config.in config BR2_PACKAGE_HAS_LUA_INTERPRETER · line 11
Quoted 8 lines
package/luainterpreter/Config.in +5
-0@@ -4,3 +4,8 @@ config BR2_PACKAGE_HAS_LUA_INTERPRETER config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER string depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + +config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION + string + default "5.1" if BR2_PACKAGE_LUA_5_1 || BR2_PACKAGE_LUAJIT + default "5.2" if BR2_PACKAGE_LUA_5_2Sorry, not OK. It should be split over the three packages.
In luainterpreter/Config.in:
config
BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION
stringIn lua/Config.in (inside the LUA condition):
config
BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION
Quoted 9 lines
default "5.1" if BR2_PACKAGE_LUA_5_1 default "5.2" if BR2_PACKAGE_LUA_5_2In luajit/Config.in:
config
BR2_PACKAGE_LUAINTERPRETER_ABI_VERSIONdefault "5.1"
Ok
Fran?ois
Quoted 33 lines
Regards,
ArnoutQuoted 11 lines
package/luainterpreter/luainterpreter.mk +1
-0@@ -7,4 +7,6 @@ LUAINTERPRETER_SOURCE = LUAINTERPRETER_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LUA_INTERPRETER)) +LUAINTERPRETER_ABIVER = $(callQuoted 4 lines
qstrip,$(BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION))
+
$(eval $(generic-package))--
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot