From: Cyril Roelandt <tipecaml@gmail.com>
To: guix-devel <guix-devel@gnu.org>
Subject: Fwd: Re: gnu: Have lua-5.1 compile a .so
Date: Thu, 11 Sep 2014 01:19:23 +0200 [thread overview]
Message-ID: <5410DC7B.1040905@gmail.com> (raw)
In-Reply-To: <20140910231515.GG31169@luwin.ulrar.net>
[-- Attachment #1: Type: text/plain, Size: 4255 bytes --]
Forwarding to the list as this is obviously not meant to be private :)
-------- Forwarded Message --------
Subject: Re: gnu: Have lua-5.1 compile a .so
Date: Thu, 11 Sep 2014 01:15:15 +0200
From: lemonnierk@ulrar.net
To: Cyril Roelandt <tipecaml@gmail.com>
That's true, thought about doing that at one point, then it must have
slipped my mind :).
I also removed the useless patch-flags as mentionned by Eric Bavier.
From 81f659884cf02d0d63846b45be5f93d794a9e092 Mon Sep 17 00:00:00 2001
From: Kevin Lemonnier <lemonnierk@ulrar.net>
Date: Thu, 11 Sep 2014 03:12:39 +0200
Subject: [PATCH] gnu: Have lua-5.1 compile a .so
* gnu/packages/patches/lua51-liblua-so.patch: New file
* gnu/packages/lua.scm: Use of lua51-liblua-so.patch in lua-5.1
---
gnu/packages/lua.scm | 3 +-
gnu/packages/patches/lua51-liblua-so.patch | 65
++++++++++++++++++++++++++++++
2 files changed, 67 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/lua51-liblua-so.patch
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index a85c120..92ffc22 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -75,7 +75,8 @@ for configuration, scripting, and rapid prototyping.")
(uri (string-append "http://www.lua.org/ftp/lua-"
version ".tar.gz"))
(sha256
- (base32
"0cskd4w0g6rdm2q8q3i4n1h3j8kylhs3rq8mxwl9vwlmlxbgqh16"))))))
+ (base32
"0cskd4w0g6rdm2q8q3i4n1h3j8kylhs3rq8mxwl9vwlmlxbgqh16"))
+ (patches (list (search-patch "lua51-liblua-so.patch")))))))
(define-public luajit
(package
diff --git a/gnu/packages/patches/lua51-liblua-so.patch
b/gnu/packages/patches/lua51-liblua-so.patch
new file mode 100644
index 0000000..4442858
--- /dev/null
+++ b/gnu/packages/patches/lua51-liblua-so.patch
@@ -0,0 +1,65 @@
+#
+# Patch the two Makefile to also create liblua.so
+# Original patch by Allan McRae <allan@archlinux.org>
+# for Archlinux
+#
+
+diff -ruN lua-5.1.5/Makefile lua-5.1.5-new/Makefile
+--- lua-5.1.5/Makefile 2012-02-10 10:50:23.000000000 +0100
++++ lua-5.1.5-new/Makefile 2014-09-10 20:17:28.913951433 +0200
+@@ -43,7 +43,7 @@
+ # What to install.
+ TO_BIN= lua luac
+ TO_INC= lua.h luaconf.h lualib.h lauxlib.h ../etc/lua.hpp
+-TO_LIB= liblua.a
++TO_LIB= liblua.a liblua.so liblua.so.${V}
+ TO_MAN= lua.1 luac.1
+
+ # Lua version and release.
+@@ -53,7 +53,7 @@
+ all: $(PLAT)
+
+ $(PLATS) clean:
+- cd src && $(MAKE) $@
++ cd src && $(MAKE) $@ V=$(V) R=$(R)
+
+ test: dummy
+ src/lua test/hello.lua
+diff -ruN lua-5.1.5/src/Makefile lua-5.1.5-new/src/Makefile
+--- lua-5.1.5/src/Makefile 2012-02-13 21:41:22.000000000 +0100
++++ lua-5.1.5-new/src/Makefile 2014-09-10 20:16:09.982952152 +0200
+@@ -8,7 +8,7 @@
+ PLAT= none
+
+ CC= gcc
+-CFLAGS= -O2 -Wall $(MYCFLAGS)
++CFLAGS= -O2 -Wall $(MYCFLAGS) -fPIC
+ AR= ar rcu
+ RANLIB= ranlib
+ RM= rm -f
+@@ -34,9 +34,10 @@
+
+ LUAC_T= luac
+ LUAC_O= luac.o print.o
++LUA_SO= liblua.so
+
+ ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O)
+-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
++ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO)
+ ALL_A= $(LUA_A)
+
+ default: $(PLAT)
+@@ -57,6 +58,13 @@
+ $(LUAC_T): $(LUAC_O) $(LUA_A)
+ $(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
+
++$(LUA_SO): $(CORE_O) $(LIB_O)
++ $(CC) -shared -ldl -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm
$(MYLDFLAGS)
++ ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V)
++ ln -sf $(LUA_SO).$(R) $(LUA_SO)
++
++
++
+ clean:
+ $(RM) $(ALL_T) $(ALL_O)
+
--
1.8.4
On Thu, Sep 11, 2014 at 12:42:29AM +0200, Cyril Roelandt wrote:
> On 09/11/2014 12:31 AM, lemonnierk@ulrar.net wrote:
> > Hi,
> >
>
> Hi,
>
> > While working on getting weechat to build with the lua plugin enabled,
> > I noticed the lua package doesn't produce a liblua.so file. So here is
> > a patch to make it do so. It's basically the same patch as in ArchLinux,
> > with a few differences like actually installing the .so file.
> >
>
> Maybe you could mention in the diff header that the patch comes from
> Arch, and give credit to the author :) Also, it would make it easier for
> us to track newer versions of this patch, should it be modified in Arch.
>
> Cyril.
>
>
--
Kevin Lemonnier
PGP Fingerprint : C123 47CA 9E64 FCF0 3907
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 820 bytes --]
parent reply other threads:[~2014-09-10 23:19 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <20140910231515.GG31169@luwin.ulrar.net>]
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=5410DC7B.1040905@gmail.com \
--to=tipecaml@gmail.com \
--cc=guix-devel@gnu.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.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
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.