From patchwork Tue Feb 19 20:44:01 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?J=C3=B6rg_Krause?= X-Patchwork-Id: 1044890 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.137; helo=fraxinus.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=embedded.rocks Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 443t563wBjz9s6w for ; Wed, 20 Feb 2019 07:44:26 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 6B97B857D6; Tue, 19 Feb 2019 20:44:23 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fEU5zgnkRRBz; Tue, 19 Feb 2019 20:44:21 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id 3D2B884D74; Tue, 19 Feb 2019 20:44:21 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 853861BF2EA for ; Tue, 19 Feb 2019 20:44:20 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 81C8A84D74 for ; Tue, 19 Feb 2019 20:44:20 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id SRDgle2fgSLk for ; Tue, 19 Feb 2019 20:44:19 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from mout02.posteo.de (mout02.posteo.de [185.67.36.142]) by fraxinus.osuosl.org (Postfix) with ESMTPS id 0797784A6C for ; Tue, 19 Feb 2019 20:44:19 +0000 (UTC) Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id CECD22400FC for ; Tue, 19 Feb 2019 21:44:15 +0100 (CET) Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 443t4v0jC6z9rxB for ; Tue, 19 Feb 2019 21:44:14 +0100 (CET) Received: from mail.embedded.rocks ([127.0.0.1]) by localhost (mail.embedded.rocks [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id AtphOo_HsJUx; Tue, 19 Feb 2019 21:44:13 +0100 (CET) Received: from nzxt.fritz.box (port-92-195-75-251.dynamic.qsc.de [92.195.75.251]) (Authenticated sender: joerg.krause@embedded.rocks) by mail.embedded.rocks (Postfix) with ESMTPSA; Tue, 19 Feb 2019 21:44:13 +0100 (CET) From: =?utf-8?q?J=C3=B6rg_Krause?= To: buildroot@buildroot.org Date: Tue, 19 Feb 2019 21:44:01 +0100 Message-Id: <20190219204401.5326-1-joerg.krause@embedded.rocks> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [Buildroot] [PATCH] package/luvi: bump to version 2.9.0 to fix build with OpenSSL 1.1.1a X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" 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 --- ...g-define-for-luaL_newlib-for-Lua-5.1.patch | 61 ------------------- ...i-executable-needs-to-export-symbols.patch | 53 ---------------- package/luvi/luvi.hash | 2 +- package/luvi/luvi.mk | 4 +- 4 files changed, 2 insertions(+), 118 deletions(-) delete mode 100644 package/luvi/0001-Add-missing-define-for-luaL_newlib-for-Lua-5.1.patch delete mode 100644 package/luvi/0002-luvi-executable-needs-to-export-symbols.patch diff --git a/package/luvi/0001-Add-missing-define-for-luaL_newlib-for-Lua-5.1.patch b/package/luvi/0001-Add-missing-define-for-luaL_newlib-for-Lua-5.1.patch deleted file mode 100644 index 903b9d6a69..0000000000 --- a/package/luvi/0001-Add-missing-define-for-luaL_newlib-for-Lua-5.1.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 7f9fcbd827295df72b15466fd3c47589d52117b9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -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 ---- - 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 - diff --git a/package/luvi/0002-luvi-executable-needs-to-export-symbols.patch b/package/luvi/0002-luvi-executable-needs-to-export-symbols.patch deleted file mode 100644 index 74b6537f9b..0000000000 --- a/package/luvi/0002-luvi-executable-needs-to-export-symbols.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 1ea2c1e372ab59b9a633a51f0dcefc24328528f1 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -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 ---- - 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 - diff --git a/package/luvi/luvi.hash b/package/luvi/luvi.hash index 22e5cfa7bf..084f3a42cd 100644 --- a/package/luvi/luvi.hash +++ b/package/luvi/luvi.hash @@ -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 diff --git a/package/luvi/luvi.mk b/package/luvi/luvi.mk index 4b693e23a2..c43033f4f3 100644 --- a/package/luvi/luvi.mk +++ b/package/luvi/luvi.mk @@ -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