Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 01/10] luainterpreter: create virtual package
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 02/10] luajit: allow to build Lua extensions without lua Yann E. MORIN
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

This patch introduces the luainterpreter virtual package, which
is provided either by 'lua' or by 'lua-jit'.

Packages that require a Lua interpreter can then depend on
BR2_PACKAGE_LUAINTERPRETER (in their Config.in) and luainterpreter
(in their .mk).

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
[yann.morin.1998 at free.fr: switch to package-defined providers,
                          apply Thomas' comments]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/Config.in                                |  3 ++-
 package/lbase64/Config.in                        |  1 +
 package/lbase64/lbase64.mk                       |  2 +-
 package/lua-ev/Config.in                         |  1 +
 package/lua-ev/lua-ev.mk                         |  2 +-
 package/lua-msgpack-native/Config.in             |  1 +
 package/lua-msgpack-native/lua-msgpack-native.mk |  2 +-
 package/lua/Config.in                            |  4 ++++
 package/luacjson/Config.in                       |  1 +
 package/luacjson/luacjson.mk                     |  2 +-
 package/luaexpat/Config.in                       |  1 +
 package/luaexpat/luaexpat.mk                     |  2 +-
 package/luafilesystem/Config.in                  |  1 +
 package/luafilesystem/luafilesystem.mk           |  2 +-
 package/luainterpreter/Config.in                 |  6 ++++++
 package/luainterpreter/luainterpreter.mk         | 10 ++++++++++
 package/luajit/Config.in                         |  8 ++++++++
 package/luaposix/Config.in                       |  1 +
 package/luaposix/luaposix.mk                     |  2 +-
 package/luasec/Config.in                         |  1 +
 package/luasec/luasec.mk                         |  2 +-
 package/luasocket/Config.in                      |  1 +
 package/luasocket/luasocket.mk                   |  2 +-
 package/luasql/Config.in                         |  1 +
 package/luasql/luasql.mk                         |  2 +-
 package/rings/Config.in                          |  1 +
 package/rings/rings.mk                           |  2 +-
 27 files changed, 52 insertions(+), 12 deletions(-)
 create mode 100644 package/luainterpreter/Config.in
 create mode 100644 package/luainterpreter/luainterpreter.mk

diff --git a/package/Config.in b/package/Config.in
index 3685807..29368ba 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -350,8 +350,9 @@ source "package/haserl/Config.in"
 source "package/jamvm/Config.in"
 source "package/jimtcl/Config.in"
 source "package/lua/Config.in"
+source "package/luainterpreter/Config.in"
 source "package/luajit/Config.in"
-if BR2_PACKAGE_LUA || BR2_PACKAGE_LUAJIT
+if BR2_PACKAGE_HAS_LUA_INTERPRETER
 menu "Lua libraries/modules"
 source "package/cgilua/Config.in"
 source "package/copas/Config.in"
diff --git a/package/lbase64/Config.in b/package/lbase64/Config.in
index bd8503a..ca9dd5d 100644
--- a/package/lbase64/Config.in
+++ b/package/lbase64/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LBASE64
 	bool "lbase64"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  A base64 library for Lua
 
diff --git a/package/lbase64/lbase64.mk b/package/lbase64/lbase64.mk
index 8e360c8..605dcf7 100644
--- a/package/lbase64/lbase64.mk
+++ b/package/lbase64/lbase64.mk
@@ -9,7 +9,7 @@ LBASE64_SITE = http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/5.1
 LBASE64_SOURCE = lbase64.tar.gz
 LBASE64_LICENSE = Public domain
 LBASE64_LICENSE_FILES = README
-LBASE64_DEPENDENCIES = lua
+LBASE64_DEPENDENCIES = luainterpreter
 
 define LBASE64_BUILD_CMDS
        $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \
diff --git a/package/lua-ev/Config.in b/package/lua-ev/Config.in
index 4f704ad..28da114 100644
--- a/package/lua-ev/Config.in
+++ b/package/lua-ev/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LUA_EV
 	bool "lua-ev"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	select BR2_PACKAGE_LIBEV
 	depends on !(BR2_avr32 || BR2_bfin) # libev
 	help
diff --git a/package/lua-ev/lua-ev.mk b/package/lua-ev/lua-ev.mk
index 173cf0b..298bcf2 100644
--- a/package/lua-ev/lua-ev.mk
+++ b/package/lua-ev/lua-ev.mk
@@ -6,7 +6,7 @@
 
 LUA_EV_VERSION = 458165bdfe0c6eadc788813925f11a0e6a823845
 LUA_EV_SITE = $(call github,brimworks,lua-ev,$(LUA_EV_VERSION))
-LUA_EV_DEPENDENCIES = lua libev
+LUA_EV_DEPENDENCIES = luainterpreter libev
 LUA_EV_LICENSE = MIT
 LUA_EV_LICENSE_FILES = README
 LUA_EV_CONF_OPT = -DINSTALL_CMOD="/usr/lib/lua"
diff --git a/package/lua-msgpack-native/Config.in b/package/lua-msgpack-native/Config.in
index 8894ee5..1014298 100644
--- a/package/lua-msgpack-native/Config.in
+++ b/package/lua-msgpack-native/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LUA_MSGPACK_NATIVE
 	bool "lua-msgpack-native"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  This is a native, C language implementation of msgpack
 	  (http://msgpack.org) library/protocol for Lua language
diff --git a/package/lua-msgpack-native/lua-msgpack-native.mk b/package/lua-msgpack-native/lua-msgpack-native.mk
index 3718405..438dff3 100644
--- a/package/lua-msgpack-native/lua-msgpack-native.mk
+++ b/package/lua-msgpack-native/lua-msgpack-native.mk
@@ -6,7 +6,7 @@
 
 LUA_MSGPACK_NATIVE_VERSION = 41cce91ab6b54e4426c6d626a0ac41a02ec2096d
 LUA_MSGPACK_NATIVE_SITE = http://github.com/kengonakajima/lua-msgpack-native/tarball/$(LUA_MSGPACK_NATIVE_VERSION)
-LUA_MSGPACK_NATIVE_DEPENDENCIES = lua
+LUA_MSGPACK_NATIVE_DEPENDENCIES = luainterpreter
 LUA_MSGPACK_NATIVE_LICENSE = Apache-2.0
 LUA_MSGPACK_NATIVE_LICENSE_FILES = LICENSE.txt
 
diff --git a/package/lua/Config.in b/package/lua/Config.in
index 8c05d08..b96ef0e 100644
--- a/package/lua/Config.in
+++ b/package/lua/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LUA
 	bool "lua"
+	select BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  Lua is a powerful, fast, light-weight, embeddable scripting language.
 
@@ -7,6 +8,9 @@ config BR2_PACKAGE_LUA
 
 if BR2_PACKAGE_LUA
 
+config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER
+	default "lua"
+
 choice
 	prompt "Lua Interpreter command-line editing"
 	default BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE
diff --git a/package/luacjson/Config.in b/package/luacjson/Config.in
index 8a5624f..d3665c0 100644
--- a/package/luacjson/Config.in
+++ b/package/luacjson/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LUACJSON
 	bool "luacjson"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  The Lua CJSON module provides JSON support for Lua. It features:
 	  - Fast, standards compliant encoding/parsing routines
diff --git a/package/luacjson/luacjson.mk b/package/luacjson/luacjson.mk
index 1ebb588..fcb8a9a 100644
--- a/package/luacjson/luacjson.mk
+++ b/package/luacjson/luacjson.mk
@@ -7,7 +7,7 @@
 LUACJSON_VERSION       = 2.1.0
 LUACJSON_SOURCE        = lua-cjson-$(LUACJSON_VERSION).tar.gz
 LUACJSON_SITE          = http://www.kyne.com.au/~mark/software/download
-LUACJSON_DEPENDENCIES  = lua
+LUACJSON_DEPENDENCIES  = luainterpreter
 LUACJSON_LICENSE       = MIT
 LUACJSON_LICENSE_FILES = LICENSE
 
diff --git a/package/luaexpat/Config.in b/package/luaexpat/Config.in
index 186c5c9..f8db318 100644
--- a/package/luaexpat/Config.in
+++ b/package/luaexpat/Config.in
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LUAEXPAT
 	bool "luaexpat"
 	select BR2_PACKAGE_EXPAT
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  LuaExpat is a SAX XML parser based on the Expat library.
 
diff --git a/package/luaexpat/luaexpat.mk b/package/luaexpat/luaexpat.mk
index 0d73d28..65d4355 100644
--- a/package/luaexpat/luaexpat.mk
+++ b/package/luaexpat/luaexpat.mk
@@ -6,7 +6,7 @@
 
 LUAEXPAT_VERSION      = 1.2.0
 LUAEXPAT_SITE         = http://matthewwild.co.uk/projects/luaexpat
-LUAEXPAT_DEPENDENCIES = lua expat
+LUAEXPAT_DEPENDENCIES = luainterpreter expat
 LUAEXPAT_LICENSE      = MIT
 
 
diff --git a/package/luafilesystem/Config.in b/package/luafilesystem/Config.in
index 7c130f8..489ebf3 100644
--- a/package/luafilesystem/Config.in
+++ b/package/luafilesystem/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LUAFILESYSTEM
 	bool "luafilesystem"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  LuaFileSystem offers a portable way to access
 	  the underlying directory structure and file attributes.
diff --git a/package/luafilesystem/luafilesystem.mk b/package/luafilesystem/luafilesystem.mk
index c75d7a7..c928c6e 100644
--- a/package/luafilesystem/luafilesystem.mk
+++ b/package/luafilesystem/luafilesystem.mk
@@ -6,7 +6,7 @@
 
 LUAFILESYSTEM_VERSION = 1.6.2
 LUAFILESYSTEM_SITE = http://github.com/downloads/keplerproject/luafilesystem
-LUAFILESYSTEM_DEPENDENCIES = lua
+LUAFILESYSTEM_DEPENDENCIES = luainterpreter
 LUAFILESYSTEM_LICENSE = MIT
 
 ifeq ($(BR2_LARGEFILE),y)
diff --git a/package/luainterpreter/Config.in b/package/luainterpreter/Config.in
new file mode 100644
index 0000000..1562145
--- /dev/null
+++ b/package/luainterpreter/Config.in
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_HAS_LUA_INTERPRETER
+	bool
+
+config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER
+	string
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
diff --git a/package/luainterpreter/luainterpreter.mk b/package/luainterpreter/luainterpreter.mk
new file mode 100644
index 0000000..04d63d4
--- /dev/null
+++ b/package/luainterpreter/luainterpreter.mk
@@ -0,0 +1,10 @@
+#############################################################
+#
+# luainterpreter
+#
+#############################################################
+
+LUAINTERPRETER_SOURCE =
+LUAINTERPRETER_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LUA_INTERPRETER))
+
+$(eval $(generic-package))
diff --git a/package/luajit/Config.in b/package/luajit/Config.in
index 23b2650..e0bfbf5 100644
--- a/package/luajit/Config.in
+++ b/package/luajit/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LUAJIT
 	bool "luajit"
+	select BR2_PACKAGE_HAS_LUA_INTERPRETER
 	# Luajit is only available for some target architectures, and
 	# has some complexity wrt 32/64. See luajit.mk for details.
 	depends on BR2_i386 || (BR2_x86_64 && BR2_HOSTARCH='x86_64') || BR2_powerpc || BR2_arm || BR2_armeb
@@ -10,3 +11,10 @@ config BR2_PACKAGE_LUAJIT
 	  deployed as a drop-in replacement.
 
 	  http://luajit.org/
+
+if BR2_PACKAGE_LUAJIT
+
+config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER
+	default "luajit"
+
+endif
diff --git a/package/luaposix/Config.in b/package/luaposix/Config.in
index 922fd9e..74eedb6 100644
--- a/package/luaposix/Config.in
+++ b/package/luaposix/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LUAPOSIX
 	bool "luaposix"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	select BR2_PACKAGE_LUABITOP if BR2_PACKAGE_LUA
 	# LuaBitOp is already included in LuaJIT
 	help
diff --git a/package/luaposix/luaposix.mk b/package/luaposix/luaposix.mk
index cbcdf32..b398c8c 100644
--- a/package/luaposix/luaposix.mk
+++ b/package/luaposix/luaposix.mk
@@ -9,7 +9,7 @@ LUAPOSIX_SITE = https://github.com/luaposix/luaposix/archive
 LUAPOSIX_SOURCE = release-v$(LUAPOSIX_VERSION).tar.gz
 LUAPOSIX_LICENSE = MIT
 LUAPOSIX_LICENSE_FILES = COPYING
-LUAPOSIX_DEPENDENCIES = lua host-lua
+LUAPOSIX_DEPENDENCIES = luainterpreter host-lua
 LUAPOSIX_CONF_OPT = --libdir="/usr/lib/lua" --datarootdir="/usr/share/lua"
 
 ifeq ($(BR2_PACKAGE_NCURSES),y)
diff --git a/package/luasec/Config.in b/package/luasec/Config.in
index 2d303c1..ed55df7 100644
--- a/package/luasec/Config.in
+++ b/package/luasec/Config.in
@@ -2,6 +2,7 @@ config BR2_PACKAGE_LUASEC
 	bool "luasec"
 	select BR2_PACKAGE_OPENSSL
 	select BR2_PACKAGE_LUASOCKET
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  LuaSec is a binding for OpenSSL library to provide TLS/SSL
 	  communication.
diff --git a/package/luasec/luasec.mk b/package/luasec/luasec.mk
index 9a99034..d89f61d 100644
--- a/package/luasec/luasec.mk
+++ b/package/luasec/luasec.mk
@@ -8,7 +8,7 @@ LUASEC_VERSION = 0.4.1
 LUASEC_SITE = http://www.inf.puc-rio.br/~brunoos/luasec/download/
 LUASEC_LICENSE = MIT
 LUASEC_LICENSE_FILES = LICENSE
-LUASEC_DEPENDENCIES = lua openssl
+LUASEC_DEPENDENCIES = luainterpreter openssl
 
 define LUASEC_BUILD_CMDS
 	$(MAKE) -C $(@D) CC="$(TARGET_CC)" LD="$(TARGET_CC)" \
diff --git a/package/luasocket/Config.in b/package/luasocket/Config.in
index 4526303..619d649 100644
--- a/package/luasocket/Config.in
+++ b/package/luasocket/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LUASOCKET
 	bool "luasocket"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  LuaSocket is the most comprehensive networking support library
 	  for the Lua language.
diff --git a/package/luasocket/luasocket.mk b/package/luasocket/luasocket.mk
index 4b01a3e..6a2d4c8 100644
--- a/package/luasocket/luasocket.mk
+++ b/package/luasocket/luasocket.mk
@@ -6,7 +6,7 @@
 
 LUASOCKET_VERSION = 2.0.2
 LUASOCKET_SITE = http://luaforge.net/frs/download.php/2664
-LUASOCKET_DEPENDENCIES = lua
+LUASOCKET_DEPENDENCIES = luainterpreter
 LUASOCKET_LICENSE = MIT
 LUASOCKET_LICENSE_FILES = LICENSE
 
diff --git a/package/luasql/Config.in b/package/luasql/Config.in
index 4dd011a..96e04fb 100644
--- a/package/luasql/Config.in
+++ b/package/luasql/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LUASQL
 	bool "luasql"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  LuaSQL is a simple interface from Lua to a DBMS.
 
diff --git a/package/luasql/luasql.mk b/package/luasql/luasql.mk
index 44ad90d..62d0cf8 100644
--- a/package/luasql/luasql.mk
+++ b/package/luasql/luasql.mk
@@ -8,7 +8,7 @@ LUASQL_VERSION = v2.3.0
 LUASQL_SITE = $(call github,keplerproject,luasql,$(LUASQL_VERSION))
 LUASQL_LICENSE = MIT
 LUASQL_LICENSE_FILES = README
-LUASQL_DEPENDENCIES = lua
+LUASQL_DEPENDENCIES = luainterpreter
 
 LUASQL_MAKE_FLAGS = \
 	CC="$(TARGET_CC)" \
diff --git a/package/rings/Config.in b/package/rings/Config.in
index d1f1efe..b1d41f3 100644
--- a/package/rings/Config.in
+++ b/package/rings/Config.in
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_RINGS
 	bool "rings"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  Provides a way to create new Lua states from within Lua.
 
diff --git a/package/rings/rings.mk b/package/rings/rings.mk
index a483b62..47d25b6 100644
--- a/package/rings/rings.mk
+++ b/package/rings/rings.mk
@@ -6,7 +6,7 @@
 
 RINGS_VERSION = 1.2.3
 RINGS_SITE = http://github.com/downloads/keplerproject/rings
-RINGS_DEPENDENCIES = lua
+RINGS_DEPENDENCIES = luainterpreter
 RINGS_LICENSE = MIT
 
 define RINGS_BUILD_CMDS
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 02/10] luajit: allow to build Lua extensions without lua
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 01/10] luainterpreter: create virtual package Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 03/10] lua: remove a too invasive patch Yann E. MORIN
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
---
 package/luajit/luajit-05-install-inc.patch | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)
 create mode 100644 package/luajit/luajit-05-install-inc.patch

diff --git a/package/luajit/luajit-05-install-inc.patch b/package/luajit/luajit-05-install-inc.patch
new file mode 100644
index 0000000..1fd11b1
--- /dev/null
+++ b/package/luajit/luajit-05-install-inc.patch
@@ -0,0 +1,17 @@
+Install includes like lua's ones
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -31,7 +31,7 @@ DPREFIX= $(DESTDIR)$(PREFIX)
+ INSTALL_BIN=   $(DPREFIX)/bin
+ INSTALL_LIB=   $(DPREFIX)/lib
+ INSTALL_SHARE= $(DPREFIX)/share
+-INSTALL_INC=   $(DPREFIX)/include/luajit-$(MAJVER).$(MINVER)
++INSTALL_INC=   $(DPREFIX)/include
+ 
+ INSTALL_LJLIBD= $(INSTALL_SHARE)/luajit-$(VERSION)
+ INSTALL_JITLIB= $(INSTALL_LJLIBD)/jit
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 03/10] lua: remove a too invasive patch
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 01/10] luainterpreter: create virtual package Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 02/10] luajit: allow to build Lua extensions without lua Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  2013-12-25 16:38   ` Thomas Petazzoni
  2013-12-22 20:42 ` [Buildroot] [PATCH 04/10] lua*: restore version in module paths Yann E. MORIN
                   ` (6 subsequent siblings)
  9 siblings, 1 reply; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

the static version of luac is enough

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
 package/lua/lua-03-shared-libs-for-luac.patch | 97 ---------------------------
 1 file changed, 97 deletions(-)
 delete mode 100644 package/lua/lua-03-shared-libs-for-luac.patch

diff --git a/package/lua/lua-03-shared-libs-for-luac.patch b/package/lua/lua-03-shared-libs-for-luac.patch
deleted file mode 100644
index 33f9183..0000000
--- a/package/lua/lua-03-shared-libs-for-luac.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-Compile the luac binary with the shared library.
-Many internal functions (LUAI_FUNC) must be exported (LUA_API).
-
-Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
-
-Index: b/src/ldo.h
-===================================================================
---- a/src/ldo.h
-+++ b/src/ldo.h
-@@ -46,7 +46,7 @@
- LUAI_FUNC int luaD_poscall (lua_State *L, StkId firstResult);
- LUAI_FUNC void luaD_reallocCI (lua_State *L, int newsize);
- LUAI_FUNC void luaD_reallocstack (lua_State *L, int newsize);
--LUAI_FUNC void luaD_growstack (lua_State *L, int n);
-+LUA_API void luaD_growstack (lua_State *L, int n);
- 
- LUAI_FUNC void luaD_throw (lua_State *L, int errcode);
- LUAI_FUNC int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud);
-Index: b/src/lfunc.h
-===================================================================
---- a/src/lfunc.h
-+++ b/src/lfunc.h
-@@ -18,7 +18,7 @@
-                          cast(int, sizeof(TValue *)*((n)-1)))
- 
- 
--LUAI_FUNC Proto *luaF_newproto (lua_State *L);
-+LUA_API Proto *luaF_newproto (lua_State *L);
- LUAI_FUNC Closure *luaF_newCclosure (lua_State *L, int nelems, Table *e);
- LUAI_FUNC Closure *luaF_newLclosure (lua_State *L, int nelems, Table *e);
- LUAI_FUNC UpVal *luaF_newupval (lua_State *L);
-Index: b/src/lmem.h
-===================================================================
---- a/src/lmem.h
-+++ b/src/lmem.h
-@@ -38,9 +38,9 @@
-    ((v)=cast(t *, luaM_reallocv(L, v, oldn, n, sizeof(t))))
- 
- 
--LUAI_FUNC void *luaM_realloc_ (lua_State *L, void *block, size_t oldsize,
-+LUA_API void *luaM_realloc_ (lua_State *L, void *block, size_t oldsize,
-                                                           size_t size);
--LUAI_FUNC void *luaM_toobig (lua_State *L);
-+LUA_API void *luaM_toobig (lua_State *L);
- LUAI_FUNC void *luaM_growaux_ (lua_State *L, void *block, int *size,
-                                size_t size_elem, int limit,
-                                const char *errormsg);
-Index: b/src/lstring.h
-===================================================================
---- a/src/lstring.h
-+++ b/src/lstring.h
-@@ -25,7 +25,7 @@
- 
- LUAI_FUNC void luaS_resize (lua_State *L, int newsize);
- LUAI_FUNC Udata *luaS_newudata (lua_State *L, size_t s, Table *e);
--LUAI_FUNC TString *luaS_newlstr (lua_State *L, const char *str, size_t l);
-+LUA_API TString *luaS_newlstr (lua_State *L, const char *str, size_t l);
- 
- 
- #endif
-Index: b/src/lundump.h
-===================================================================
---- a/src/lundump.h
-+++ b/src/lundump.h
-@@ -17,7 +17,7 @@
- LUAI_FUNC void luaU_header (char* h);
- 
- /* dump one chunk; from ldump.c */
--LUAI_FUNC int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip);
-+LUA_API int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip);
- 
- #ifdef luac_c
- /* print one chunk; from print.c */
-Index: b/src/Makefile
-===================================================================
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -34,7 +34,7 @@
- LUA_O=	lua.o
- 
- LUAC_T=	luac
--LUAC_O=	luac.o print.o
-+LUAC_O=	luac.o print.o lopcodes.o
- 
- ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O)
- ALL_T= $(LUA_A) $(LUA_SO) $(LUA_T) $(LUAC_T)
-@@ -62,8 +62,8 @@
- $(LUA_T): $(LUA_O) $(LUA_SO)
- 	$(CC) -o $@ -L. -llua $(MYLDFLAGS) $(LUA_O) $(LIBS)
- 
--$(LUAC_T): $(LUAC_O) $(LUA_A)
--	$(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
-+$(LUAC_T): $(LUAC_O) $(LUA_SO)
-+	$(CC) -o $@ -L. $(MYLDFLAGS) $(LUAC_O) -llua $(LIBS)
- 
- clean:
- 	$(RM) $(ALL_T) $(ALL_O)
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 04/10] lua*: restore version in module paths
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
                   ` (2 preceding siblings ...)
  2013-12-22 20:42 ` [Buildroot] [PATCH 03/10] lua: remove a too invasive patch Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 05/10] luarocks: new package Yann E. MORIN
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

(like in upstream)

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
---
 package/cgilua/cgilua.mk                         |  2 +-
 package/copas/copas.mk                           |  2 +-
 package/coxpcall/coxpcall.mk                     |  2 +-
 package/lbase64/lbase64.mk                       |  2 +-
 package/lua-ev/lua-ev.mk                         |  2 +-
 package/lua-msgpack-native/lua-msgpack-native.mk |  2 +-
 package/lua/lua-01-root-path.patch               | 21 ++++-----------------
 package/luabitop/luabitop.mk                     |  5 ++---
 package/luacjson/luacjson.mk                     |  2 +-
 package/luaexpat/luaexpat.mk                     |  6 +++---
 package/luaexpatutils/luaexpatutils.mk           |  2 +-
 package/luafilesystem/luafilesystem.mk           |  2 +-
 package/luajit/luajit-01-root-path.patch         | 22 ----------------------
 package/luaposix/luaposix.mk                     |  2 +-
 package/luasec/luasec.mk                         |  6 ++----
 package/luasocket/luasocket.mk                   |  4 ++--
 package/luasql/luasql.mk                         |  5 ++---
 package/orbit/orbit.mk                           |  2 +-
 package/rings/rings.mk                           |  3 +--
 package/wsapi/wsapi.mk                           |  4 ++--
 package/xavante/xavante.mk                       |  4 +---
 21 files changed, 30 insertions(+), 72 deletions(-)
 delete mode 100644 package/luajit/luajit-01-root-path.patch

diff --git a/package/cgilua/cgilua.mk b/package/cgilua/cgilua.mk
index bf6ce4e..3dd2d77 100644
--- a/package/cgilua/cgilua.mk
+++ b/package/cgilua/cgilua.mk
@@ -9,7 +9,7 @@ CGILUA_SITE = http://github.com/downloads/keplerproject/cgilua
 CGILUA_LICENSE = MIT
 
 define CGILUA_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) install LUA_DIR="$(TARGET_DIR)/usr/share/lua"
+	$(MAKE) PREFIX="$(TARGET_DIR)/usr" -C $(@D) install
 endef
 
 $(eval $(generic-package))
diff --git a/package/copas/copas.mk b/package/copas/copas.mk
index 61eac58..b8cd425 100644
--- a/package/copas/copas.mk
+++ b/package/copas/copas.mk
@@ -10,7 +10,7 @@ COPAS_LICENSE = MIT
 
 define COPAS_INSTALL_TARGET_CMDS
 	$(INSTALL) -m 0644 -D $(@D)/src/copas/copas.lua \
-		$(TARGET_DIR)/usr/share/lua/copas.lua
+		$(TARGET_DIR)/usr/share/lua/5.1/copas.lua
 endef
 
 $(eval $(generic-package))
diff --git a/package/coxpcall/coxpcall.mk b/package/coxpcall/coxpcall.mk
index 0df7be6..de95461 100644
--- a/package/coxpcall/coxpcall.mk
+++ b/package/coxpcall/coxpcall.mk
@@ -10,7 +10,7 @@ COXPCALL_LICENSE = MIT
 
 define COXPCALL_INSTALL_TARGET_CMDS
 	$(INSTALL) -m 0644 -D $(@D)/src/coxpcall.lua \
-		$(TARGET_DIR)/usr/share/lua/coxpcall.lua
+		$(TARGET_DIR)/usr/share/lua/5.1/coxpcall.lua
 endef
 
 $(eval $(generic-package))
diff --git a/package/lbase64/lbase64.mk b/package/lbase64/lbase64.mk
index 605dcf7..cb8ef17 100644
--- a/package/lbase64/lbase64.mk
+++ b/package/lbase64/lbase64.mk
@@ -18,7 +18,7 @@ endef
 
 define LBASE64_INSTALL_TARGET_CMDS
        $(INSTALL) -D -m 0755 $(@D)/base64.so \
-		$(TARGET_DIR)/usr/lib/lua/base64.so
+		$(TARGET_DIR)/usr/lib/lua/5.1/base64.so
 endef
 
 $(eval $(generic-package))
diff --git a/package/lua-ev/lua-ev.mk b/package/lua-ev/lua-ev.mk
index 298bcf2..1236d77 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"
+LUA_EV_CONF_OPT = -DINSTALL_CMOD="/usr/lib/lua/5.1"
 
 $(eval $(cmake-package))
diff --git a/package/lua-msgpack-native/lua-msgpack-native.mk b/package/lua-msgpack-native/lua-msgpack-native.mk
index 438dff3..6fd6afb 100644
--- a/package/lua-msgpack-native/lua-msgpack-native.mk
+++ b/package/lua-msgpack-native/lua-msgpack-native.mk
@@ -15,7 +15,7 @@ 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/msgpack.so
+	$(INSTALL) -m 755 -D $(@D)/msgpack.so $(TARGET_DIR)/usr/lib/lua/5.1/msgpack.so
 endef
 
 $(eval $(generic-package))
diff --git a/package/lua/lua-01-root-path.patch b/package/lua/lua-01-root-path.patch
index f82c9c5..fd0da6e 100644
--- a/package/lua/lua-01-root-path.patch
+++ b/package/lua/lua-01-root-path.patch
@@ -1,5 +1,4 @@
 Adjust installation location to /usr.
-Remove version in module paths.
 
 Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
 
@@ -7,7 +6,7 @@ Index: b/etc/lua.pc
 ===================================================================
 --- a/etc/lua.pc
 +++ b/etc/lua.pc
-@@ -8,13 +8,13 @@
+@@ -8,7 +8,7 @@
  R= 5.1.5
  
  # grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/'
@@ -16,28 +15,16 @@ Index: b/etc/lua.pc
  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}
-+INSTALL_LMOD= ${prefix}/share/lua
-+INSTALL_CMOD= ${prefix}/lib/lua
- 
- # canonical vars
- exec_prefix=${prefix}
 Index: b/src/luaconf.h
 ===================================================================
 --- a/src/luaconf.h
 +++ b/src/luaconf.h
-@@ -94,9 +94,9 @@
+@@ -94,7 +94,7 @@
  	".\\?.dll;"  LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll"
  
  #else
 -#define LUA_ROOT	"/usr/local/"
--#define LUA_LDIR	LUA_ROOT "share/lua/5.1/"
--#define LUA_CDIR	LUA_ROOT "lib/lua/5.1/"
 +#define LUA_ROOT	"/usr/"
-+#define LUA_LDIR	LUA_ROOT "share/lua/"
-+#define LUA_CDIR	LUA_ROOT "lib/lua/"
+ #define LUA_LDIR	LUA_ROOT "share/lua/5.1/"
+ #define LUA_CDIR	LUA_ROOT "lib/lua/5.1/"
  #define LUA_PATH_DEFAULT  \
- 		"./?.lua;"  LUA_LDIR"?.lua;"  LUA_LDIR"?/init.lua;" \
- 		            LUA_CDIR"?.lua;"  LUA_CDIR"?/init.lua"
diff --git a/package/luabitop/luabitop.mk b/package/luabitop/luabitop.mk
index 7addbe6..083be35 100644
--- a/package/luabitop/luabitop.mk
+++ b/package/luabitop/luabitop.mk
@@ -12,12 +12,11 @@ LUABITOP_LICENSE_FILES = README
 LUABITOP_DEPENDENCIES = lua
 
 define LUABITOP_BUILD_CMDS
-	$(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS)
+	$(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) INCLUDES="-I$(STAGING_DIR)/usr/include"
 endef
 
 define LUABITOP_INSTALL_TARGET_CMDS
-	mkdir -p $(TARGET_DIR)/usr/lib/lua
-	$(INSTALL) -p $(@D)/bit.so $(TARGET_DIR)/usr/lib/lua
+	$(INSTALL) -p $(@D)/bit.so $(TARGET_DIR)/usr/lib/lua/5.1
 endef
 
 $(eval $(generic-package))
diff --git a/package/luacjson/luacjson.mk b/package/luacjson/luacjson.mk
index fcb8a9a..86be875 100644
--- a/package/luacjson/luacjson.mk
+++ b/package/luacjson/luacjson.mk
@@ -21,7 +21,7 @@ define LUACJSON_BUILD_CMDS
 endef
 
 define LUACJSON_INSTALL_TARGET_CMDS
-	install -D -m 0644 $(@D)/cjson.so $(TARGET_DIR)/usr/lib/lua/cjson.so
+	$(MAKE) DESTDIR="$(TARGET_DIR)" PREFIX="/usr" -C $(@D) install
 endef
 
 $(eval $(generic-package))
diff --git a/package/luaexpat/luaexpat.mk b/package/luaexpat/luaexpat.mk
index 65d4355..734478a 100644
--- a/package/luaexpat/luaexpat.mk
+++ b/package/luaexpat/luaexpat.mk
@@ -11,7 +11,7 @@ LUAEXPAT_LICENSE      = MIT
 
 
 LUAEXPAT_MFLAGS += LUA_VERSION_NUM=501
-LUAEXPAT_MFLAGS += LUA_INC=$(STAGING_DIR)/usr/include/lua
+LUAEXPAT_MFLAGS += LUA_INC=$(STAGING_DIR)/usr/include
 LUAEXPAT_MFLAGS += EXPAT_INC=$(STAGING_DIR)/usr/include
 LUAEXPAT_MFLAGS += LIBNAME=lxp.so
 LUAEXPAT_MFLAGS += LIB_OPTION="-shared -fPIC $(TARGET_CFLAGS)"
@@ -23,8 +23,8 @@ define LUAEXPAT_BUILD_CMDS
 endef
 
 define LUAEXPAT_INSTALL_TARGET_CMDS
-	$(INSTALL) -D $(@D)/src/lxp.so $(TARGET_DIR)/usr/lib/lua/lxp.so
-	$(INSTALL) -D -m 0644 $(@D)/src/lxp/lom.lua $(TARGET_DIR)/usr/share/lua/lxp/lom.lua
+	$(INSTALL) -D $(@D)/src/lxp.so $(TARGET_DIR)/usr/lib/lua/5.1/lxp.so
+	$(INSTALL) -D -m 0644 $(@D)/src/lxp/lom.lua $(TARGET_DIR)/usr/share/lua/5.1/lxp/lom.lua
 endef
 
 $(eval $(generic-package))
diff --git a/package/luaexpatutils/luaexpatutils.mk b/package/luaexpatutils/luaexpatutils.mk
index bdbbdd2..93cf621 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/lxp/doc.lua
+		$(TARGET_DIR)/usr/share/lua/5.1/lxp/doc.lua
 endef
 
 $(eval $(generic-package))
diff --git a/package/luafilesystem/luafilesystem.mk b/package/luafilesystem/luafilesystem.mk
index c928c6e..908d02e 100644
--- a/package/luafilesystem/luafilesystem.mk
+++ b/package/luafilesystem/luafilesystem.mk
@@ -18,7 +18,7 @@ define LUAFILESYSTEM_BUILD_CMDS
 endef
 
 define LUAFILESYSTEM_INSTALL_TARGET_CMDS
-	$(INSTALL) -D $(@D)/src/lfs.so $(TARGET_DIR)/usr/lib/lua/lfs.so
+	$(INSTALL) -D $(@D)/src/lfs.so $(TARGET_DIR)/usr/lib/lua/5.1/lfs.so
 endef
 
 $(eval $(generic-package))
diff --git a/package/luajit/luajit-01-root-path.patch b/package/luajit/luajit-01-root-path.patch
deleted file mode 100644
index cc2f04f..0000000
--- a/package/luajit/luajit-01-root-path.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Adjust installation location to /usr
-
-Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/src/luaconf.h
-===================================================================
---- a/src/luaconf.h
-+++ b/src/luaconf.h
-@@ -26,9 +26,9 @@
- ** Note to distribution maintainers: do NOT patch the following line!
- ** Please read ../doc/install.html#distro and pass PREFIX=/usr instead.
- */
--#define LUA_ROOT	"/usr/local/"
--#define LUA_LDIR	LUA_ROOT "share/lua/5.1/"
--#define LUA_CDIR	LUA_ROOT "lib/lua/5.1/"
-+#define LUA_ROOT	"/usr/"
-+#define LUA_LDIR	LUA_ROOT "share/lua/"
-+#define LUA_CDIR	LUA_ROOT "lib/lua/"
- #ifdef LUA_XROOT
- #define LUA_JDIR	LUA_XROOT "share/luajit-2.0.0/"
- #define LUA_XPATH \
diff --git a/package/luaposix/luaposix.mk b/package/luaposix/luaposix.mk
index b398c8c..b018995 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" --datarootdir="/usr/share/lua"
+LUAPOSIX_CONF_OPT = --libdir="/usr/lib/lua/5.1" --datarootdir="/usr/share/lua/5.1"
 
 ifeq ($(BR2_PACKAGE_NCURSES),y)
     LUAPOSIX_DEPENDENCIES += ncurses
diff --git a/package/luasec/luasec.mk b/package/luasec/luasec.mk
index d89f61d..a2a2cc2 100644
--- a/package/luasec/luasec.mk
+++ b/package/luasec/luasec.mk
@@ -17,11 +17,9 @@ define LUASEC_BUILD_CMDS
 endef
 
 define LUASEC_INSTALL_TARGET_CMDS
-	mkdir -p $(TARGET_DIR)/usr/share/lua
-	mkdir -p $(TARGET_DIR)/usr/lib/lua
 	$(MAKE) -C $(@D) \
-		LUAPATH="$(TARGET_DIR)/usr/share/lua" \
-		LUACPATH="$(TARGET_DIR)/usr/lib/lua" install
+		LUAPATH="$(TARGET_DIR)/usr/share/lua/5.1" \
+		LUACPATH="$(TARGET_DIR)/usr/lib/lua/5.1" install
 endef
 
 $(eval $(generic-package))
diff --git a/package/luasocket/luasocket.mk b/package/luasocket/luasocket.mk
index 6a2d4c8..a55fe17 100644
--- a/package/luasocket/luasocket.mk
+++ b/package/luasocket/luasocket.mk
@@ -18,8 +18,8 @@ endef
 
 define LUASOCKET_INSTALL_TARGET_CMDS
 	$(MAKE) -C $(@D) -f makefile \
-		INSTALL_TOP_SHARE="$(TARGET_DIR)/usr/share/lua" \
-		INSTALL_TOP_LIB="$(TARGET_DIR)/usr/lib/lua" install
+		INSTALL_TOP_SHARE="$(TARGET_DIR)/usr/share/lua/5.1" \
+		INSTALL_TOP_LIB="$(TARGET_DIR)/usr/lib/lua/5.1" install
 endef
 
 $(eval $(generic-package))
diff --git a/package/luasql/luasql.mk b/package/luasql/luasql.mk
index 62d0cf8..a1447cc 100644
--- a/package/luasql/luasql.mk
+++ b/package/luasql/luasql.mk
@@ -27,9 +27,8 @@ define LUASQL_BUILD_CMDS
 endef
 
 define LUASQL_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) $(LUASQL_MAKE_FLAGS) PREFIX=/usr \
-		LUA_DIR="$(TARGET_DIR)/usr/share/lua" \
-		LUA_LIBDIR="$(TARGET_DIR)/usr/lib/lua" install
+	$(MAKE) -C $(@D) $(LUASQL_MAKE_FLAGS) \
+		PREFIX="$(TARGET_DIR)/usr" install
 endef
 
 $(eval $(generic-package))
diff --git a/package/orbit/orbit.mk b/package/orbit/orbit.mk
index ba1142f..7115896 100644
--- a/package/orbit/orbit.mk
+++ b/package/orbit/orbit.mk
@@ -11,7 +11,7 @@ ORBIT_LICENSE_FILES = doc/us/license.md
 
 define ORBIT_INSTALL_TARGET_CMDS
 	$(MAKE) -C $(@D) \
-		LUA_DIR=$(TARGET_DIR)/usr/share/lua/ \
+		LUA_DIR=$(TARGET_DIR)/usr/share/lua/5.1/ \
 		BIN_DIR=$(TARGET_DIR)/usr/bin \
 		install
 endef
diff --git a/package/rings/rings.mk b/package/rings/rings.mk
index 47d25b6..fe1c2b2 100644
--- a/package/rings/rings.mk
+++ b/package/rings/rings.mk
@@ -14,8 +14,7 @@ define RINGS_BUILD_CMDS
 endef
 
 define RINGS_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) LUA_LIBDIR="$(TARGET_DIR)/usr/lib/lua" \
-		LUA_DIR="$(TARGET_DIR)/usr/share/lua" install
+	$(MAKE) -C $(@D) PREFIX="$(TARGET_DIR)/usr" install
 endef
 
 $(eval $(generic-package))
diff --git a/package/wsapi/wsapi.mk b/package/wsapi/wsapi.mk
index ba917a6..46baebf 100644
--- a/package/wsapi/wsapi.mk
+++ b/package/wsapi/wsapi.mk
@@ -9,9 +9,9 @@ WSAPI_SITE = http://github.com/downloads/keplerproject/wsapi
 WSAPI_LICENSE = MIT
 
 define WSAPI_INSTALL_TARGET_CMDS
-	mkdir -p $(TARGET_DIR)/usr/share/lua/wsapi
+	mkdir -p $(TARGET_DIR)/usr/share/lua/5.1/wsapi
 	$(INSTALL) -m 0644 -D $(@D)/src/wsapi/*.lua \
-		$(TARGET_DIR)/usr/share/lua/wsapi
+		$(TARGET_DIR)/usr/share/lua/5.1/wsapi
 endef
 
 $(eval $(generic-package))
diff --git a/package/xavante/xavante.mk b/package/xavante/xavante.mk
index 9381c02..7c01ee6 100644
--- a/package/xavante/xavante.mk
+++ b/package/xavante/xavante.mk
@@ -9,9 +9,7 @@ XAVANTE_SITE = http://github.com/downloads/keplerproject/xavante
 XAVANTE_LICENSE = MIT
 
 define XAVANTE_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) PREFIX=/usr \
-		LUA_DIR="$(TARGET_DIR)/usr/share/lua" \
-		LUA_LIBDIR="$(TARGET_DIR)/usr/lib/lua" install
+	$(MAKE) -C $(@D) PREFIX="$(TARGET_DIR)/usr" install
 endef
 
 $(eval $(generic-package))
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 05/10] luarocks: new package
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
                   ` (3 preceding siblings ...)
  2013-12-22 20:42 ` [Buildroot] [PATCH 04/10] lua*: restore version in module paths Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 06/10] luarocks: new infrastructure Yann E. MORIN
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
[yann.morin.1998 at free.fr: apply Thomas' suggestions]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/luarocks/luarocks-0001-build-minimal.patch | 17 +++++++++
 package/luarocks/luarocks-0002-unpack.patch        | 24 +++++++++++++
 package/luarocks/luarocks.mk                       | 40 ++++++++++++++++++++++
 3 files changed, 81 insertions(+)
 create mode 100644 package/luarocks/luarocks-0001-build-minimal.patch
 create mode 100644 package/luarocks/luarocks-0002-unpack.patch
 create mode 100644 package/luarocks/luarocks.mk

diff --git a/package/luarocks/luarocks-0001-build-minimal.patch b/package/luarocks/luarocks-0001-build-minimal.patch
new file mode 100644
index 0000000..3a4794e
--- /dev/null
+++ b/package/luarocks/luarocks-0001-build-minimal.patch
@@ -0,0 +1,17 @@
+hack for buildroot which needs independant steps : download, unpack, build
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/src/luarocks/build.lua
+===================================================================
+--- a/src/luarocks/build.lua
++++ b/src/luarocks/build.lua
+@@ -362,6 +362,8 @@
+ 
+    if flags["pack-binary-rock"] then
+       return pack.pack_binary_rock(name, version, do_build, name, version, deps.get_deps_mode(flags))
++   elseif flags["minimal"] then
++      return build_rockspec(name, false, true, "none")
+    else
+       local ok, err = fs.check_command_permissions(flags)
+       if not ok then return nil, err end
diff --git a/package/luarocks/luarocks-0002-unpack.patch b/package/luarocks/luarocks-0002-unpack.patch
new file mode 100644
index 0000000..0f036ee
--- /dev/null
+++ b/package/luarocks/luarocks-0002-unpack.patch
@@ -0,0 +1,24 @@
+allows unpack in existing directory
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/src/luarocks/unpack.lua
+===================================================================
+--- a/src/luarocks/unpack.lua
++++ b/src/luarocks/unpack.lua
+@@ -101,11 +101,10 @@
+       return nil, file.." does not seem to be a valid filename."
+    end
+    
+-   if (fs.exists(dir_name)) then
+-      return nil, "Directory "..dir_name.." already exists."
++   if not fs.exists(dir_name) then
++      local ok, err = fs.make_dir(dir_name)
++      if not ok then return nil, err end
+    end
+-   local ok, err = fs.make_dir(dir_name)
+-   if not ok then return nil, err end
+    local rollback = util.schedule_function(fs.delete, fs.absolute_name(dir_name))
+ 
+    local rockspec, err
+
diff --git a/package/luarocks/luarocks.mk b/package/luarocks/luarocks.mk
new file mode 100644
index 0000000..1b55dc2
--- /dev/null
+++ b/package/luarocks/luarocks.mk
@@ -0,0 +1,40 @@
+################################################################################
+#
+# luarocks
+#
+################################################################################
+
+LUAROCKS_VERSION = 2.1.1
+LUAROCKS_SITE = http://luarocks.org/releases/
+LUAROCKS_LICENSE = MIT
+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
+
+define HOST_LUAROCKS_CONFIGURE_CMDS
+	cd $(@D) && ./configure \
+		--prefix=$(TARGET_DIR)/usr \
+		--sysconfdir=$(LUAROCKS_CONFIG_DIR) \
+		--with-lua=$(HOST_DIR)/usr \
+		--with-lua-include=$(STAGING_DIR)/usr/include \
+		--with-lua-lib=$(STAGING_DIR)/usr/lib
+endef
+
+define HOST_LUAROCKS_INSTALL_CMDS
+	$(MAKE1) -C $(@D) install \
+		PREFIX=$(HOST_DIR)/usr
+	echo "-- BR cross-compilation"                          >> $(LUAROCKS_CONFIG_FILE)
+	echo "variables = {"                                    >> $(LUAROCKS_CONFIG_FILE)
+	echo "   CC = [[$(TARGET_CC)]],"                        >> $(LUAROCKS_CONFIG_FILE)
+	echo "   LD = [[$(TARGET_CC)]],"                        >> $(LUAROCKS_CONFIG_FILE)
+	echo "   CFLAGS = [[$(TARGET_CFLAGS)]],"                >> $(LUAROCKS_CONFIG_FILE)
+	echo "   LIBFLAG = [[-shared $(TARGET_LDFLAGS)]],"      >> $(LUAROCKS_CONFIG_FILE)
+	echo "}"                                                >> $(LUAROCKS_CONFIG_FILE)
+	echo "external_deps_dirs = { [[$(STAGING_DIR)/usr]] }"  >> $(LUAROCKS_CONFIG_FILE)
+	echo "gcc_rpath = false"                                >> $(LUAROCKS_CONFIG_FILE)
+endef
+
+$(eval $(host-generic-package))
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 06/10] luarocks: new infrastructure
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
                   ` (4 preceding siblings ...)
  2013-12-22 20:42 ` [Buildroot] [PATCH 05/10] luarocks: new package Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 07/10] lua-cjson: restore official name Yann E. MORIN
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
[yann.morin.1998 at free.fr: apply Thomas' comments]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 Config.in                    |  8 +++++
 Makefile                     |  1 +
 package/Makefile.in          |  1 +
 package/luarocks/luarocks.mk |  2 ++
 package/pkg-luarocks.mk      | 81 ++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 93 insertions(+)
 create mode 100644 package/pkg-luarocks.mk

diff --git a/Config.in b/Config.in
index 2b401cb..2d8e6ba 100644
--- a/Config.in
+++ b/Config.in
@@ -217,6 +217,14 @@ config BR2_DEBIAN_MIRROR
 
 endif
 
+config BR2_LUAROCKS_MIRROR
+	string "LuaRocks mirror"
+	default "http://luarocks.org/repositories/rocks"
+	help
+	  LuaRocks repository.
+
+	  See http://luarocks.org
+
 endmenu
 
 config BR2_JLEVEL
diff --git a/Makefile b/Makefile
index 925c1d2..c2a20ff 100644
--- a/Makefile
+++ b/Makefile
@@ -509,6 +509,7 @@ endif
 ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY),y)
 	find $(TARGET_DIR)/usr/lib/ -name '*.py' -print0 | xargs -0 rm -f
 endif
+	rm -rf $(TARGET_DIR)/usr/lib/luarocks
 	$(STRIP_FIND_CMD) | xargs $(STRIPCMD) 2>/dev/null || true
 	if test -d $(TARGET_DIR)/lib/modules; then \
 		find $(TARGET_DIR)/lib/modules -type f -name '*.ko' | \
diff --git a/package/Makefile.in b/package/Makefile.in
index f5d6289..2e433fd 100644
--- a/package/Makefile.in
+++ b/package/Makefile.in
@@ -371,5 +371,6 @@ include package/pkg-utils.mk
 include package/pkg-download.mk
 include package/pkg-autotools.mk
 include package/pkg-cmake.mk
+include package/pkg-luarocks.mk
 include package/pkg-python.mk
 include package/pkg-generic.mk
diff --git a/package/luarocks/luarocks.mk b/package/luarocks/luarocks.mk
index 1b55dc2..0642dcb 100644
--- a/package/luarocks/luarocks.mk
+++ b/package/luarocks/luarocks.mk
@@ -38,3 +38,5 @@ define HOST_LUAROCKS_INSTALL_CMDS
 endef
 
 $(eval $(host-generic-package))
+
+LUAROCKS_RUN = $(HOST_DIR)/usr/bin/luarocks
diff --git a/package/pkg-luarocks.mk b/package/pkg-luarocks.mk
new file mode 100644
index 0000000..664f661
--- /dev/null
+++ b/package/pkg-luarocks.mk
@@ -0,0 +1,81 @@
+################################################################################
+# LuaRocks package infrastructure
+# see http://luarocks.org/
+#
+# This file implements an infrastructure that eases development of
+# package .mk files for LuaRocks packages.
+# LuaRocks supports various build.type : builtin, make, cmake.
+# This luarocks infrastructure supports only the builtin mode,
+# the make & cmake modes could be directly handled by generic & cmake infrastructure.
+#
+# See the Buildroot documentation for details on the usage of this
+# infrastructure
+#
+# In terms of implementation, this LuaRocks infrastructure requires
+# the .mk file to only specify metadata informations about the
+# package: name, version, etc.
+#
+################################################################################
+
+################################################################################
+# inner-luarocks-package -- defines how the configuration, compilation and
+# installation of a LuaRocks package should be done, implements a few hooks to
+# tune the build process and calls the generic package infrastructure to
+# generate the necessary make targets
+#
+#  argument 1 is the lowercase package name
+#  argument 2 is the uppercase package name, including an HOST_ prefix
+#             for host packages
+#  argument 3 is the uppercase package name, without the HOST_ prefix
+#             for host packages
+#  argument 4 is the package directory prefix
+#  argument 5 is the type (target or host)
+################################################################################
+
+define inner-luarocks-package
+
+$(2)_BUILD_OPT		?=
+$(2)_SUBDIR		?= $(1)-$(shell echo "$($(3)_VERSION)" | sed -e "s/-[0-9]$$//")
+$(2)_ROCKSPEC		?= $(1)-$($(3)_VERSION).rockspec
+$(2)_SOURCE		?= $(1)-$($(3)_VERSION).src.rock
+$(2)_SITE		?= $(call qstrip,$(BR2_LUAROCKS_MIRROR))
+
+# Since we do not support host-luarocks-package, we know this is
+# a target package, and can just add the required dependencies
+$(2)_DEPENDENCIES	+= host-luarocks luainterpreter
+
+# $(2)_DEPENDENCIES are handled for configure step (too late)
+# but host-luarocks is required to do the extract
+$(1)-extract: host-luarocks
+
+#
+# Extract step
+#
+ifndef $(2)_EXTRACT_CMDS
+define $(2)_EXTRACT_CMDS
+	cd $$($(2)_DIR)/.. && $(LUAROCKS_RUN) unpack $(DL_DIR)/$$($(2)_SOURCE)
+endef
+endif
+
+#
+# Build/install step.
+#
+ifndef $(2)_INSTALL_TARGET_CMDS
+define $(2)_INSTALL_TARGET_CMDS
+	(cd $$($(2)_SRCDIR); \
+	 $(LUAROCKS_RUN) build --minimal $$($(2)_ROCKSPEC) $$($(2)_BUILD_OPT))
+endef
+endif
+
+# Call the generic package infrastructure to generate the necessary
+# make targets
+$(call inner-generic-package,$(1),$(2),$(3),$(4),$(5))
+
+endef
+
+################################################################################
+# luarocks-package -- the target generator macro for LuaRocks packages
+################################################################################
+
+luarocks-package = $(call inner-luarocks-package,$(call pkgname),$(call UPPERCASE,$(call pkgname)),$(call UPPERCASE,$(call pkgname)),$(call pkgparentdir),target)
+# host-luarocks-package not supported
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [pull request v5] Pull request for branch yem/lua-infra
@ 2013-12-22 20:42 Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 01/10] luainterpreter: create virtual package Yann E. MORIN
                   ` (9 more replies)
  0 siblings, 10 replies; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: "Yann E. MORIN" <yann.morin.1998@free.fr>

Hello All!

This is a respin of the LuaRocks infrastrucutre by Francois Perrad,
rebased on-top of current master, and with some changes suggested by
Thomas, plus my own.

Francois, care to handle the remaining comments by Thomas, that I could
not address (since you are more qualified to reply than I am)?


Changes v4 -> v5:
  - apply some of Thomas' suggestions:
    http://lists.busybox.net/pipermail/buildroot/2013-December/085217.html
    and following messages
  - rebase on-top current master  (me)
  - change luainterpreter to a package-defined provider  (me)


Regards,
Yann E. MORIN.


The following changes since commit 6b5fd46de3bb4f646b32e560d491d3c84b353bc5:

  libpng: security bump to version 1.6.8 (2013-12-22 12:09:31 +0100)

are available in the git repository at:

  git://gitorious.org/buildroot/buildroot.git yem/lua-infra

for you to fetch changes up to 5b7cd02db21a11fd581e9c1032a091d2bf44b3df:

  manual: adding packages luarocks (2013-12-22 21:09:46 +0100)

----------------------------------------------------------------
Francois Perrad (10):
      luainterpreter: create virtual package
      luajit: allow to build Lua extensions without lua
      lua: remove a too invasive patch
      lua*: restore version in module paths
      luarocks: new package
      luarocks: new infrastructure
      lua-cjson: restore official name
      luasql-sqlite3: renamed like with LuaRocks
      lua*: refactor with luarocks infrastructure
      manual: adding packages luarocks

 Config.in                                          |  8 ++
 Config.in.legacy                                   | 14 ++++
 Makefile                                           |  1 +
 docs/manual/adding-packages-luarocks.txt           | 93 +++++++++++++++++++++
 docs/manual/adding-packages.txt                    |  2 +
 package/Config.in                                  |  7 +-
 package/Makefile.in                                |  1 +
 package/cgilua/cgilua.mk                           |  9 +-
 package/copas/copas.mk                             | 10 +--
 package/coxpcall/coxpcall.mk                       |  2 +-
 package/lbase64/Config.in                          |  1 +
 package/lbase64/lbase64.mk                         | 20 +----
 package/{luacjson => lua-cjson}/Config.in          |  5 +-
 package/lua-cjson/lua-cjson.mk                     | 12 +++
 package/lua-ev/Config.in                           |  1 +
 package/lua-ev/lua-ev.mk                           |  4 +-
 package/lua-msgpack-native/Config.in               |  1 +
 package/lua-msgpack-native/lua-msgpack-native.mk   |  4 +-
 package/lua/Config.in                              |  4 +
 package/lua/lua-01-root-path.patch                 | 21 +----
 package/lua/lua-03-shared-libs-for-luac.patch      | 97 ----------------------
 package/luabitop/luabitop.mk                       | 20 ++---
 package/luacjson/luacjson.mk                       | 27 ------
 package/luaexpat/Config.in                         |  1 +
 package/luaexpat/luaexpat.mk                       | 27 +-----
 package/luaexpatutils/luaexpatutils.mk             |  2 +-
 package/luafilesystem/Config.in                    |  1 +
 .../luafilesystem-without_large_file.patch         |  8 +-
 package/luafilesystem/luafilesystem.mk             | 18 +---
 package/luainterpreter/Config.in                   |  6 ++
 package/luainterpreter/luainterpreter.mk           | 10 +++
 package/luajit/Config.in                           |  8 ++
 package/luajit/luajit-01-root-path.patch           | 22 -----
 package/luajit/luajit-05-install-inc.patch         | 17 ++++
 package/luaposix/Config.in                         |  1 +
 package/luaposix/luaposix.mk                       |  4 +-
 package/luarocks/luarocks-0001-build-minimal.patch | 17 ++++
 package/luarocks/luarocks-0002-unpack.patch        | 24 ++++++
 package/luarocks/luarocks.mk                       | 42 ++++++++++
 package/luasec/Config.in                           |  1 +
 package/luasec/luasec.mk                           | 25 ++----
 package/luasocket/Config.in                        |  1 +
 package/luasocket/luasocket.mk                     |  6 +-
 package/luasql-sqlite3/Config.in                   |  8 ++
 package/luasql-sqlite3/luasql-sqlite3.mk           | 13 +++
 package/luasql/Config.in                           | 21 -----
 package/luasql/luasql.mk                           | 35 --------
 package/orbit/orbit-01-fix-installation.patch      | 26 ------
 package/orbit/orbit.mk                             | 16 ++--
 package/pkg-luarocks.mk                            | 81 ++++++++++++++++++
 package/rings/Config.in                            |  1 +
 package/rings/rings.mk                             | 15 +---
 package/wsapi/wsapi.mk                             | 11 +--
 package/xavante/xavante.mk                         | 11 +--
 54 files changed, 432 insertions(+), 411 deletions(-)
 create mode 100644 docs/manual/adding-packages-luarocks.txt
 rename package/{luacjson => lua-cjson}/Config.in (82%)
 create mode 100644 package/lua-cjson/lua-cjson.mk
 delete mode 100644 package/lua/lua-03-shared-libs-for-luac.patch
 delete mode 100644 package/luacjson/luacjson.mk
 create mode 100644 package/luainterpreter/Config.in
 create mode 100644 package/luainterpreter/luainterpreter.mk
 delete mode 100644 package/luajit/luajit-01-root-path.patch
 create mode 100644 package/luajit/luajit-05-install-inc.patch
 create mode 100644 package/luarocks/luarocks-0001-build-minimal.patch
 create mode 100644 package/luarocks/luarocks-0002-unpack.patch
 create mode 100644 package/luarocks/luarocks.mk
 create mode 100644 package/luasql-sqlite3/Config.in
 create mode 100644 package/luasql-sqlite3/luasql-sqlite3.mk
 delete mode 100644 package/luasql/Config.in
 delete mode 100644 package/luasql/luasql.mk
 delete mode 100644 package/orbit/orbit-01-fix-installation.patch
 create mode 100644 package/pkg-luarocks.mk

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 07/10] lua-cjson: restore official name
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
                   ` (5 preceding siblings ...)
  2013-12-22 20:42 ` [Buildroot] [PATCH 06/10] luarocks: new infrastructure Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 08/10] luasql-sqlite3: renamed like with LuaRocks Yann E. MORIN
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

(need by LuaRocks)

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 Config.in.legacy                                        |  7 +++++++
 package/Config.in                                       |  2 +-
 package/{luacjson => lua-cjson}/Config.in               |  4 ++--
 .../{luacjson/luacjson.mk => lua-cjson/lua-cjson.mk}    | 17 ++++++++---------
 4 files changed, 18 insertions(+), 12 deletions(-)
 rename package/{luacjson => lua-cjson}/Config.in (90%)
 rename package/{luacjson/luacjson.mk => lua-cjson/lua-cjson.mk} (56%)

diff --git a/Config.in.legacy b/Config.in.legacy
index c75e25e..ce05177 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -118,6 +118,13 @@ config BR2_PACKAGE_NETKITTELNET
 	  been deprecated since 2012.11. 'busybox' provides a telnet
 	  client and should be used instead.
 
+config BR2_PACKAGE_LUACJSON
+	bool "luacjson has been replaced by lua-cjson"
+	select BR2_PACKAGE_LUA_CJSON
+	select BR2_LEGACY
+	help
+	  The option has been renamed BR2_PACKAGE_LUA_CJSON.
+
 ###############################################################################
 comment "Legacy options removed in 2013.11"
 
diff --git a/package/Config.in b/package/Config.in
index 29368ba..b9b03d9 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -358,10 +358,10 @@ source "package/cgilua/Config.in"
 source "package/copas/Config.in"
 source "package/coxpcall/Config.in"
 source "package/lbase64/Config.in"
+source "package/lua-cjson/Config.in"
 source "package/lua-ev/Config.in"
 source "package/lua-msgpack-native/Config.in"
 source "package/luabitop/Config.in"
-source "package/luacjson/Config.in"
 source "package/luacrypto/Config.in"
 source "package/luaexpat/Config.in"
 source "package/luaexpatutils/Config.in"
diff --git a/package/luacjson/Config.in b/package/lua-cjson/Config.in
similarity index 90%
rename from package/luacjson/Config.in
rename to package/lua-cjson/Config.in
index d3665c0..8129fab 100644
--- a/package/luacjson/Config.in
+++ b/package/lua-cjson/Config.in
@@ -1,5 +1,5 @@
-config BR2_PACKAGE_LUACJSON
-	bool "luacjson"
+config BR2_PACKAGE_LUA_CJSON
+	bool "lua-cjson"
 	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
 	help
 	  The Lua CJSON module provides JSON support for Lua. It features:
diff --git a/package/luacjson/luacjson.mk b/package/lua-cjson/lua-cjson.mk
similarity index 56%
rename from package/luacjson/luacjson.mk
rename to package/lua-cjson/lua-cjson.mk
index 86be875..92af23f 100644
--- a/package/luacjson/luacjson.mk
+++ b/package/lua-cjson/lua-cjson.mk
@@ -1,17 +1,16 @@
 ################################################################################
 #
-# luacjson
+# lua-cjson
 #
 ################################################################################
 
-LUACJSON_VERSION       = 2.1.0
-LUACJSON_SOURCE        = lua-cjson-$(LUACJSON_VERSION).tar.gz
-LUACJSON_SITE          = http://www.kyne.com.au/~mark/software/download
-LUACJSON_DEPENDENCIES  = luainterpreter
-LUACJSON_LICENSE       = MIT
-LUACJSON_LICENSE_FILES = LICENSE
+LUA_CJSON_VERSION       = 2.1.0
+LUA_CJSON_SITE          = http://www.kyne.com.au/~mark/software/download
+LUA_CJSON_DEPENDENCIES  = luainterpreter
+LUA_CJSON_LICENSE       = MIT
+LUA_CJSON_LICENSE_FILES = LICENSE
 
-define LUACJSON_BUILD_CMDS
+define LUA_CJSON_BUILD_CMDS
 	$(MAKE) -C $(@D) \
 		CFLAGS="$(TARGET_CFLAGS)"   \
 		LDFLAGS="$(TARGET_LDFLAGS)" \
@@ -20,7 +19,7 @@ define LUACJSON_BUILD_CMDS
 		PREFIX=$(STAGING_DIR)/usr
 endef
 
-define LUACJSON_INSTALL_TARGET_CMDS
+define LUA_CJSON_INSTALL_TARGET_CMDS
 	$(MAKE) DESTDIR="$(TARGET_DIR)" PREFIX="/usr" -C $(@D) install
 endef
 
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 08/10] luasql-sqlite3: renamed like with LuaRocks
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
                   ` (6 preceding siblings ...)
  2013-12-22 20:42 ` [Buildroot] [PATCH 07/10] lua-cjson: restore official name Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  2014-01-05 15:36   ` Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 09/10] lua*: refactor with luarocks infrastructure Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 10/10] manual: adding packages luarocks Yann E. MORIN
  9 siblings, 1 reply; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
---
 Config.in.legacy                         |  7 +++++++
 package/Config.in                        |  2 +-
 package/luasql-sqlite3/Config.in         |  8 ++++++++
 package/luasql-sqlite3/luasql-sqlite3.mk | 33 +++++++++++++++++++++++++++++++
 package/luasql/Config.in                 | 22 ---------------------
 package/luasql/luasql.mk                 | 34 --------------------------------
 6 files changed, 49 insertions(+), 57 deletions(-)
 create mode 100644 package/luasql-sqlite3/Config.in
 create mode 100644 package/luasql-sqlite3/luasql-sqlite3.mk
 delete mode 100644 package/luasql/Config.in
 delete mode 100644 package/luasql/luasql.mk

diff --git a/Config.in.legacy b/Config.in.legacy
index ce05177..160e5f8 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -118,6 +118,13 @@ config BR2_PACKAGE_NETKITTELNET
 	  been deprecated since 2012.11. 'busybox' provides a telnet
 	  client and should be used instead.
 
+config BR2_PACKAGE_LUASQL
+	bool "luasql has been replaced by luasql-sqlite3"
+	select BR2_PACKAGE_LUASQL_SQLITE3
+	select BR2_LEGACY
+	help
+	  The option has been renamed BR2_PACKAGE_LUASQL_SQLITE3.
+
 config BR2_PACKAGE_LUACJSON
 	bool "luacjson has been replaced by lua-cjson"
 	select BR2_PACKAGE_LUA_CJSON
diff --git a/package/Config.in b/package/Config.in
index b9b03d9..b76bcf1 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -361,6 +361,7 @@ source "package/lbase64/Config.in"
 source "package/lua-cjson/Config.in"
 source "package/lua-ev/Config.in"
 source "package/lua-msgpack-native/Config.in"
+source "package/luasql-sqlite3/Config.in"
 source "package/luabitop/Config.in"
 source "package/luacrypto/Config.in"
 source "package/luaexpat/Config.in"
@@ -369,7 +370,6 @@ source "package/luafilesystem/Config.in"
 source "package/luaposix/Config.in"
 source "package/luasec/Config.in"
 source "package/luasocket/Config.in"
-source "package/luasql/Config.in"
 source "package/orbit/Config.in"
 source "package/rings/Config.in"
 source "package/wsapi/Config.in"
diff --git a/package/luasql-sqlite3/Config.in b/package/luasql-sqlite3/Config.in
new file mode 100644
index 0000000..3876f3d
--- /dev/null
+++ b/package/luasql-sqlite3/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_LUASQL_SQLITE3
+	bool "luasql-sqlite3"
+	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
+	help
+	  LuaSQL is a simple interface from Lua to a DBMS.
+
+	  http://www.keplerproject.org/luasql
+
diff --git a/package/luasql-sqlite3/luasql-sqlite3.mk b/package/luasql-sqlite3/luasql-sqlite3.mk
new file mode 100644
index 0000000..b114f02
--- /dev/null
+++ b/package/luasql-sqlite3/luasql-sqlite3.mk
@@ -0,0 +1,33 @@
+################################################################################
+#
+# luasql-sqlite3
+#
+################################################################################
+
+LUASQL_SQLITE3_VERSION = v2.3.0
+LUASQL_SQLITE3_SITE = https://github.com/keplerproject/luasql/tarball/$(LUASQL_SQLITE3_VERSION)
+LUASQL_SQLITE3_LICENSE = MIT
+LUASQL_SQLITE3_LICENSE_FILES = README
+LUASQL_SQLITE3_DEPENDENCIES = luainterpreter sqlite
+
+LUASQL_SQLITE3_MAKE_FLAGS = \
+	CC="$(TARGET_CC)" \
+	LD="$(TARGET_CC)" \
+	CFLAGS="$(TARGET_CFLAGS) -fPIC" \
+	T="sqlite3" \
+	DRIVER_LIBS="-L$(STAGING_DIR)/usr/lib -lsqlite3"
+
+define LUASQL_SQLITE3_BUILD_CMDS
+	$(MAKE) -C $(@D) $(LUASQL_SQLITE3_MAKE_FLAGS)
+endef
+
+define LUASQL_SQLITE3_INSTALL_TARGET_CMDS
+	$(MAKE) -C $(@D) $(LUASQL_SQLITE3_MAKE_FLAGS) \
+		PREFIX="$(TARGET_DIR)/usr" install
+endef
+
+define LUASQL_SQLITE3_UNINSTALL_TARGET_CMDS
+	rm -rf $(TARGET_DIR)/usr/lib/lua/5.1/luasql
+endef
+
+$(eval $(generic-package))
diff --git a/package/luasql/Config.in b/package/luasql/Config.in
deleted file mode 100644
index 96e04fb..0000000
--- a/package/luasql/Config.in
+++ /dev/null
@@ -1,22 +0,0 @@
-config BR2_PACKAGE_LUASQL
-	bool "luasql"
-	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER
-	help
-	  LuaSQL is a simple interface from Lua to a DBMS.
-
-	  http://www.keplerproject.org/luasql
-
-if BR2_PACKAGE_LUASQL
-choice
-	prompt "LuaSQL Driver"
-	help
-	  Select backend driver for LuaSQL.
-
-config BR2_PACKAGE_LUASQL_DRIVER_SQLITE3
-	bool "SQLite3"
-	select BR2_PACKAGE_SQLITE
-	help
-	  Select if you wish to use the SQLite3 LuaSQL driver.
-
-endchoice
-endif
diff --git a/package/luasql/luasql.mk b/package/luasql/luasql.mk
deleted file mode 100644
index a1447cc..0000000
--- a/package/luasql/luasql.mk
+++ /dev/null
@@ -1,34 +0,0 @@
-################################################################################
-#
-# luasql
-#
-################################################################################
-
-LUASQL_VERSION = v2.3.0
-LUASQL_SITE = $(call github,keplerproject,luasql,$(LUASQL_VERSION))
-LUASQL_LICENSE = MIT
-LUASQL_LICENSE_FILES = README
-LUASQL_DEPENDENCIES = luainterpreter
-
-LUASQL_MAKE_FLAGS = \
-	CC="$(TARGET_CC)" \
-	LD="$(TARGET_CC)" \
-	CFLAGS="$(TARGET_CFLAGS) -fPIC"
-
-ifeq ($(BR2_PACKAGE_LUASQL_DRIVER_SQLITE3),y)
-LUASQL_DEPENDENCIES += sqlite
-LUASQL_MAKE_FLAGS += \
-	T="sqlite3" \
-	DRIVER_LIBS="-L$(STAGING_DIR)/usr/lib -lsqlite3"
-endif
-
-define LUASQL_BUILD_CMDS
-	$(MAKE) -C $(@D) $(LUASQL_MAKE_FLAGS)
-endef
-
-define LUASQL_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) $(LUASQL_MAKE_FLAGS) \
-		PREFIX="$(TARGET_DIR)/usr" install
-endef
-
-$(eval $(generic-package))
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 09/10] lua*: refactor with luarocks infrastructure
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
                   ` (7 preceding siblings ...)
  2013-12-22 20:42 ` [Buildroot] [PATCH 08/10] luasql-sqlite3: renamed like with LuaRocks Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  2013-12-22 20:42 ` [Buildroot] [PATCH 10/10] manual: adding packages luarocks Yann E. MORIN
  9 siblings, 0 replies; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
---
 package/cgilua/cgilua.mk                           |  9 ++-----
 package/copas/copas.mk                             | 10 ++------
 package/lbase64/lbase64.mk                         | 20 +++------------
 package/lua-cjson/lua-cjson.mk                     | 24 ++++-------------
 package/luabitop/luabitop.mk                       | 19 ++++----------
 package/luaexpat/luaexpat.mk                       | 27 +++----------------
 .../luafilesystem-without_large_file.patch         |  8 +++---
 package/luafilesystem/luafilesystem.mk             | 18 ++-----------
 package/luasec/luasec.mk                           | 23 +++++------------
 package/luasql-sqlite3/luasql-sqlite3.mk           | 30 ++++------------------
 package/orbit/orbit-01-fix-installation.patch      | 26 -------------------
 package/orbit/orbit.mk                             | 16 ++++--------
 package/rings/rings.mk                             | 14 ++--------
 package/wsapi/wsapi.mk                             | 11 ++------
 package/xavante/xavante.mk                         |  9 ++-----
 15 files changed, 50 insertions(+), 214 deletions(-)
 delete mode 100644 package/orbit/orbit-01-fix-installation.patch

diff --git a/package/cgilua/cgilua.mk b/package/cgilua/cgilua.mk
index 3dd2d77..bdb1411 100644
--- a/package/cgilua/cgilua.mk
+++ b/package/cgilua/cgilua.mk
@@ -4,12 +4,7 @@
 #
 ################################################################################
 
-CGILUA_VERSION = 5.1.4
-CGILUA_SITE = http://github.com/downloads/keplerproject/cgilua
+CGILUA_VERSION = 5.1.4-1
 CGILUA_LICENSE = MIT
 
-define CGILUA_INSTALL_TARGET_CMDS
-	$(MAKE) PREFIX="$(TARGET_DIR)/usr" -C $(@D) install
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/copas/copas.mk b/package/copas/copas.mk
index b8cd425..3021139 100644
--- a/package/copas/copas.mk
+++ b/package/copas/copas.mk
@@ -4,13 +4,7 @@
 #
 ################################################################################
 
-COPAS_VERSION = 1.1.6
-COPAS_SITE = http://github.com/downloads/keplerproject/copas
+COPAS_VERSION = 1.1.6-1
 COPAS_LICENSE = MIT
 
-define COPAS_INSTALL_TARGET_CMDS
-	$(INSTALL) -m 0644 -D $(@D)/src/copas/copas.lua \
-		$(TARGET_DIR)/usr/share/lua/5.1/copas.lua
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/lbase64/lbase64.mk b/package/lbase64/lbase64.mk
index cb8ef17..4289f58 100644
--- a/package/lbase64/lbase64.mk
+++ b/package/lbase64/lbase64.mk
@@ -4,21 +4,9 @@
 #
 ################################################################################
 
-LBASE64_VERSION = 20100323
-LBASE64_SITE = http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/5.1
-LBASE64_SOURCE = lbase64.tar.gz
+LBASE64_VERSION = 20120820-1
+LBASE64_SUBDIR  = base64
 LBASE64_LICENSE = Public domain
-LBASE64_LICENSE_FILES = README
-LBASE64_DEPENDENCIES = luainterpreter
+LBASE64_LICENSE_FILES = $(LBASE64_SUBDIR)/README
 
-define LBASE64_BUILD_CMDS
-       $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \
-		CFLAGS="$(TARGET_CFLAGS) -fPIC" so
-endef
-
-define LBASE64_INSTALL_TARGET_CMDS
-       $(INSTALL) -D -m 0755 $(@D)/base64.so \
-		$(TARGET_DIR)/usr/lib/lua/5.1/base64.so
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/lua-cjson/lua-cjson.mk b/package/lua-cjson/lua-cjson.mk
index 92af23f..16cb974 100644
--- a/package/lua-cjson/lua-cjson.mk
+++ b/package/lua-cjson/lua-cjson.mk
@@ -4,23 +4,9 @@
 #
 ################################################################################
 
-LUA_CJSON_VERSION       = 2.1.0
-LUA_CJSON_SITE          = http://www.kyne.com.au/~mark/software/download
-LUA_CJSON_DEPENDENCIES  = luainterpreter
-LUA_CJSON_LICENSE       = MIT
-LUA_CJSON_LICENSE_FILES = LICENSE
+LUA_CJSON_VERSION_UPSTREAM = 2.1.0
+LUA_CJSON_VERSION = $(LUA_CJSON_VERSION_UPSTREAM)-1
+LUA_CJSON_LICENSE = MIT
+LUA_CJSON_LICENSE_FILES = lua-cjson-$(LUA_CJSON_VERSION_UPSTREAM)/LICENSE
 
-define LUA_CJSON_BUILD_CMDS
-	$(MAKE) -C $(@D) \
-		CFLAGS="$(TARGET_CFLAGS)"   \
-		LDFLAGS="$(TARGET_LDFLAGS)" \
-		CC="$(TARGET_CC)"           \
-		LD="$(TARGET_LD)"           \
-		PREFIX=$(STAGING_DIR)/usr
-endef
-
-define LUA_CJSON_INSTALL_TARGET_CMDS
-	$(MAKE) DESTDIR="$(TARGET_DIR)" PREFIX="/usr" -C $(@D) install
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/luabitop/luabitop.mk b/package/luabitop/luabitop.mk
index 083be35..4368c94 100644
--- a/package/luabitop/luabitop.mk
+++ b/package/luabitop/luabitop.mk
@@ -4,19 +4,10 @@
 #
 ################################################################################
 
-LUABITOP_VERSION = 1.0.2
-LUABITOP_SOURCE = LuaBitOp-$(LUABITOP_VERSION).tar.gz
-LUABITOP_SITE = http://bitop.luajit.org/download
+LUABITOP_VERSION_UPSTREAM = 1.0.2
+LUABITOP_VERSION = $(LUABITOP_VERSION_UPSTREAM)-1
+LUABITOP_SUBDIR  = LuaBitOp-$(LUABITOP_VERSION_UPSTREAM)
 LUABITOP_LICENSE = MIT
-LUABITOP_LICENSE_FILES = README
-LUABITOP_DEPENDENCIES = lua
+LUABITOP_LICENSE_FILES = $(LUABITOP_SUBDIR)/README
 
-define LUABITOP_BUILD_CMDS
-	$(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) INCLUDES="-I$(STAGING_DIR)/usr/include"
-endef
-
-define LUABITOP_INSTALL_TARGET_CMDS
-	$(INSTALL) -p $(@D)/bit.so $(TARGET_DIR)/usr/lib/lua/5.1
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/luaexpat/luaexpat.mk b/package/luaexpat/luaexpat.mk
index 734478a..d507c2a 100644
--- a/package/luaexpat/luaexpat.mk
+++ b/package/luaexpat/luaexpat.mk
@@ -4,27 +4,8 @@
 #
 ################################################################################
 
-LUAEXPAT_VERSION      = 1.2.0
-LUAEXPAT_SITE         = http://matthewwild.co.uk/projects/luaexpat
-LUAEXPAT_DEPENDENCIES = luainterpreter expat
-LUAEXPAT_LICENSE      = MIT
+LUAEXPAT_VERSION = 1.2.0-1
+LUAEXPAT_DEPENDENCIES = expat
+LUAEXPAT_LICENSE = MIT
 
-
-LUAEXPAT_MFLAGS += LUA_VERSION_NUM=501
-LUAEXPAT_MFLAGS += LUA_INC=$(STAGING_DIR)/usr/include
-LUAEXPAT_MFLAGS += EXPAT_INC=$(STAGING_DIR)/usr/include
-LUAEXPAT_MFLAGS += LIBNAME=lxp.so
-LUAEXPAT_MFLAGS += LIB_OPTION="-shared -fPIC $(TARGET_CFLAGS)"
-LUAEXPAT_MFLAGS += CC="$(TARGET_CC) -fPIC $(TARGET_CFLAGS)"
-
-
-define LUAEXPAT_BUILD_CMDS
-	$(MAKE) -C $(@D) $(LUAEXPAT_MFLAGS)
-endef
-
-define LUAEXPAT_INSTALL_TARGET_CMDS
-	$(INSTALL) -D $(@D)/src/lxp.so $(TARGET_DIR)/usr/lib/lua/5.1/lxp.so
-	$(INSTALL) -D -m 0644 $(@D)/src/lxp/lom.lua $(TARGET_DIR)/usr/share/lua/5.1/lxp/lom.lua
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/luafilesystem/luafilesystem-without_large_file.patch b/package/luafilesystem/luafilesystem-without_large_file.patch
index b1f41c0..5b24b99 100644
--- a/package/luafilesystem/luafilesystem-without_large_file.patch
+++ b/package/luafilesystem/luafilesystem-without_large_file.patch
@@ -1,7 +1,7 @@
-diff --git a/src/lfs.c b/src/lfs.c
-index 85f01e3..ed49f50 100644
---- a/src/lfs.c
-+++ b/src/lfs.c
+Index: b/luafilesystem-1.6.2/src/lfs.c
+===================================================================
+--- a/luafilesystem-1.6.2/src/lfs.c
++++ b/luafilesystem-1.6.2/src/lfs.c
 @@ -22,13 +22,13 @@
  
  #ifndef _WIN32
diff --git a/package/luafilesystem/luafilesystem.mk b/package/luafilesystem/luafilesystem.mk
index 908d02e..7943201 100644
--- a/package/luafilesystem/luafilesystem.mk
+++ b/package/luafilesystem/luafilesystem.mk
@@ -4,21 +4,7 @@
 #
 ################################################################################
 
-LUAFILESYSTEM_VERSION = 1.6.2
-LUAFILESYSTEM_SITE = http://github.com/downloads/keplerproject/luafilesystem
-LUAFILESYSTEM_DEPENDENCIES = luainterpreter
+LUAFILESYSTEM_VERSION = 1.6.2-1
 LUAFILESYSTEM_LICENSE = MIT
 
-ifeq ($(BR2_LARGEFILE),y)
-LFS_CFLAGS = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE
-endif
-
-define LUAFILESYSTEM_BUILD_CMDS
-	$(MAKE) -C $(@D) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS) $(LFS_CFLAGS) -fPIC"
-endef
-
-define LUAFILESYSTEM_INSTALL_TARGET_CMDS
-	$(INSTALL) -D $(@D)/src/lfs.so $(TARGET_DIR)/usr/lib/lua/5.1/lfs.so
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/luasec/luasec.mk b/package/luasec/luasec.mk
index a2a2cc2..354e805 100644
--- a/package/luasec/luasec.mk
+++ b/package/luasec/luasec.mk
@@ -4,22 +4,11 @@
 #
 ################################################################################
 
-LUASEC_VERSION = 0.4.1
-LUASEC_SITE = http://www.inf.puc-rio.br/~brunoos/luasec/download/
+LUASEC_VERSION_UPSTREAM = 0.4.1
+LUASEC_VERSION = $(LUASEC_VERSION_UPSTREAM)-2
+LUASEC_SUBDIR  = luasec-luasec-$(LUASEC_VERSION_UPSTREAM)
 LUASEC_LICENSE = MIT
-LUASEC_LICENSE_FILES = LICENSE
-LUASEC_DEPENDENCIES = luainterpreter openssl
+LUASEC_LICENSE_FILES = $(LUASEC_SUBDIR)/LICENSE
+LUASEC_DEPENDENCIES = openssl
 
-define LUASEC_BUILD_CMDS
-	$(MAKE) -C $(@D) CC="$(TARGET_CC)" LD="$(TARGET_CC)" \
-		CFLAGS="$(TARGET_CFLAGS) -fPIC" \
-		LDFLAGS="$(TARGET_LDFLAGS) -shared" linux
-endef
-
-define LUASEC_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) \
-		LUAPATH="$(TARGET_DIR)/usr/share/lua/5.1" \
-		LUACPATH="$(TARGET_DIR)/usr/lib/lua/5.1" install
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/luasql-sqlite3/luasql-sqlite3.mk b/package/luasql-sqlite3/luasql-sqlite3.mk
index b114f02..0e7ae6a 100644
--- a/package/luasql-sqlite3/luasql-sqlite3.mk
+++ b/package/luasql-sqlite3/luasql-sqlite3.mk
@@ -4,30 +4,10 @@
 #
 ################################################################################
 
-LUASQL_SQLITE3_VERSION = v2.3.0
-LUASQL_SQLITE3_SITE = https://github.com/keplerproject/luasql/tarball/$(LUASQL_SQLITE3_VERSION)
+LUASQL_SQLITE3_VERSION = 2.3.0-1
+LUASQL_SQLITE3_SUBDIR  = luasql
 LUASQL_SQLITE3_LICENSE = MIT
-LUASQL_SQLITE3_LICENSE_FILES = README
-LUASQL_SQLITE3_DEPENDENCIES = luainterpreter sqlite
+LUASQL_SQLITE3_LICENSE_FILES = $(LUASQL_SQLITE3_SUBDIR)/README
+LUASQL_SQLITE3_DEPENDENCIES = sqlite
 
-LUASQL_SQLITE3_MAKE_FLAGS = \
-	CC="$(TARGET_CC)" \
-	LD="$(TARGET_CC)" \
-	CFLAGS="$(TARGET_CFLAGS) -fPIC" \
-	T="sqlite3" \
-	DRIVER_LIBS="-L$(STAGING_DIR)/usr/lib -lsqlite3"
-
-define LUASQL_SQLITE3_BUILD_CMDS
-	$(MAKE) -C $(@D) $(LUASQL_SQLITE3_MAKE_FLAGS)
-endef
-
-define LUASQL_SQLITE3_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) $(LUASQL_SQLITE3_MAKE_FLAGS) \
-		PREFIX="$(TARGET_DIR)/usr" install
-endef
-
-define LUASQL_SQLITE3_UNINSTALL_TARGET_CMDS
-	rm -rf $(TARGET_DIR)/usr/lib/lua/5.1/luasql
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/orbit/orbit-01-fix-installation.patch b/package/orbit/orbit-01-fix-installation.patch
deleted file mode 100644
index ae50ad9..0000000
--- a/package/orbit/orbit-01-fix-installation.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Fix installation commands
-
-The installation commands did not match the location of the source
-files within the Orbit source tree.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -11,12 +11,9 @@
- 	mkdir -p $(LUA_DIR)
- 	cp src/orbit.lua $(LUA_DIR)
- 	mkdir -p $(LUA_DIR)/orbit
--	cp src/model.lua $(LUA_DIR)/orbit
--	cp src/cache.lua $(LUA_DIR)/orbit
--	cp src/pages.lua $(LUA_DIR)/orbit
--	cp src/ophandler.lua $(LUA_DIR)/orbit
-+	cp src/orbit/*.lua $(LUA_DIR)/orbit
- 	mkdir -p $(BIN_DIR)
--	cp src/orbit $(BIN_DIR)
-+	cp src/launchers/* $(BIN_DIR)
- 	if [ -f ./wsapi/Makefile ]; then \
- 	  cd wsapi && make install; \
- 	fi
diff --git a/package/orbit/orbit.mk b/package/orbit/orbit.mk
index 7115896..e5a8676 100644
--- a/package/orbit/orbit.mk
+++ b/package/orbit/orbit.mk
@@ -4,16 +4,10 @@
 #
 ################################################################################
 
-ORBIT_VERSION = 2.2.0
-ORBIT_SITE = http://github.com/downloads/keplerproject/orbit
+ORBIT_VERSION_UPSTREAM = 2.2.0
+ORBIT_VERSION = $(ORBIT_VERSION_UPSTREAM)-2
+ORBIT_SUBDIR  = orbit-$(ORBIT_VERSION_UPSTREAM)
 ORBIT_LICENSE = MIT
-ORBIT_LICENSE_FILES = doc/us/license.md
+ORBIT_LICENSE_FILES = $(ORBIT_SUBDIR)/doc/us/license.md
 
-define ORBIT_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) \
-		LUA_DIR=$(TARGET_DIR)/usr/share/lua/5.1/ \
-		BIN_DIR=$(TARGET_DIR)/usr/bin \
-		install
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/rings/rings.mk b/package/rings/rings.mk
index fe1c2b2..c23f879 100644
--- a/package/rings/rings.mk
+++ b/package/rings/rings.mk
@@ -4,17 +4,7 @@
 #
 ################################################################################
 
-RINGS_VERSION = 1.2.3
-RINGS_SITE = http://github.com/downloads/keplerproject/rings
-RINGS_DEPENDENCIES = luainterpreter
+RINGS_VERSION = 1.2.3-2
 RINGS_LICENSE = MIT
 
-define RINGS_BUILD_CMDS
-	$(MAKE) -C $(@D) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS) -fPIC"
-endef
-
-define RINGS_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) PREFIX="$(TARGET_DIR)/usr" install
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/wsapi/wsapi.mk b/package/wsapi/wsapi.mk
index 46baebf..f1ea9b5 100644
--- a/package/wsapi/wsapi.mk
+++ b/package/wsapi/wsapi.mk
@@ -4,14 +4,7 @@
 #
 ################################################################################
 
-WSAPI_VERSION = 1.5
-WSAPI_SITE = http://github.com/downloads/keplerproject/wsapi
+WSAPI_VERSION = 1.5-1
 WSAPI_LICENSE = MIT
 
-define WSAPI_INSTALL_TARGET_CMDS
-	mkdir -p $(TARGET_DIR)/usr/share/lua/5.1/wsapi
-	$(INSTALL) -m 0644 -D $(@D)/src/wsapi/*.lua \
-		$(TARGET_DIR)/usr/share/lua/5.1/wsapi
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
diff --git a/package/xavante/xavante.mk b/package/xavante/xavante.mk
index 7c01ee6..c8d4d93 100644
--- a/package/xavante/xavante.mk
+++ b/package/xavante/xavante.mk
@@ -4,12 +4,7 @@
 #
 ################################################################################
 
-XAVANTE_VERSION = 2.2.1
-XAVANTE_SITE = http://github.com/downloads/keplerproject/xavante
+XAVANTE_VERSION = 2.2.0-1
 XAVANTE_LICENSE = MIT
 
-define XAVANTE_INSTALL_TARGET_CMDS
-	$(MAKE) -C $(@D) PREFIX="$(TARGET_DIR)/usr" install
-endef
-
-$(eval $(generic-package))
+$(eval $(luarocks-package))
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 10/10] manual: adding packages luarocks
  2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
                   ` (8 preceding siblings ...)
  2013-12-22 20:42 ` [Buildroot] [PATCH 09/10] lua*: refactor with luarocks infrastructure Yann E. MORIN
@ 2013-12-22 20:42 ` Yann E. MORIN
  9 siblings, 0 replies; 13+ messages in thread
From: Yann E. MORIN @ 2013-12-22 20:42 UTC (permalink / raw)
  To: buildroot

From: Francois Perrad <fperrad@gmail.com>

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
[yann.morin.1998 at free.fr: some cleanups and rephrasing]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 docs/manual/adding-packages-luarocks.txt | 93 ++++++++++++++++++++++++++++++++
 docs/manual/adding-packages.txt          |  2 +
 2 files changed, 95 insertions(+)
 create mode 100644 docs/manual/adding-packages-luarocks.txt

diff --git a/docs/manual/adding-packages-luarocks.txt b/docs/manual/adding-packages-luarocks.txt
new file mode 100644
index 0000000..6e68852
--- /dev/null
+++ b/docs/manual/adding-packages-luarocks.txt
@@ -0,0 +1,93 @@
+// -*- mode:doc; -*-
+// vim: set syntax=asciidoc:
+
+Infrastructure for LuaRocks-based packages
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+[[luarocks-package-tutorial]]
+
++luarocks-package+ tutorial
+^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+First, let's see how to write a +.mk+ file for a LuaRocks-based package,
+with an example :
+
+------------------------
+01: ################################################################################
+02: #
+03: # luafoo
+04: #
+05: ################################################################################
+06:
+07: LUAFOO_VERSION = 1.0.2-1
+08: LUAFOO_DEPENDENCIES = foo
+09:
+10: LUAFOO_BUILD_OPT += FOO_INCDIR=$(STAGING_DIR)/usr/include
+11: LUAFOO_BUILD_OPT += FOO_LIBDIR=$(STAGING_DIR)/usr/lib
+12: LUAFOO_LICENSE = luaFoo license
+13: LUAFOO_LICENSE_FILES = COPYING
+14:
+15: $(eval $(luarocks-package))
+------------------------
+
+On line 7, we declare the version of the package (the same as in the rockspec,
+which is the concatenation of the upstream version and the rockspec revision,
+separated by a hyphen '-').
+
+On line 8, we declare our dependencies against native libraries, so that they
+are built before the build process of our package starts.
+
+On lines 10-11, we tell Buildroot to pass custom options to LuaRocks when it is
+building the package.
+
+On lines 12-13, we specify the licensing terms for the package.
+
+Finally, on line 15, we invoke the +luarocks-package+
+macro that generates all the Makefile rules that actually allows the
+package to be built.
+
+[[luarocks-package-reference]]
+
++luarocks-package+ reference
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+LuaRocks is a deployment and management system for Lua modules, and supports
+various +build.type+: +builtin+, +make+ and +cmake+. In the contetx of
+Buildroot, the +luarocks-package+ infrastructure only supports the +builtin+
+mode. LuaRocks packages that use the +make+ or +cmake+ build mechanisms
+should instead be packaged using the +generic-package+ and +cmake-package+
+infrastructures in Buildroot, respectively.
+
+The main macro of the LuaRocks package infrastructure is +luarocks-package+:
+like +generic-package+ it works by defining a number of variables providing
+meta informations about the package, and then calling +luarocks-package+. It
+is worth mentioning that building LuaRocks packages for the host is not
+supported, so the macro +host-luarocks-package+ is not implemented.
+
+Just like the generic infrastructure, the LuaRocks infrastructure works
+by defining a number of variables before calling the +luarocks-package+
+macro.
+
+First, all the package metadata information variables that exist in
+the generic infrastructure also exist in the LuaRocks infrastructure:
++LUAFOO_VERSION+, +LUAFOO_SOURCE+, +LUAFOO_SITE+,
++LUAFOO_DEPENDENCIES+, +LUAFOO_LICENSE+, +LUAFOO_LICENSE_FILES+.
+
+Two of them are populated by the LuaRocks infrastructure (for the
++download+ step). If your package is not hosted on the LuaRocks mirror
++$(BR2_LUAROCKS_MIRROR)+, you can override them:
+
+* +LUAFOO_SITE+, which defaults to +$(BR2_LUAROCKS_MIRROR)+
+
+* +LUAFOO_SOURCE+, which defaults to +luafoo-$(LUAFOO_VERSION).src.rock+
+
+A few additional variables, specific to the LuaRocks infrastructure, are
+also defined. They can be overridden in specific cases.
+
+* +LUAFOO_ROCKSPEC+, which defaults to +luafoo-$(LUAFOO_VERSION).rockspec+
+
+* +LUAFOO_SUBDIR+, which defaults to
+  +luafoo-$(LUAFOO_VERSION_WITHOUT_ROCKSPEC_REVISION)+
+
+* +LUAFOO_BUILD_OPT+ contains additional build options for the
+  +luarocks build+ call.
diff --git a/docs/manual/adding-packages.txt b/docs/manual/adding-packages.txt
index 01277d8..cc86529 100644
--- a/docs/manual/adding-packages.txt
+++ b/docs/manual/adding-packages.txt
@@ -20,6 +20,8 @@ include::adding-packages-cmake.txt[]
 
 include::adding-packages-python.txt[]
 
+include::adding-packages-luarocks.txt[]
+
 include::adding-packages-hooks.txt[]
 
 include::adding-packages-gettext.txt[]
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 03/10] lua: remove a too invasive patch
  2013-12-22 20:42 ` [Buildroot] [PATCH 03/10] lua: remove a too invasive patch Yann E. MORIN
@ 2013-12-25 16:38   ` Thomas Petazzoni
  0 siblings, 0 replies; 13+ messages in thread
From: Thomas Petazzoni @ 2013-12-25 16:38 UTC (permalink / raw)
  To: buildroot

Dear Yann E. MORIN,

On Sun, 22 Dec 2013 21:42:11 +0100, Yann E. MORIN wrote:
> From: Francois Perrad <fperrad@gmail.com>
> 
> the static version of luac is enough
> 
> Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
> Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> ---
>  package/lua/lua-03-shared-libs-for-luac.patch | 97 ---------------------------
>  1 file changed, 97 deletions(-)
>  delete mode 100644 package/lua/lua-03-shared-libs-for-luac.patch

Thanks, applied!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [PATCH 08/10] luasql-sqlite3: renamed like with LuaRocks
  2013-12-22 20:42 ` [Buildroot] [PATCH 08/10] luasql-sqlite3: renamed like with LuaRocks Yann E. MORIN
@ 2014-01-05 15:36   ` Yann E. MORIN
  0 siblings, 0 replies; 13+ messages in thread
From: Yann E. MORIN @ 2014-01-05 15:36 UTC (permalink / raw)
  To: buildroot

Fran?ois, All,

On 2013-12-22 21:42 +0100, Yann E. MORIN spake thusly:
> From: Francois Perrad <fperrad@gmail.com>
[--SNIP--]
> diff --git a/package/luasql-sqlite3/Config.in b/package/luasql-sqlite3/Config.in
> new file mode 100644
> index 0000000..3876f3d
> --- /dev/null
> +++ b/package/luasql-sqlite3/Config.in
> @@ -0,0 +1,8 @@
> +config BR2_PACKAGE_LUASQL_SQLITE3
> +	bool "luasql-sqlite3"
> +	depends on BR2_PACKAGE_HAS_LUA_INTERPRETER

You forgot either a depends on BR2_PACKAGE_SQLITE, or a select
BR2_PACKAGE_SQLITE...

[--SNIP--]
> diff --git a/package/luasql-sqlite3/luasql-sqlite3.mk b/package/luasql-sqlite3/luasql-sqlite3.mk
> new file mode 100644
> index 0000000..b114f02
> --- /dev/null
> +++ b/package/luasql-sqlite3/luasql-sqlite3.mk
> @@ -0,0 +1,33 @@
> +################################################################################
> +#
> +# luasql-sqlite3
> +#
> +################################################################################
> +
> +LUASQL_SQLITE3_VERSION = v2.3.0
> +LUASQL_SQLITE3_SITE = https://github.com/keplerproject/luasql/tarball/$(LUASQL_SQLITE3_VERSION)
> +LUASQL_SQLITE3_LICENSE = MIT
> +LUASQL_SQLITE3_LICENSE_FILES = README
> +LUASQL_SQLITE3_DEPENDENCIES = luainterpreter sqlite

... because you are using it here as a dependency.

I will fix that here before I repush my branch.

I'm currently rebasing it on top of the current master, and there is a
small merge conflict. I'll repush soon, once I'm done, so you can get it
in a clean state.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2014-01-05 15:36 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-22 20:42 [Buildroot] [pull request v5] Pull request for branch yem/lua-infra Yann E. MORIN
2013-12-22 20:42 ` [Buildroot] [PATCH 01/10] luainterpreter: create virtual package Yann E. MORIN
2013-12-22 20:42 ` [Buildroot] [PATCH 02/10] luajit: allow to build Lua extensions without lua Yann E. MORIN
2013-12-22 20:42 ` [Buildroot] [PATCH 03/10] lua: remove a too invasive patch Yann E. MORIN
2013-12-25 16:38   ` Thomas Petazzoni
2013-12-22 20:42 ` [Buildroot] [PATCH 04/10] lua*: restore version in module paths Yann E. MORIN
2013-12-22 20:42 ` [Buildroot] [PATCH 05/10] luarocks: new package Yann E. MORIN
2013-12-22 20:42 ` [Buildroot] [PATCH 06/10] luarocks: new infrastructure Yann E. MORIN
2013-12-22 20:42 ` [Buildroot] [PATCH 07/10] lua-cjson: restore official name Yann E. MORIN
2013-12-22 20:42 ` [Buildroot] [PATCH 08/10] luasql-sqlite3: renamed like with LuaRocks Yann E. MORIN
2014-01-05 15:36   ` Yann E. MORIN
2013-12-22 20:42 ` [Buildroot] [PATCH 09/10] lua*: refactor with luarocks infrastructure Yann E. MORIN
2013-12-22 20:42 ` [Buildroot] [PATCH 10/10] manual: adding packages luarocks Yann E. MORIN

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox