package/luvi: bump to version 2.9.0 to fix build with OpenSSL 1.1.1a
Bump to latest release that bundles lua-openssl 0.7.4 to fix compatibility with OpenSSL 1.1.1a. Drop patches 0001 and 0002 that are included in the new release. Successfully build and runtime tested on Banana Pro, note that version string for lua-openssl does not match the tag name (0.7.4): ``` luvi v2.9.0 zlib: 1.2.11 libuv: 1.25.0 ssl: OpenSSL 1.1.1a 20 Nov 2018, lua-openssl 0.7.3 ``` Fixes: http://autobuild.buildroot.net/results/e87994a3dc987f5aa101a5e721ac927e21453373 http://autobuild.buildroot.net/results/ea725ad90cfcd3c5e242268a593dcabd7297fe70 http://autobuild.buildroot.net/results/f2fb9eea0044e4a5f674742d29ea95af49cf5a45 http://autobuild.buildroot.net/results/de4daa1b930f907f06640dc98a708016217ddea5 .. and many more. Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This commit is contained in:
parent
0737f48c5f
commit
040ab81555
@ -1,61 +0,0 @@
|
||||
From 7f9fcbd827295df72b15466fd3c47589d52117b9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
|
||||
Date: Wed, 31 Oct 2018 18:22:31 +0100
|
||||
Subject: [PATCH] Add missing define for luaL_newlib for Lua 5.1
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Since commit c286f3b741d0968fd1c49c28da83bc723468ecba, which bumped the
|
||||
library luv to version 1.22.0-1, building luvi fails.
|
||||
|
||||
The reason for this error is, that instead of defining Lua 5.3 API itself,
|
||||
luv now [1] uses lua-compat-5.3 [1,2] for providing a Lua 5.3 API.
|
||||
|
||||
Unfortunately, upstreams "luv.h" now exposes "compat-5.3.h" directly, causing
|
||||
redefinition errors when building luvi 2.7.6 (as well as latest release 2.8.0)
|
||||
with luv 1.22.0-1. Instead, "compat-5.3.h" should only be included in "luv.c",
|
||||
which is addressed in patching luv (Patch: "Do not include compat-5.3.h in luv
|
||||
header file").
|
||||
|
||||
Patching luv reveals an issue in luvi itself, as it is using the Lua 5.3 API,
|
||||
without defining the Lua 5.3 itself, nor using lua-compat-5.3. Instead, it was
|
||||
using the definition provided by the "luv.h" file in luv versions before 1.22.0.
|
||||
|
||||
Correctly, luvi should define the necessary Lua 5.3 itself, which is done by
|
||||
this patch, by providing a definition for `luaL_newlib`.
|
||||
|
||||
Note, that this patch is not upstreamable, as upstream already switched to
|
||||
using lua-compat-5.3 [3,4]. However, backporting this patch set is to much of a
|
||||
burden, so we keep it simple, by just defining `luaL_newlib`.
|
||||
|
||||
[1] https://github.com/luvit/luv/commit/34ada3e1d75796d2295ec54f3f20b3e2abf93406
|
||||
[2] https://github.com/keplerproject/lua-compat-5.3
|
||||
[3] https://github.com/luvit/luvi/commit/3a444d183d2fde91b6c2f3798b37881cdaa29691
|
||||
[4] https://github.com/luvit/luvi/commit/0376894bae7c1c3bee42ddad65e824da9cccdada
|
||||
|
||||
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
|
||||
---
|
||||
src/luvi.h | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/src/luvi.h b/src/luvi.h
|
||||
index e7558b3..ceca2b9 100644
|
||||
--- a/src/luvi.h
|
||||
+++ b/src/luvi.h
|
||||
@@ -52,6 +52,12 @@ int luaopen_lpeg(lua_State* L);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
+#if LUA_VERSION_NUM < 502
|
||||
+#ifndef luaL_newlib
|
||||
+# define luaL_newlib(L,l) (lua_newtable(L), luaL_register(L,NULL,l))
|
||||
+#endif
|
||||
+#endif
|
||||
+
|
||||
#if (LUA_VERSION_NUM >= 502)
|
||||
# undef luaL_register
|
||||
# define luaL_register(L,n,f) \
|
||||
--
|
||||
2.19.1
|
||||
|
@ -1,53 +0,0 @@
|
||||
From 1ea2c1e372ab59b9a633a51f0dcefc24328528f1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
|
||||
Date: Mon, 10 Sep 2018 08:18:38 +0200
|
||||
Subject: [PATCH] luvi executable needs to export symbols
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Using CMake 3.12 running luvi fails with:
|
||||
|
||||
```
|
||||
[string "return require('init')(...)"]:1: module 'init' not found:
|
||||
no field package.preload['init']
|
||||
no file './init.lua'
|
||||
no file '/usr/share/luajit-2.0.5/init.lua'
|
||||
no file '/usr/local/share/lua/5.1/init.lua'
|
||||
no file '/usr/local/share/lua/5.1/init/init.lua'
|
||||
no file '/usr/share/lua/5.1/init.lua'
|
||||
no file '/usr/share/lua/5.1/init/init.lua'
|
||||
no file './init.so'
|
||||
no file '/usr/local/lib/lua/5.1/init.so'
|
||||
no file '/usr/lib/lua/5.1/init.so'
|
||||
no file '/usr/local/lib/lua/5.1/loadall.so'
|
||||
```
|
||||
|
||||
Looking at link.txt for the luvi executable shows that `-rdynamic` is
|
||||
not set anymore in CMake 3.12. This has the effect, that symbols are
|
||||
missing in the `.dynsym` section.
|
||||
|
||||
Therefore, set `ENABLE_EXPORTS` to true which set `-rdynamic` explicitly.
|
||||
|
||||
Upstream status: b8781653dcb8815a3019a77baf4f3b7f7a255ebe
|
||||
|
||||
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
|
||||
---
|
||||
CMakeLists.txt | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index e141f8e..8219d0b 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -158,6 +158,7 @@ if("${CMAKE_SYSTEM_NAME}" MATCHES "Linux")
|
||||
endif()
|
||||
|
||||
target_link_libraries(luvi ${LUVI_LIBRARIES} ${EXTRA_LIBS} ${CMAKE_THREAD_LIBS_INIT})
|
||||
+set_target_properties(luvi PROPERTIES ENABLE_EXPORTS ON)
|
||||
|
||||
###############################################################################
|
||||
## Installation Targets
|
||||
--
|
||||
2.19.1
|
||||
|
@ -1,3 +1,3 @@
|
||||
# Locally calculated
|
||||
sha256 ce9a1fb762e61267618ddea9ea129170fd543bb918c382b71cb35985d0024c42 luvi-src-v2.7.6.tar.gz
|
||||
sha256 81e898dc67b8166222716f763d8d0e0307132edc999167259d28ad0b54e20a7f luvi-src-v2.9.0.tar.gz
|
||||
sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt
|
||||
|
@ -4,9 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
# we keep version 2.7.6 because 2.8.0 causes build errors and only
|
||||
# contains updates to submodules we do not need
|
||||
LUVI_VERSION = v2.7.6
|
||||
LUVI_VERSION = v2.9.0
|
||||
LUVI_SOURCE = luvi-src-$(LUVI_VERSION).tar.gz
|
||||
LUVI_SITE = https://github.com/luvit/luvi/releases/download/$(LUVI_VERSION)
|
||||
LUVI_LICENSE = Apache-2.0
|
||||
|
Loading…
Reference in New Issue
Block a user