mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-07-27 07:57:27 +00:00
lua: change a hard readline dependency into an optional one
This requires patching the source code, as readline is hardcoded in there. The rationale is to allow disabling the dependency on a gplv3 component (readline) where that license is blacklisted. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
committed by
Khem Raj
parent
1958ce5282
commit
54d9fe3e5f
+59
@@ -0,0 +1,59 @@
|
|||||||
|
From 601ef636fc4dfb2af3e7fda88d8ea1c1d92affe4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||||
|
Date: Wed, 2 Oct 2019 17:54:15 +0200
|
||||||
|
Subject: [PATCH] Allow building lua without readline on Linux
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||||
|
---
|
||||||
|
Makefile | 2 +-
|
||||||
|
src/Makefile | 3 +++
|
||||||
|
src/luaconf.h | 5 +++++
|
||||||
|
3 files changed, 9 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/Makefile b/Makefile
|
||||||
|
index 119110d..9f6df45 100644
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -36,7 +36,7 @@ RM= rm -f
|
||||||
|
# == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE =======
|
||||||
|
|
||||||
|
# Convenience platforms targets.
|
||||||
|
-PLATS= aix bsd c89 freebsd generic linux macosx mingw posix solaris
|
||||||
|
+PLATS= aix bsd c89 freebsd generic linux linux-no-readline macosx mingw posix solaris
|
||||||
|
|
||||||
|
# What to install.
|
||||||
|
TO_BIN= lua luac
|
||||||
|
diff --git a/src/Makefile b/src/Makefile
|
||||||
|
index 64c78f7..5c0428a 100644
|
||||||
|
--- a/src/Makefile
|
||||||
|
+++ b/src/Makefile
|
||||||
|
@@ -109,6 +109,9 @@ generic: $(ALL)
|
||||||
|
linux:
|
||||||
|
$(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -ldl -lreadline"
|
||||||
|
|
||||||
|
+linux-no-readline:
|
||||||
|
+ $(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX_NO_READLINE" SYSLIBS="-Wl,-E -ldl"
|
||||||
|
+
|
||||||
|
macosx:
|
||||||
|
$(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_MACOSX" SYSLIBS="-lreadline"
|
||||||
|
|
||||||
|
diff --git a/src/luaconf.h b/src/luaconf.h
|
||||||
|
index 9eeeea6..d71ca25 100644
|
||||||
|
--- a/src/luaconf.h
|
||||||
|
+++ b/src/luaconf.h
|
||||||
|
@@ -64,6 +64,11 @@
|
||||||
|
#define LUA_USE_READLINE /* needs some extra libraries */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+#if defined(LUA_USE_LINUX_NO_READLINE)
|
||||||
|
+#define LUA_USE_POSIX
|
||||||
|
+#define LUA_USE_DLOPEN /* needs an extra library: -ldl */
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
|
||||||
|
#if defined(LUA_USE_MACOSX)
|
||||||
|
#define LUA_USE_POSIX
|
||||||
|
--
|
||||||
|
2.17.1
|
||||||
|
|
||||||
@@ -4,9 +4,9 @@ LICENSE = "MIT"
|
|||||||
LIC_FILES_CHKSUM = "file://doc/readme.html;beginline=318;endline=352;md5=60aa5cfdbd40086501778d9b6ebf29ee"
|
LIC_FILES_CHKSUM = "file://doc/readme.html;beginline=318;endline=352;md5=60aa5cfdbd40086501778d9b6ebf29ee"
|
||||||
HOMEPAGE = "http://www.lua.org/"
|
HOMEPAGE = "http://www.lua.org/"
|
||||||
|
|
||||||
DEPENDS = "readline"
|
|
||||||
SRC_URI = "http://www.lua.org/ftp/lua-${PV}.tar.gz;name=tarballsrc \
|
SRC_URI = "http://www.lua.org/ftp/lua-${PV}.tar.gz;name=tarballsrc \
|
||||||
file://lua.pc.in \
|
file://lua.pc.in \
|
||||||
|
file://0001-Allow-building-lua-without-readline-on-Linux.patch \
|
||||||
"
|
"
|
||||||
|
|
||||||
# if no test suite matches PV release of Lua exactly, download the suite for the closest Lua release.
|
# if no test suite matches PV release of Lua exactly, download the suite for the closest Lua release.
|
||||||
@@ -24,18 +24,21 @@ SRC_URI[tarballtest.sha256sum] = "b80771238271c72565e5a1183292ef31bd7166414cd0d4
|
|||||||
|
|
||||||
inherit pkgconfig binconfig ptest
|
inherit pkgconfig binconfig ptest
|
||||||
|
|
||||||
|
PACKAGECONFIG ??= "readline"
|
||||||
|
PACKAGECONFIG[readline] = ",,readline"
|
||||||
|
|
||||||
UCLIBC_PATCHES += "file://uclibc-pthread.patch"
|
UCLIBC_PATCHES += "file://uclibc-pthread.patch"
|
||||||
SRC_URI_append_libc-uclibc = "${UCLIBC_PATCHES}"
|
SRC_URI_append_libc-uclibc = "${UCLIBC_PATCHES}"
|
||||||
|
|
||||||
TARGET_CC_ARCH += " -fPIC ${LDFLAGS}"
|
TARGET_CC_ARCH += " -fPIC ${LDFLAGS}"
|
||||||
EXTRA_OEMAKE = "'CC=${CC} -fPIC' 'MYCFLAGS=${CFLAGS} -DLUA_USE_LINUX -fPIC' MYLDFLAGS='${LDFLAGS}'"
|
EXTRA_OEMAKE = "'CC=${CC} -fPIC' 'MYCFLAGS=${CFLAGS} -fPIC' MYLDFLAGS='${LDFLAGS}'"
|
||||||
|
|
||||||
do_configure_prepend() {
|
do_configure_prepend() {
|
||||||
sed -i -e s:/usr/local:${prefix}:g src/luaconf.h
|
sed -i -e s:/usr/local:${prefix}:g src/luaconf.h
|
||||||
}
|
}
|
||||||
|
|
||||||
do_compile () {
|
do_compile () {
|
||||||
oe_runmake linux
|
oe_runmake ${@bb.utils.contains('PACKAGECONFIG', 'readline', 'linux', 'linux-no-readline', d)}
|
||||||
}
|
}
|
||||||
|
|
||||||
do_install () {
|
do_install () {
|
||||||
|
|||||||
Reference in New Issue
Block a user