From: ludo@gnu.org (Ludovic Courtès)
To: Leo Famulari <leo@famulari.name>
Cc: guix-devel@gnu.org
Subject: Re: [PATCH 1/1] gnu: lua: Build with dynamic library support.
Date: Tue, 27 Oct 2015 16:48:27 +0100 [thread overview]
Message-ID: <87pp00tir8.fsf@gnu.org> (raw)
In-Reply-To: <1445955233.2825572.421511113.088B9586@webmail.messagingengine.com> (Leo Famulari's message of "Tue, 27 Oct 2015 10:13:53 -0400")
Leo Famulari <leo@famulari.name> skribis:
> On Tue, Oct 27, 2015, at 08:47, Ludovic Courtès wrote:
>> Leo Famulari <leo@famulari.name> skribis:
>>
>> > Notably, this enables the use of dynamic libraries with Lua.
>>
>> A better subject line for the commit would be:
>>
>> gnu: lua-5.2: Build shared libraries.
>>
>> AFAICS, the problem is only with Lua 5.2:
>>
>> --8<---------------cut here---------------start------------->8---
>> $ ls $(guix build lua-5.1)/lib
>> liblua.a liblua.so liblua.so.5.1 lua
>> $ ls $(guix build lua-5.2)/lib
>> liblua.a lua pkgconfig
>> --8<---------------cut here---------------end--------------->8---
>>
>> Thus I would suggest leaving ‘lua-5.1’ unchanged.
>
> The make flags were broken before, for both 5.1 and 5.2, but in
> different ways. So the commit isn't about enabling shared libraries but
> fixing the flags. And I'm not sure about using Lua as a library. I was
> more interested in using other libraries with Lua.
By “fixing the flags”, do you mean that the .so that we have for 5.1
does not actually contain position-independent code? That CFLAGS was
ignored?
> For 5.2, MYCFLAGS is available to "users" to append flags to what is set
> by the platform flag ("linux").
>
> For 5.1, MYCFLAGS does NOT append, so you must manually copy the
> platform dependent flags onto the command-line and then append your
> flags.
>
> In both cases, our build instructions clobber the platform dependent
> flags.
OK.
>> > * gnu/packages/lua.scm (lua, lua-5.1)[arguments]: Set the make flags
>> > properly for each version of lua.
>>
>> [...]
>>
>> > +++ b/gnu/packages/lua.scm
>> > @@ -24,6 +24,7 @@
>> > #:use-module (guix packages)
>> > #:use-module (guix download)
>> > #:use-module (guix build-system gnu)
>> > + #:use-module (guix utils)
>>
>> Looks like this line is not needed, is it?
>
> I thought that was necessary to use substitute-keyword-arguments.
Oh right.
>> > #:phases (alist-replace
>> > 'build
>> > - (lambda _ (zero? (system* "make" "CFLAGS=-fPIC" "linux")))
>> > + (lambda _ (zero? (system* "make" "MYCFLAGS=-fPIC" "linux")))
>>
>> I just tried and AFAICS this line has no effect: Lua 5.2 still lacks
>> liblua.so. Am I missing something?
>
> I will have to look into it again. I tested the results by starting the
> Lua interpreter while linking a shared library:
> $ lua -lssl
I’m not familiar with Lua; what does this command do?
I thought the goal was to get liblua.so for 5.2, but this seems to be
testing something else?
>> > @@ -89,8 +106,8 @@ for configuration, scripting, and rapid prototyping.")
>> > version ".tar.gz"))
>> > (sha256
>> > (base32 "0ydxpqkmsn2c341j4r2v6r5r0ig3kbwv3i9jran3iv81s6r6rgjm"))
>> > - (patches (list (search-patch "luajit-symlinks.patch")
>> > - (search-patch "luajit-no_ldconfig.patch")))))
>> > + (patches (list (search-patch "luajit-symlinks.patch")
>> > + (search-patch "luajit-no_ldconfig.patch")))))
>>
>> Unnecessary too.
>
> I figured that I should remove this tabulation while I was touching the
> file.
OK, it can’t hurt, indeed.
Thanks,
Ludo’.
next prev parent reply other threads:[~2015-10-27 15:48 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-27 3:56 [PATCH 0/1] lua: Build with dynamic library support Leo Famulari
2015-10-27 3:56 ` [PATCH 1/1] gnu: " Leo Famulari
2015-10-27 12:47 ` Ludovic Courtès
2015-10-27 14:13 ` Leo Famulari
2015-10-27 15:48 ` Ludovic Courtès [this message]
2015-10-28 3:32 ` Leo Famulari
2015-10-28 22:47 ` Leo Famulari
2015-10-29 20:49 ` Ludovic Courtès
2015-10-29 20:46 ` Ludovic Courtès
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
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87pp00tir8.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=guix-devel@gnu.org \
--cc=leo@famulari.name \
/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 public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).