* [Buildroot] [PATCH 0/3] choice between Lua 5.1.x & 5.2.x
@ 2014-01-14 13:14 Francois Perrad
2014-01-14 13:14 ` [Buildroot] [PATCH 1/3] lua: choice between " Francois Perrad
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: Francois Perrad @ 2014-01-14 13:14 UTC (permalink / raw)
To: buildroot
Lua 5.1 and 5.2 could be handled in the same package.
Currently, some modules are written only for Lua 5.1 and are not yet compatible with Lua 5.2
(Note: LuaJIT is binary compatible with Lua 5.1)
See discussion in http://lists.busybox.net/pipermail/buildroot/2013-October/079211.html
Francois Perrad (3):
lua: choice between 5.1.x & 5.2.x
lua: add official patches
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/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.1.5/lua-bug2.patch | 46 ++++++++++++++++++
package/lua/5.2.3/lua-01-root-path.patch | 17 +++++++
package/lua/5.2.3/lua-02-shared-libs-for-lua.patch | 49 ++++++++++++++++++++
package/lua/5.2.3/lua-04-lua-pc.patch | 40 ++++++++++++++++
package/lua/5.2.3/lua-11-linenoise.patch | 26 +++++++++++
package/lua/Config.in | 14 ++++++
package/lua/lua.mk | 18 ++++++-
package/luaexpat/Config.in | 4 ++
package/luaexpatutils/Config.in | 4 ++
package/luaexpatutils/luaexpatutils.mk | 2 +-
package/luainterpreter/Config.in | 10 ++++
package/luaposix/Config.in | 2 +-
package/luaposix/luaposix.mk | 2 +-
package/luarocks/luarocks.mk | 4 +-
package/luasec/Config.in | 4 ++
22 files changed, 246 insertions(+), 9 deletions(-)
rename package/lua/{ => 5.1.5}/lua-01-root-path.patch (100%)
rename package/lua/{ => 5.1.5}/lua-02-shared-libs-for-lua.patch (100%)
rename package/lua/{ => 5.1.5}/lua-11-linenoise.patch (100%)
create mode 100644 package/lua/5.1.5/lua-bug2.patch
create mode 100644 package/lua/5.2.3/lua-01-root-path.patch
create mode 100644 package/lua/5.2.3/lua-02-shared-libs-for-lua.patch
create mode 100644 package/lua/5.2.3/lua-04-lua-pc.patch
create mode 100644 package/lua/5.2.3/lua-11-linenoise.patch
--
1.7.9.5
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/3] lua: choice between 5.1.x & 5.2.x
2014-01-14 13:14 [Buildroot] [PATCH 0/3] choice between Lua 5.1.x & 5.2.x Francois Perrad
@ 2014-01-14 13:14 ` Francois Perrad
2014-01-14 17:46 ` Arnout Vandecappelle
2014-01-14 13:14 ` [Buildroot] [PATCH 2/3] lua: add official patches Francois Perrad
2014-01-14 13:14 ` [Buildroot] [PATCH 3/3] lua-modules: choice between Lua 5.1.x & Lua 5.2.x Francois Perrad
2 siblings, 1 reply; 9+ messages in thread
From: Francois Perrad @ 2014-01-14 13:14 UTC (permalink / raw)
To: buildroot
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
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 +++++++
package/lua/5.2.3/lua-02-shared-libs-for-lua.patch | 49 ++++++++++++++++++++
package/lua/5.2.3/lua-04-lua-pc.patch | 40 ++++++++++++++++
package/lua/5.2.3/lua-11-linenoise.patch | 26 +++++++++++
package/lua/Config.in | 14 ++++++
package/lua/lua.mk | 18 ++++++-
package/luainterpreter/Config.in | 10 ++++
10 files changed, 172 insertions(+), 2 deletions(-)
rename package/lua/{ => 5.1.5}/lua-01-root-path.patch (100%)
rename package/lua/{ => 5.1.5}/lua-02-shared-libs-for-lua.patch (100%)
rename package/lua/{ => 5.1.5}/lua-11-linenoise.patch (100%)
create mode 100644 package/lua/5.2.3/lua-01-root-path.patch
create mode 100644 package/lua/5.2.3/lua-02-shared-libs-for-lua.patch
create mode 100644 package/lua/5.2.3/lua-04-lua-pc.patch
create mode 100644 package/lua/5.2.3/lua-11-linenoise.patch
diff --git a/package/lua/lua-01-root-path.patch b/package/lua/5.1.5/lua-01-root-path.patch
similarity index 100%
rename from package/lua/lua-01-root-path.patch
rename to package/lua/5.1.5/lua-01-root-path.patch
diff --git a/package/lua/lua-02-shared-libs-for-lua.patch b/package/lua/5.1.5/lua-02-shared-libs-for-lua.patch
similarity index 100%
rename from package/lua/lua-02-shared-libs-for-lua.patch
rename to package/lua/5.1.5/lua-02-shared-libs-for-lua.patch
diff --git a/package/lua/lua-11-linenoise.patch b/package/lua/5.1.5/lua-11-linenoise.patch
similarity index 100%
rename from package/lua/lua-11-linenoise.patch
rename to package/lua/5.1.5/lua-11-linenoise.patch
diff --git a/package/lua/5.2.3/lua-01-root-path.patch b/package/lua/5.2.3/lua-01-root-path.patch
new file mode 100644
index 0000000..c6f242c
--- /dev/null
+++ b/package/lua/5.2.3/lua-01-root-path.patch
@@ -0,0 +1,17 @@
+Adjust installation location to /usr.
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+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 \
diff --git a/package/lua/5.2.3/lua-02-shared-libs-for-lua.patch b/package/lua/5.2.3/lua-02-shared-libs-for-lua.patch
new file mode 100644
index 0000000..4679325
--- /dev/null
+++ b/package/lua/5.2.3/lua-02-shared-libs-for-lua.patch
@@ -0,0 +1,49 @@
+Add the compilation of a shared library.
+Compile the lua binary with the shared library.
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/src/Makefile
+===================================================================
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -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 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= $(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)
+@@ -55,12 +57,18 @@
+
+ a: $(ALL_A)
+
++so: $(ALL_SO)
++
+ $(LUA_A): $(BASE_O)
+ $(AR) $@ $(BASE_O)
+ $(RANLIB) $@
+
+-$(LUA_T): $(LUA_O) $(LUA_A)
+- $(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. $(LDFLAGS) $(LUA_O) -llua $(LIBS)
+
+ $(LUAC_T): $(LUAC_O) $(LUA_A)
+ $(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
diff --git a/package/lua/5.2.3/lua-04-lua-pc.patch b/package/lua/5.2.3/lua-04-lua-pc.patch
new file mode 100644
index 0000000..62acb20
--- /dev/null
+++ b/package/lua/5.2.3/lua-04-lua-pc.patch
@@ -0,0 +1,40 @@
+add lua.pc
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+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)
diff --git a/package/lua/5.2.3/lua-11-linenoise.patch b/package/lua/5.2.3/lua-11-linenoise.patch
new file mode 100644
index 0000000..b1f228c
--- /dev/null
+++ b/package/lua/5.2.3/lua-11-linenoise.patch
@@ -0,0 +1,26 @@
+Add support of linenoise (replace readline)
+
+see discussion, http://lua-users.org/lists/lua-l/2010-03/msg00879.html
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/src/lua.c
+===================================================================
+--- 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_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))
++
+ #elif !defined(lua_readline)
+
+ #define lua_readline(L,b,p) \
diff --git a/package/lua/Config.in b/package/lua/Config.in
index b96ef0e..9b8b6f1 100644
--- a/package/lua/Config.in
+++ b/package/lua/Config.in
@@ -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
diff --git a/package/lua/lua.mk b/package/lua/lua.mk
index a88a11e..97e5ea8 100644
--- a/package/lua/lua.mk
+++ b/package/lua/lua.mk
@@ -4,7 +4,12 @@
#
################################################################################
+LUA_ABIVER = $(call qstrip,$(BR2_PACKAGE_LUA_VERSION))
+ifeq ($(LUA_ABIVER),5.1)
LUA_VERSION = 5.1.5
+else
+LUA_VERSION = 5.2.3
+endif
LUA_SITE = http://www.lua.org/ftp
LUA_INSTALL_STAGING = YES
LUA_LICENSE = MIT
@@ -13,6 +18,14 @@ LUA_LICENSE_FILES = COPYRIGHT
LUA_CFLAGS = -Wall -fPIC
LUA_MYLIBS += -ldl
+ifneq ($(BR2_LARGEFILE),y)
+LUA_CFLAGS += -D_FILE_OFFSET_BITS=32
+endif
+
+ifeq ($(LUA_ABIVER),5.2)
+LUA_CFLAGS += -DLUA_COMPAT_ALL
+endif
+
ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y)
LUA_DEPENDENCIES = readline ncurses
LUA_MYLIBS += -lreadline -lhistory -lncurses
@@ -30,7 +43,7 @@ endif
# We never want to have host-readline and host-ncurses as dependencies
# of host-lua.
HOST_LUA_DEPENDENCIES =
-HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX
+HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX -DLUA_COMPAT_ALL
HOST_LUA_MYLIBS = -ldl
define LUA_BUILD_CMDS
@@ -70,7 +83,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/$(LUA_ABIVER)
+ mkdir -p $(TARGET_DIR)/usr/share/lua/$(LUA_ABIVER)
endef
define HOST_LUA_INSTALL_CMDS
diff --git a/package/luainterpreter/Config.in b/package/luainterpreter/Config.in
index 1562145..3bc257e 100644
--- a/package/luainterpreter/Config.in
+++ b/package/luainterpreter/Config.in
@@ -4,3 +4,13 @@ config BR2_PACKAGE_HAS_LUA_INTERPRETER
config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER
string
depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
+
+config BR2_PACKAGE_LUA_VERSION
+ string
+ default "5.1" if BR2_PACKAGE_LUA_5_1 || BR2_PACKAGE_LUAJIT
+ default "5.2" if BR2_PACKAGE_LUA_5_2
+
+config BR2_PACKAGE_LUA_VERSION_NUM
+ int
+ default 501 if BR2_PACKAGE_LUA_5_1 || BR2_PACKAGE_LUAJIT
+ default 502 if BR2_PACKAGE_LUA_5_2
--
1.7.9.5
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 2/3] lua: add official patches
2014-01-14 13:14 [Buildroot] [PATCH 0/3] choice between Lua 5.1.x & 5.2.x Francois Perrad
2014-01-14 13:14 ` [Buildroot] [PATCH 1/3] lua: choice between " Francois Perrad
@ 2014-01-14 13:14 ` Francois Perrad
2014-01-14 17:27 ` Arnout Vandecappelle
2014-01-14 13:14 ` [Buildroot] [PATCH 3/3] lua-modules: choice between Lua 5.1.x & Lua 5.2.x Francois Perrad
2 siblings, 1 reply; 9+ messages in thread
From: Francois Perrad @ 2014-01-14 13:14 UTC (permalink / raw)
To: buildroot
from http://www.lua.org/bugs.html
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
package/lua/5.1.5/lua-bug2.patch | 46 ++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
create mode 100644 package/lua/5.1.5/lua-bug2.patch
diff --git a/package/lua/5.1.5/lua-bug2.patch b/package/lua/5.1.5/lua-bug2.patch
new file mode 100644
index 0000000..729c22d
--- /dev/null
+++ b/package/lua/5.1.5/lua-bug2.patch
@@ -0,0 +1,46 @@
+When loading a file, Lua may call the reader function again after it returned end of input.
+
+Backported from http://www.lua.org/bugs.html#5.1.5-2
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+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 */
+ };
+
+
--
1.7.9.5
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 3/3] lua-modules: choice between Lua 5.1.x & Lua 5.2.x
2014-01-14 13:14 [Buildroot] [PATCH 0/3] choice between Lua 5.1.x & 5.2.x Francois Perrad
2014-01-14 13:14 ` [Buildroot] [PATCH 1/3] lua: choice between " Francois Perrad
2014-01-14 13:14 ` [Buildroot] [PATCH 2/3] lua: add official patches Francois Perrad
@ 2014-01-14 13:14 ` Francois Perrad
2014-01-14 17:36 ` Arnout Vandecappelle
2 siblings, 1 reply; 9+ messages in thread
From: Francois Perrad @ 2014-01-14 13:14 UTC (permalink / raw)
To: buildroot
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
---
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(-)
diff --git a/package/lbase64/Config.in b/package/lbase64/Config.in
index ca9dd5d..9cc2e2b 100644
--- a/package/lbase64/Config.in
+++ b/package/lbase64/Config.in
@@ -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 only with Lua 5.1"
+ depends on BR2_PACKAGE_LUA_5_2
diff --git a/package/lua-ev/lua-ev.mk b/package/lua-ev/lua-ev.mk
index 1236d77..a4f7964 100644
--- a/package/lua-ev/lua-ev.mk
+++ b/package/lua-ev/lua-ev.mk
@@ -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/$(LUA_ABIVER)"
$(eval $(cmake-package))
diff --git a/package/lua-msgpack-native/Config.in b/package/lua-msgpack-native/Config.in
index 1014298..735c7a6 100644
--- a/package/lua-msgpack-native/Config.in
+++ b/package/lua-msgpack-native/Config.in
@@ -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 only with Lua 5.1"
+ depends on BR2_PACKAGE_LUA_5_2
diff --git a/package/lua-msgpack-native/lua-msgpack-native.mk b/package/lua-msgpack-native/lua-msgpack-native.mk
index d4547ae..76ce037 100644
--- a/package/lua-msgpack-native/lua-msgpack-native.mk
+++ b/package/lua-msgpack-native/lua-msgpack-native.mk
@@ -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/$(LUA_ABIVER)/msgpack.so
endef
$(eval $(generic-package))
diff --git a/package/luaexpat/Config.in b/package/luaexpat/Config.in
index f8db318..38198e2 100644
--- a/package/luaexpat/Config.in
+++ b/package/luaexpat/Config.in
@@ -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 only with Lua 5.1"
+ depends on BR2_PACKAGE_LUA_5_2
diff --git a/package/luaexpatutils/Config.in b/package/luaexpatutils/Config.in
index cb2887a..213f371 100644
--- a/package/luaexpatutils/Config.in
+++ b/package/luaexpatutils/Config.in
@@ -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 only with Lua 5.1"
+ depends on BR2_PACKAGE_LUA_5_2
diff --git a/package/luaexpatutils/luaexpatutils.mk b/package/luaexpatutils/luaexpatutils.mk
index 93cf621..05a0b81 100644
--- a/package/luaexpatutils/luaexpatutils.mk
+++ b/package/luaexpatutils/luaexpatutils.mk
@@ -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/$(LUA_ABIVER)/lxp/doc.lua
endef
$(eval $(generic-package))
diff --git a/package/luaposix/Config.in b/package/luaposix/Config.in
index cad6fe9..a95c825 100644
--- a/package/luaposix/Config.in
+++ b/package/luaposix/Config.in
@@ -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
diff --git a/package/luaposix/luaposix.mk b/package/luaposix/luaposix.mk
index b018995..6d13db5 100644
--- a/package/luaposix/luaposix.mk
+++ b/package/luaposix/luaposix.mk
@@ -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/$(LUA_ABIVER)" --datarootdir="/usr/share/lua/$(LUA_ABIVER)"
ifeq ($(BR2_PACKAGE_NCURSES),y)
LUAPOSIX_DEPENDENCIES += ncurses
diff --git a/package/luarocks/luarocks.mk b/package/luarocks/luarocks.mk
index 85b6866..034a792 100644
--- a/package/luarocks/luarocks.mk
+++ b/package/luarocks/luarocks.mk
@@ -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-$(LUA_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/$(LUA_ABIVER)/?.lua" \
$(HOST_DIR)/usr/bin/lua $(HOST_DIR)/usr/bin/luarocks
diff --git a/package/luasec/Config.in b/package/luasec/Config.in
index ed55df7..46a7c9c 100644
--- a/package/luasec/Config.in
+++ b/package/luasec/Config.in
@@ -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 only with Lua 5.1"
+ depends on BR2_PACKAGE_LUA_5_2
--
1.7.9.5
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 2/3] lua: add official patches
2014-01-14 13:14 ` [Buildroot] [PATCH 2/3] lua: add official patches Francois Perrad
@ 2014-01-14 17:27 ` Arnout Vandecappelle
0 siblings, 0 replies; 9+ messages in thread
From: Arnout Vandecappelle @ 2014-01-14 17:27 UTC (permalink / raw)
To: buildroot
On 14/01/14 14:14, Francois Perrad wrote:
> from http://www.lua.org/bugs.html
>
> Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
> ---
> package/lua/5.1.5/lua-bug2.patch | 46 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 46 insertions(+)
> create mode 100644 package/lua/5.1.5/lua-bug2.patch
>
> diff --git a/package/lua/5.1.5/lua-bug2.patch b/package/lua/5.1.5/lua-bug2.patch
> new file mode 100644
> index 0000000..729c22d
> --- /dev/null
> +++ b/package/lua/5.1.5/lua-bug2.patch
> @@ -0,0 +1,46 @@
> +When loading a file, Lua may call the reader function again after it returned end of input.
This doesn't look like a patch related to cross-compilation or uClibc
support, so it isn't really buildroot's business I'd say.
Also, the patch should be numbered and it should get a better filename
than "bug2".
Regards,
Arnout
> +
> +Backported from http://www.lua.org/bugs.html#5.1.5-2
> +
> +Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
> +
> +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 */
> + };
> +
> +
>
--
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
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 3/3] lua-modules: choice between Lua 5.1.x & Lua 5.2.x
2014-01-14 13:14 ` [Buildroot] [PATCH 3/3] lua-modules: choice between Lua 5.1.x & Lua 5.2.x Francois Perrad
@ 2014-01-14 17:36 ` Arnout Vandecappelle
2014-01-15 19:42 ` François Perrad
0 siblings, 1 reply; 9+ messages in thread
From: Arnout Vandecappelle @ 2014-01-14 17:36 UTC (permalink / raw)
To: buildroot
On 14/01/14 14:14, Francois Perrad wrote:
> Signed-off-by: Francois Perrad<francois.perrad@gadz.org>
> ---
> 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 ++++
I wonder if this patch shouldn't be squashed with the first one - I
guess without this patch, all these packages are broken when 5.2 is selected.
> 11 files changed, 28 insertions(+), 7 deletions(-)
>
> diff --git a/package/lbase64/Config.in b/package/lbase64/Config.in
> index ca9dd5d..9cc2e2b 100644
> --- a/package/lbase64/Config.in
> +++ b/package/lbase64/Config.in
> @@ -1,7 +1,11 @@
> config BR2_PACKAGE_LBASE64
> bool "lbase64"
> depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
> + depends on !BR2_PACKAGE_LUA_5_2
I think this should be "depends on BR2_PACKAGE_LUA_5_1", because this
package most likely still won't work when a Lua 5.3 is added in the
future. But of course, to make that possible you need a
BR2_PACKAGE_LUAINTERPRETER_ABI_5_1 symbol.
> help
> A base64 library for Lua
>
> http://luaforge.net/projects/lbase64/
> +
> +comment "lbase64 only with Lua 5.1"
> + depends on BR2_PACKAGE_LUA_5_2
To make it consistent with the toolchain comments, I'd write:
comment "lbase64 needs a Lua 5.1 interpreter"
Regards,
Arnout
[snip]
--
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
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/3] lua: choice between 5.1.x & 5.2.x
2014-01-14 13:14 ` [Buildroot] [PATCH 1/3] lua: choice between " Francois Perrad
@ 2014-01-14 17:46 ` Arnout Vandecappelle
2014-01-15 19:40 ` François Perrad
0 siblings, 1 reply; 9+ messages in thread
From: Arnout Vandecappelle @ 2014-01-14 17:46 UTC (permalink / raw)
To: buildroot
On 14/01/14 14:14, Francois Perrad wrote:
>
> Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
> ---
> 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 +++++++
> package/lua/5.2.3/lua-02-shared-libs-for-lua.patch | 49 ++++++++++++++++++++
> package/lua/5.2.3/lua-04-lua-pc.patch | 40 ++++++++++++++++
> package/lua/5.2.3/lua-11-linenoise.patch | 26 +++++++++++
> package/lua/Config.in | 14 ++++++
> package/lua/lua.mk | 18 ++++++-
> package/luainterpreter/Config.in | 10 ++++
> 10 files changed, 172 insertions(+), 2 deletions(-)
> rename package/lua/{ => 5.1.5}/lua-01-root-path.patch (100%)
> rename package/lua/{ => 5.1.5}/lua-02-shared-libs-for-lua.patch (100%)
> rename package/lua/{ => 5.1.5}/lua-11-linenoise.patch (100%)
> create mode 100644 package/lua/5.2.3/lua-01-root-path.patch
> create mode 100644 package/lua/5.2.3/lua-02-shared-libs-for-lua.patch
> create mode 100644 package/lua/5.2.3/lua-04-lua-pc.patch
Why is this patch numbered 04? What happened to 03?
> create mode 100644 package/lua/5.2.3/lua-11-linenoise.patch
Note: if you use the -C option for git-send-email (or
git-format-patch), it will detect these new files as copies of the 5.1.5
versions of the patches.
>
[snip]
> diff --git a/package/lua/Config.in b/package/lua/Config.in
> index b96ef0e..9b8b6f1 100644
> --- a/package/lua/Config.in
> +++ b/package/lua/Config.in
> @@ -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
>
> diff --git a/package/lua/lua.mk b/package/lua/lua.mk
> index a88a11e..97e5ea8 100644
> --- a/package/lua/lua.mk
> +++ b/package/lua/lua.mk
> @@ -4,7 +4,12 @@
> #
> ################################################################################
>
> +LUA_ABIVER = $(call qstrip,$(BR2_PACKAGE_LUA_VERSION))
In patch 3/3, you use this variable for other packages as well, even
though the lua package isn't used at all. So to me it makes more sense to
call it LUAINTERPRETER_ABIVER (and move it to luainterpreter.mk).
> +ifeq ($(LUA_ABIVER),5.1)
> LUA_VERSION = 5.1.5
> +else
> +LUA_VERSION = 5.2.3
> +endif
> LUA_SITE = http://www.lua.org/ftp
> LUA_INSTALL_STAGING = YES
> LUA_LICENSE = MIT
> @@ -13,6 +18,14 @@ LUA_LICENSE_FILES = COPYRIGHT
> LUA_CFLAGS = -Wall -fPIC
> LUA_MYLIBS += -ldl
>
> +ifneq ($(BR2_LARGEFILE),y)
> +LUA_CFLAGS += -D_FILE_OFFSET_BITS=32
> +endif
Isn't this change independent of the version bump?
> +
> +ifeq ($(LUA_ABIVER),5.2)
> +LUA_CFLAGS += -DLUA_COMPAT_ALL
> +endif
> +
> ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y)
> LUA_DEPENDENCIES = readline ncurses
> LUA_MYLIBS += -lreadline -lhistory -lncurses
> @@ -30,7 +43,7 @@ endif
> # We never want to have host-readline and host-ncurses as dependencies
> # of host-lua.
> HOST_LUA_DEPENDENCIES =
> -HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX
> +HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX -DLUA_COMPAT_ALL
> HOST_LUA_MYLIBS = -ldl
>
> define LUA_BUILD_CMDS
> @@ -70,7 +83,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/$(LUA_ABIVER)
> + mkdir -p $(TARGET_DIR)/usr/share/lua/$(LUA_ABIVER)
> endef
>
> define HOST_LUA_INSTALL_CMDS
> diff --git a/package/luainterpreter/Config.in b/package/luainterpreter/Config.in
> index 1562145..3bc257e 100644
> --- a/package/luainterpreter/Config.in
> +++ b/package/luainterpreter/Config.in
> @@ -4,3 +4,13 @@ config BR2_PACKAGE_HAS_LUA_INTERPRETER
> config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER
> string
> depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
> +
> +config BR2_PACKAGE_LUA_VERSION
> + string
> + default "5.1" if BR2_PACKAGE_LUA_5_1 || BR2_PACKAGE_LUAJIT
> + default "5.2" if BR2_PACKAGE_LUA_5_2
Since this symbol is defined here, I think it should be called
BR2_PACKAGE_LUAINTERPRETER_VERSION. And actually, to be consistent with
the name used in the .mk file, I'd call it BR2_PACKAGE_LUAINTERPRETER_ABI.
Also, I think there should be a BR2_PACKAGE_LUAINTERPRETER_ABI_5_1 and
_5_2 boolean symbol. This will allow the symbol to be selected from the
implementing package itself, which makes it easier to add new lua
interpreters in BR2_EXTERNAL. Also, it makes it easier to depend on the
ABI version.
> +
> +config BR2_PACKAGE_LUA_VERSION_NUM
> + int
> + default 501 if BR2_PACKAGE_LUA_5_1 || BR2_PACKAGE_LUAJIT
> + default 502 if BR2_PACKAGE_LUA_5_2
This symbol doesn't seem to be used anywhere.
Regards,
Arnout
>
--
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
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/3] lua: choice between 5.1.x & 5.2.x
2014-01-14 17:46 ` Arnout Vandecappelle
@ 2014-01-15 19:40 ` François Perrad
0 siblings, 0 replies; 9+ messages in thread
From: François Perrad @ 2014-01-15 19:40 UTC (permalink / raw)
To: buildroot
2014/1/14 Arnout Vandecappelle <arnout@mind.be>:
> On 14/01/14 14:14, Francois Perrad wrote:
>>
>>
>> Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
>> ---
>> 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 +++++++
>> package/lua/5.2.3/lua-02-shared-libs-for-lua.patch | 49
>> ++++++++++++++++++++
>> package/lua/5.2.3/lua-04-lua-pc.patch | 40
>> ++++++++++++++++
>> package/lua/5.2.3/lua-11-linenoise.patch | 26 +++++++++++
>> package/lua/Config.in | 14 ++++++
>> package/lua/lua.mk | 18 ++++++-
>> package/luainterpreter/Config.in | 10 ++++
>> 10 files changed, 172 insertions(+), 2 deletions(-)
>> rename package/lua/{ => 5.1.5}/lua-01-root-path.patch (100%)
>> rename package/lua/{ => 5.1.5}/lua-02-shared-libs-for-lua.patch (100%)
>> rename package/lua/{ => 5.1.5}/lua-11-linenoise.patch (100%)
>> create mode 100644 package/lua/5.2.3/lua-01-root-path.patch
>> create mode 100644 package/lua/5.2.3/lua-02-shared-libs-for-lua.patch
>> create mode 100644 package/lua/5.2.3/lua-04-lua-pc.patch
>
>
> Why is this patch numbered 04? What happened to 03?
I skip 03 because a patch numbered 03 was recently removed.
see http://git.buildroot.net/buildroot/commit/package/lua?id=4444a76f2bdb12fa27638b9f0eac99018cb8b130
>
>> create mode 100644 package/lua/5.2.3/lua-11-linenoise.patch
>
>
> Note: if you use the -C option for git-send-email (or git-format-patch), it
> will detect these new files as copies of the 5.1.5 versions of the patches.
>
>>
> [snip]
>
>> diff --git a/package/lua/Config.in b/package/lua/Config.in
>> index b96ef0e..9b8b6f1 100644
>> --- a/package/lua/Config.in
>> +++ b/package/lua/Config.in
>> @@ -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
>>
>> diff --git a/package/lua/lua.mk b/package/lua/lua.mk
>> index a88a11e..97e5ea8 100644
>> --- a/package/lua/lua.mk
>> +++ b/package/lua/lua.mk
>> @@ -4,7 +4,12 @@
>> #
>>
>> ################################################################################
>>
>> +LUA_ABIVER = $(call qstrip,$(BR2_PACKAGE_LUA_VERSION))
>
>
> In patch 3/3, you use this variable for other packages as well, even though
> the lua package isn't used at all. So to me it makes more sense to call it
> LUAINTERPRETER_ABIVER (and move it to luainterpreter.mk).
>
Ok.
>
>> +ifeq ($(LUA_ABIVER),5.1)
>> LUA_VERSION = 5.1.5
>> +else
>> +LUA_VERSION = 5.2.3
>> +endif
>> LUA_SITE = http://www.lua.org/ftp
>> LUA_INSTALL_STAGING = YES
>> LUA_LICENSE = MIT
>> @@ -13,6 +18,14 @@ LUA_LICENSE_FILES = COPYRIGHT
>> LUA_CFLAGS = -Wall -fPIC
>> LUA_MYLIBS += -ldl
>>
>> +ifneq ($(BR2_LARGEFILE),y)
>> +LUA_CFLAGS += -D_FILE_OFFSET_BITS=32
>> +endif
>
>
> Isn't this change independent of the version bump?
>
>
>> +
>> +ifeq ($(LUA_ABIVER),5.2)
>> +LUA_CFLAGS += -DLUA_COMPAT_ALL
>> +endif
>> +
>> ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y)
>> LUA_DEPENDENCIES = readline ncurses
>> LUA_MYLIBS += -lreadline -lhistory -lncurses
>> @@ -30,7 +43,7 @@ endif
>> # We never want to have host-readline and host-ncurses as dependencies
>> # of host-lua.
>> HOST_LUA_DEPENDENCIES =
>> -HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX
>> +HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX
>> -DLUA_COMPAT_ALL
>> HOST_LUA_MYLIBS = -ldl
>>
>> define LUA_BUILD_CMDS
>> @@ -70,7 +83,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/$(LUA_ABIVER)
>> + mkdir -p $(TARGET_DIR)/usr/share/lua/$(LUA_ABIVER)
>> endef
>>
>> define HOST_LUA_INSTALL_CMDS
>> diff --git a/package/luainterpreter/Config.in
>> b/package/luainterpreter/Config.in
>> index 1562145..3bc257e 100644
>> --- a/package/luainterpreter/Config.in
>> +++ b/package/luainterpreter/Config.in
>> @@ -4,3 +4,13 @@ config BR2_PACKAGE_HAS_LUA_INTERPRETER
>> config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER
>> string
>> depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
>> +
>> +config BR2_PACKAGE_LUA_VERSION
>> + string
>> + default "5.1" if BR2_PACKAGE_LUA_5_1 || BR2_PACKAGE_LUAJIT
>> + default "5.2" if BR2_PACKAGE_LUA_5_2
>
>
> Since this symbol is defined here, I think it should be called
> BR2_PACKAGE_LUAINTERPRETER_VERSION. And actually, to be consistent with the
> name used in the .mk file, I'd call it BR2_PACKAGE_LUAINTERPRETER_ABI.
Ok.
>
> Also, I think there should be a BR2_PACKAGE_LUAINTERPRETER_ABI_5_1 and _5_2
> boolean symbol. This will allow the symbol to be selected from the
> implementing package itself, which makes it easier to add new lua
> interpreters in BR2_EXTERNAL. Also, it makes it easier to depend on the ABI
> version.
>
>
>> +
>> +config BR2_PACKAGE_LUA_VERSION_NUM
>> + int
>> + default 501 if BR2_PACKAGE_LUA_5_1 || BR2_PACKAGE_LUAJIT
>> + default 502 if BR2_PACKAGE_LUA_5_2
>
>
> This symbol doesn't seem to be used anywhere.
>
Right. The last reference to LUA_VERSION_NUM was removed with
http://git.buildroot.net/buildroot/commit/package/luaexpat?id=5886f8c339fb0c37de0ba3e991471800906e310e
Fran?ois
>
> Regards,
> Arnout
>
>>
>
>
> --
> 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
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 3/3] lua-modules: choice between Lua 5.1.x & Lua 5.2.x
2014-01-14 17:36 ` Arnout Vandecappelle
@ 2014-01-15 19:42 ` François Perrad
0 siblings, 0 replies; 9+ messages in thread
From: François Perrad @ 2014-01-15 19:42 UTC (permalink / raw)
To: buildroot
2014/1/14 Arnout Vandecappelle <arnout@mind.be>:
> On 14/01/14 14:14, Francois Perrad wrote:
>>
>> Signed-off-by: Francois Perrad<francois.perrad@gadz.org>
>> ---
>> 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 ++++
>
>
> I wonder if this patch shouldn't be squashed with the first one - I guess
> without this patch, all these packages are broken when 5.2 is selected.
>
>
>> 11 files changed, 28 insertions(+), 7 deletions(-)
>>
>> diff --git a/package/lbase64/Config.in b/package/lbase64/Config.in
>> index ca9dd5d..9cc2e2b 100644
>> --- a/package/lbase64/Config.in
>> +++ b/package/lbase64/Config.in
>> @@ -1,7 +1,11 @@
>> config BR2_PACKAGE_LBASE64
>> bool "lbase64"
>> depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
>> + depends on !BR2_PACKAGE_LUA_5_2
>
>
> I think this should be "depends on BR2_PACKAGE_LUA_5_1", because this
> package most likely still won't work when a Lua 5.3 is added in the future.
> But of course, to make that possible you need a
> BR2_PACKAGE_LUAINTERPRETER_ABI_5_1 symbol.
>
>
>> help
>> A base64 library for Lua
>>
>> http://luaforge.net/projects/lbase64/
>> +
>> +comment "lbase64 only with Lua 5.1"
>> + depends on BR2_PACKAGE_LUA_5_2
>
>
> To make it consistent with the toolchain comments, I'd write:
>
> comment "lbase64 needs a Lua 5.1 interpreter"
Ok.
Fran?ois
>
>
> Regards,
> Arnout
>
> [snip]
> --
> 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
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2014-01-15 19:42 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-14 13:14 [Buildroot] [PATCH 0/3] choice between Lua 5.1.x & 5.2.x Francois Perrad
2014-01-14 13:14 ` [Buildroot] [PATCH 1/3] lua: choice between " Francois Perrad
2014-01-14 17:46 ` Arnout Vandecappelle
2014-01-15 19:40 ` François Perrad
2014-01-14 13:14 ` [Buildroot] [PATCH 2/3] lua: add official patches Francois Perrad
2014-01-14 17:27 ` Arnout Vandecappelle
2014-01-14 13:14 ` [Buildroot] [PATCH 3/3] lua-modules: choice between Lua 5.1.x & Lua 5.2.x Francois Perrad
2014-01-14 17:36 ` Arnout Vandecappelle
2014-01-15 19:42 ` François Perrad
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox