All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH for-next 0/25] Lua(Rocks) improvements
@ 2017-02-23 17:00 Arnout Vandecappelle
  2017-02-23 17:00 ` [Buildroot] [PATCH 01/25] lutok: move to Lua libraries menu Arnout Vandecappelle
                   ` (26 more replies)
  0 siblings, 27 replies; 59+ messages in thread
From: Arnout Vandecappelle @ 2017-02-23 17:00 UTC (permalink / raw)
  To: buildroot

 This is a collection of fixes and improvements for the Lua and LuaRocks
infrastructure.

 It was triggered by luaposix, which fails to load at runtime with luajit
and lua 5.1 (cfr. [1]). As is typically the case, this one fix lead to a
whole lot of other changes.

 The first patches can be applied independently of each other. They are
small issues that I noticed while implementing the PKG_NAME_UPSTREAM
feature. See the individual commit messages for details.

 We decided that new Lua packages should have a name starting with lua
(I guess both lua, like luaposix, and lua-, like lua-iconv, are OK).
Patch 13 documents that in package/Config.in.

 A new package lua-bit32 is added in patch 14. This package is used to
fix luaposix in patch 15. Subsequent patches generalize the hacks that
are needed for lua-bit32 because of the added lua- prefix. Patch 16
reworks the extraction so it doesn't rely on specific naming of the
subdirectory in which luarocks extracts stuff. Patch 18 introduces
a _NAME_UPSTREAM variable so that the automatically derived variable
names from the luarocks infra are correct when the Buildroot name is
different. Patch 20 extends that concept to the typical situation that
the Lua name has camel case, while the Buildroot name (as well as the
LuaRocks name) is lower case.

 Patch 25 is again independent of the rest. It removes documentation from
the target that is installed there by some Lua (not LuaRocks) packages.
For example, luaposix does that.

 Patches 18 to 24 are somewhat controversial because they introduce
"magic automation" just to save a few lines in the package .mk file. The
amount of savings from those isn't impressive either, they have a
diffstat of 13 insertions(+), 17 deletions(-) (discounting the
documentation change). Still, I believe it makes creation of LuaRocks
packages a bit easier so I included them.

 I did a runtime test after all patches applied by doing a
require "foo"
for each luarocks package with a Lua 5.1 interpreter. I am also using the
fixed luaposix on an actual customer device.

 Obviously, this entire series is for next.

 Regards,
 Arnout

[1] https://lists.osuosl.org/pipermail/buildroot/2017-February/184511.html

----------------------------------------------------------------
The following changes since commit c75f0a4d69db655bb523fbab30e0f4656bc5fb71:

  configs/liteboard: Bump to kernel 4.10 (2017-02-21 16:11:05 +0100)

are available in the git repository at:

  https://gitlab.com/arnout/buildroot lua

for you to fetch changes up to a5dfafeb82c2a91f51908110beafe7389015ca75:

  lua: remove documentation from target (2017-02-23 16:48:06 +0100)

----------------------------------------------------------------
Arnout Vandecappelle (25):
      lutok: move to Lua libraries menu
      cosmo: remove broken package
      luarocks-package: use $(HOST_PKG_VERSION) instead of $(PKG_VERSION)
      manual: luarocks: improve tutorial example
      lpty: remove LPTY_VERSION_UPSTREAM
      lua-periphery: remove LUA_PERIPHERY_VERSION_UPSTREAM
      luasec: remove LUASEC_VERSION_UPSTREAM
      ljlinenoise: remove default definition of PKG_SUBDIR
      lua-csnappy: remove default definition of PKG_SUBDIR
      lua-iconv: remove default definition of PKG_SUBDIR
      luacrypto: remove default definition of PKG_SUBDIR
      lunit: remove default definition of PKG_SUBDIR
      package/Config.in: explain that lua package names should start with lua
      lua-bit32: new package
      luaposix: fix runtime by selecting "bit32" instead of "bitop"
      luarocks-package: rework extraction
      lua-bit32: remove custom extract commands
      luarocks-package: introduce PKG_NAME_UPSTREAM
      lua-bit32: use PKG_NAME_UPSTREAM
      luarocks-package: lowercase the upstream name for LuaRocks
      lua-coat: use PKG_NAME_UPSTREAM
      lua-cjson: use LUA_CJSON_SUBDIR
      lua-testmore: use PKG_NAME_UPSTREAM
      luabitop: use PKG_NAME_UPSTREAM
      lua: remove documentation from target

 docs/manual/adding-packages-luarocks.txt           | 55 +++++++++++++---------
 package/Config.in                                  |  6 ++-
 package/cosmo/Config.in                            | 10 ----
 package/cosmo/cosmo.hash                           |  2 -
 package/ljlinenoise/ljlinenoise.mk                 |  4 +-
 package/lpty/lpty.mk                               |  3 +-
 package/lua-bit32/Config.in                        |  9 ++++
 package/lua-bit32/lua-bit32.hash                   |  2 +
 package/{cosmo/cosmo.mk => lua-bit32/lua-bit32.mk} |  9 ++--
 package/lua-cjson/lua-cjson.mk                     |  5 +-
 package/lua-coat/lua-coat.mk                       |  5 +-
 package/lua-csnappy/lua-csnappy.mk                 |  4 +-
 package/lua-iconv/lua-iconv.mk                     |  4 +-
 package/lua-periphery/lua-periphery.mk             |  3 +-
 package/lua-testmore/lua-testmore.mk               |  5 +-
 package/luabitop/luabitop.mk                       |  5 +-
 package/luacrypto/luacrypto.mk                     |  4 +-
 package/luainterpreter/luainterpreter.mk           | 11 +++++
 package/luaposix/Config.in                         |  6 ++-
 package/luasec/luasec.mk                           |  3 +-
 package/lunit/lunit.mk                             |  4 +-
 package/lutok/Config.in                            |  1 -
 package/pkg-luarocks.mk                            | 14 ++++--
 23 files changed, 94 insertions(+), 80 deletions(-)
 delete mode 100644 package/cosmo/Config.in
 delete mode 100644 package/cosmo/cosmo.hash
 create mode 100644 package/lua-bit32/Config.in
 create mode 100644 package/lua-bit32/lua-bit32.hash
 rename package/{cosmo/cosmo.mk => lua-bit32/lua-bit32.mk} (51%)

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

end of thread, other threads:[~2017-03-18 14:03 UTC | newest]

Thread overview: 59+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-23 17:00 [Buildroot] [PATCH for-next 0/25] Lua(Rocks) improvements Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 01/25] lutok: move to Lua libraries menu Arnout Vandecappelle
2017-03-02 21:29   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 02/25] cosmo: remove broken package Arnout Vandecappelle
2017-03-02 21:31   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 03/25] luarocks-package: use $(HOST_PKG_VERSION) instead of $(PKG_VERSION) Arnout Vandecappelle
2017-03-02 21:43   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 04/25] manual: luarocks: improve tutorial example Arnout Vandecappelle
2017-03-02 21:43   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 05/25] lpty: remove LPTY_VERSION_UPSTREAM Arnout Vandecappelle
2017-03-02 21:45   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 06/25] lua-periphery: remove LUA_PERIPHERY_VERSION_UPSTREAM Arnout Vandecappelle
2017-03-02 21:45   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 07/25] luasec: remove LUASEC_VERSION_UPSTREAM Arnout Vandecappelle
2017-03-02 21:45   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 08/25] ljlinenoise: remove default definition of PKG_SUBDIR Arnout Vandecappelle
2017-03-02 21:48   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 09/25] lua-csnappy: " Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 10/25] lua-iconv: " Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 11/25] luacrypto: " Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 12/25] lunit: " Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 13/25] package/Config.in: explain that lua package names should start with lua Arnout Vandecappelle
2017-03-02 21:50   ` Thomas Petazzoni
2017-03-02 22:19     ` Arnout Vandecappelle
2017-03-02 22:22       ` Thomas Petazzoni
2017-03-02 22:26         ` Arnout Vandecappelle
2017-03-02 22:38           ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 14/25] lua-bit32: new package Arnout Vandecappelle
2017-03-02 21:54   ` Thomas Petazzoni
2017-03-02 22:24     ` Arnout Vandecappelle
2017-03-17 16:14       ` Thomas Petazzoni
2017-03-17 22:17         ` Arnout Vandecappelle
2017-03-18 10:42           ` Thomas Petazzoni
2017-03-18 13:17             ` Arnout Vandecappelle
2017-03-18 13:49               ` [Buildroot] Orphan package notification Thomas Petazzoni
2017-03-18 14:03                 ` Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 15/25] luaposix: fix runtime by selecting "bit32" instead of "bitop" Arnout Vandecappelle
2017-03-02 21:58   ` Thomas Petazzoni
2017-03-02 22:25     ` Arnout Vandecappelle
2017-03-02 22:28   ` Thomas Petazzoni
2017-03-02 23:02     ` Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 16/25] luarocks-package: rework extraction Arnout Vandecappelle
2017-03-02 22:24   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 17/25] lua-bit32: remove custom extract commands Arnout Vandecappelle
2017-03-02 22:24   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 18/25] luarocks-package: introduce PKG_NAME_UPSTREAM Arnout Vandecappelle
2017-03-02 22:26   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 19/25] lua-bit32: use PKG_NAME_UPSTREAM Arnout Vandecappelle
2017-03-02 22:26   ` Thomas Petazzoni
2017-02-23 17:00 ` [Buildroot] [PATCH 20/25] luarocks-package: lowercase the upstream name for LuaRocks Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 21/25] lua-coat: use PKG_NAME_UPSTREAM Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 22/25] lua-cjson: use LUA_CJSON_SUBDIR Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 23/25] lua-testmore: use PKG_NAME_UPSTREAM Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 24/25] luabitop: " Arnout Vandecappelle
2017-02-23 17:00 ` [Buildroot] [PATCH 25/25] lua: remove documentation from target Arnout Vandecappelle
2017-02-24  6:59 ` [Buildroot] [PATCH for-next 0/25] Lua(Rocks) improvements François Perrad
2017-02-24  9:09   ` Arnout Vandecappelle
2017-02-24 10:57     ` François Perrad
2017-03-05 21:05 ` Thomas Petazzoni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.