Curious case of publicly used Lua library ... static library or public one?

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Curious case of publicly used Lua library ... static library or public one?

Matěj Cepl

all Lua extension modules written in C are modules in the
libtool terminology opened by dlopen and so they are stored in
%{_libdir}/lua/%{lua_version}/ private directory (e.g.,
/usr/lib64/lua/5.1/ and they are called only by Lua
interpreter, which knows to look for them there. Now, however,
neovim decided in its latest versions (not released yet, just in
the master branch on GitHub) to luv Lua library and link to it.
It bundles its own version of the library, but I think it is
necessary to unbundle and use openSUSE package for it.

Now, I have the question, what should I do? I guess, I can:

1. Persuade somehow Neovim to link against private module.
    That’s probably a nonsense, right?

2. Introduce whole concept of public Lua libraries (including
    a snippet in /etc/ and all that jazz) just
    because of neovim? (I can easily persuade luv CMake scripts
    to generate public library, if necessary) Moreover, I would
    have to deal somehow with necessity to have two versions of
    a library, because we maintain two (incompatible) versions of
    Lua (5.1 and 5.3), so something like

3. Use static library, which seems like the least disruptive for
    the system, but it seems rather strongly discouraged in

4. Use neovim's bundled library.

What would you suggest? Any precedents for either solution?

Thank you for kindly kicking me in the right direction,

--, Jabber: [hidden email]
GPG Finger: 3C76 A027 CA45 AD70 98B5  BC1D 7920 5802 880B C9D8
"I wish it need not have happened in my time," said Frodo.
"So do I," said Gandalf, "and so do all who live to see such
times. But that is not for them to decide. All we have to decide
is what to do with the time that is given us."
   -- J.R.R.Tolkien, “The Lord of the Rings”

signature.asc (849 bytes) Download Attachment