howl
howl copied to clipboard
Unbundle LuaJIT
Please make it possible to build Howl with LuaJIT with system version, not bundled version.
https://docs.fedoraproject.org/en-US/packaging-guidelines/#bundling
Hmm Fedora doesn't seem to build LuaJIT with Lua 5.2 support, which Howl uses (not sure how extensively). Maybe that would fall under:
All packages whose upstreams have no mechanism to build against system libraries MAY opt to carry bundled libraries
Nice @refi64 Maybe possible in this case to build with bundled then. Review request is there btw https://bugzilla.redhat.com/show_bug.cgi?id=1701204 Thank you.
I am wondering if that would be an option for OpenBSD as well.
E.g. OpenBSD 6.5 has packages for:
- lua-lpeg-1.0.1.tgz flavours: lua52 and lua53
- luajit-2.0.5p1.tgz
Howl doesn't seem compile with default clang compiler currently on amd64. I have to force it to use gcc. It seems to be related to libunwind but I don't understand exactly why changing compiler makes it work.
Following works.
gmake CC=gcc
gmake install
But I would like to have a package at some point ...
Howl do use the 5.2 compatibility (I don't have a ready list of all usage however). As for OpenBSD, the 2.0 line of LuaJIT is pretty ancient by now - it's an unfortunate fact that 2.1 is stuck in beta, I believe that a lot of people actually use 2.1 for the production needs (e.g. OpenResty). Both things together makes the unbundling situation kind of a hard solve unfortunately.
Maintainer of Fedora's luajit here.
Hmm Fedora doesn't seem to build LuaJIT with Lua 5.2 support, which Howl uses (not sure how extensively). Maybe that would fall under:
What do you mean? Is there some flag to enable it? We ship 2.1.0-beta3 with huge patchsets on top of that to make s390x and ppc64 stuff work.
@ignatenkobrain Indeed, Howl passes -DLUAJIT_ENABLE_LUA52_COMPAT, which enables several changes that would be breaking (e.g. the write return type, removal of gfind). As far as I can tell, the LuaJIT spec file in Fedora does not pass that.
Some of those patches look pretty interesting, kinda sad that LuaJIT is in a really awkward state right now wrt maintenance and build-time configuration.
Fair enough. https://src.fedoraproject.org/rpms/luajit/pull-request/2
Nice, if the breaking changes don't have any negative impact then that's pretty much perfect afaik.
Could Howl use https://github.com/lunarmodules/lua-compat-5.3 to work with any lua/luajit?
Could Howl use https://github.com/lunarmodules/lua-compat-5.3 to work with any lua/luajit?
No, it relies heavily on LuaJIT's FFI.