From: Changqing Li <changqing.li@windriver.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH V5] lua: upgrade from 5.4.8 to 5.5.0
Date: Mon, 9 Mar 2026 14:07:41 +0800 [thread overview]
Message-ID: <20260309060741.1609377-1-changqing.li@windriver.com> (raw)
In-Reply-To: <DGVMFAY5L9I3.1HXXYSFNG3R14@bootlin.com>
From: "Changqing Li via lists.openembedded.org" <changqing.li=windriver.com@lists.openembedded.org>
Changes:
https://www.lua.org/manual/5.5/readme.html#changes
PLATS linux-readline is moved, and readline is changed to load
dynamically, refer [1], keep readline as PACKAGECONFIG to allow user to
remove readline dependency.
Lua use dlopen by default, and LUA_READLINELIB is set to libreadline.so,
but libreadline.so is in the dev package, which will make Lua cannot
load libreadline even when libreadline is installed. Make readline as
build dependency and detect the real libreadline name and set LUA_READLINELIB
[1] https://github.com/lua/lua/commit/366c85564874d560b3608349f752e9e490f9002d
[2] https://github.com/lua/lua/blob/master/lua.c#L520
Signed-off-by: Changqing Li <changqing.li@windriver.com>
---
.../lua/{lua_5.4.8.bb => lua_5.5.0.bb} | 22 +++++++++++++------
1 file changed, 15 insertions(+), 7 deletions(-)
rename meta/recipes-devtools/lua/{lua_5.4.8.bb => lua_5.5.0.bb} (71%)
diff --git a/meta/recipes-devtools/lua/lua_5.4.8.bb b/meta/recipes-devtools/lua/lua_5.5.0.bb
similarity index 71%
rename from meta/recipes-devtools/lua/lua_5.4.8.bb
rename to meta/recipes-devtools/lua/lua_5.5.0.bb
index 1d37cddeb8..905dd01001 100644
--- a/meta/recipes-devtools/lua/lua_5.4.8.bb
+++ b/meta/recipes-devtools/lua/lua_5.5.0.bb
@@ -1,7 +1,7 @@
SUMMARY = "Lua is a powerful light-weight programming language designed \
for extending applications."
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://doc/readme.html;beginline=305;endline=326;md5=0e573c143cb6491b41cf02cfbcb8c267"
+LIC_FILES_CHKSUM = "file://doc/readme.html;beginline=299;endline=320;md5=0e573c143cb6491b41cf02cfbcb8c267"
HOMEPAGE = "http://www.lua.org/"
SRC_URI = "http://www.lua.org/ftp/lua-${PV}.tar.gz;name=tarballsrc \
@@ -12,24 +12,32 @@ SRC_URI = "http://www.lua.org/ftp/lua-${PV}.tar.gz;name=tarballsrc \
# if no test suite matches PV release of Lua exactly, download the suite for the closest Lua release.
PV_testsuites = "${PV}"
-SRC_URI[tarballsrc.sha256sum] = "4f18ddae154e793e46eeab727c59ef1c0c0c2b744e7b94219710d76f530629ae"
-SRC_URI[tarballtest.sha256sum] = "9581d5a7c39ffbf29b8ccde2709083c380f7bbddbd968dcb15712d2f2e33f4e5"
+SRC_URI[tarballsrc.sha256sum] = "57ccc32bbbd005cab75bcc52444052535af691789dba2b9016d5c50640d68b3d"
+SRC_URI[tarballtest.sha256sum] = "5e47bbfad7db2965d69580e918ee64edeb8d8d32de404b8dae9ce5c6d76a1472"
inherit pkgconfig binconfig ptest
PACKAGECONFIG ??= "readline"
-PACKAGECONFIG[readline] = ",,readline"
+PACKAGECONFIG[readline] = ",,readline,readline"
TARGET_CC_ARCH += " -fPIC ${LDFLAGS}"
EXTRA_OEMAKE = "'CC=${CC} -fPIC' 'MYCFLAGS=${CFLAGS} -fPIC' MYLDFLAGS='${LDFLAGS}' 'AR=ar rcD' 'RANLIB=ranlib -D'"
+do_configure:prepend:class-target() {
+ libreadline=$(find "${RECIPE_SYSROOT}" -name libreadline.so)
+ if [ -n "$libreadline" ] && [ -L "$libreadline" ]; then
+ real_libreadline=$(readlink "$libreadline")
+ sed -i -e "s/#define LUA_READLINELIB[[:space:]]*\"libreadline.*$/#define LUA_READLINELIB \"$real_libreadline\"/g" src/luaconf.h
+ fi
+}
+
do_configure:prepend() {
sed -i -e s:/usr/local:${prefix}:g src/luaconf.h
sed -i -e s:lib/lua/:${baselib}/lua/:g src/luaconf.h
}
do_compile () {
- oe_runmake ${@bb.utils.contains('PACKAGECONFIG', 'readline', 'linux-readline', 'linux', d)}
+ oe_runmake linux
}
do_install () {
@@ -40,13 +48,13 @@ do_install () {
'INSTALL_MAN=${D}${mandir}/man1' \
'INSTALL_SHARE=${D}${datadir}/lua' \
'INSTALL_LIB=${D}${libdir}' \
- 'INSTALL_CMOD=${D}${libdir}/lua/5.4' \
+ 'INSTALL_CMOD=${D}${libdir}/lua/5.5' \
install
install -d ${D}${libdir}/pkgconfig
sed -e s/@VERSION@/${PV}/ -e s#@LIBDIR@#${libdir}# -e s#@INCLUDEDIR@#${includedir}# ${UNPACKDIR}/lua.pc.in > ${S}/lua.pc
install -m 0644 ${S}/lua.pc ${D}${libdir}/pkgconfig/
- rmdir ${D}${datadir}/lua/5.4
+ rmdir ${D}${datadir}/lua/5.*
rmdir ${D}${datadir}/lua
}
--
2.34.1
prev parent reply other threads:[~2026-03-09 6:08 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-24 2:46 [PATCH V2] lua: upgrade from 5.4.8 to 5.5.0 Changqing Li
2026-02-26 13:37 ` [OE-core] " Ross Burton
2026-02-27 7:07 ` Changqing Li
2026-02-27 7:08 ` [PATCH V3] " Changqing Li
2026-03-03 15:16 ` [OE-core] " Ross Burton
2026-03-04 7:23 ` Changqing Li
2026-03-04 17:58 ` Ross Burton
2026-03-05 10:54 ` [PATCH V4] " Changqing Li
2026-03-06 10:18 ` [OE-core] " Mathieu Dubois-Briand
2026-03-09 6:07 ` Changqing Li [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260309060741.1609377-1-changqing.li@windriver.com \
--to=changqing.li@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox