Subject: Re: bug#49220: luajit doesn't support powerpc64le

From: Chris Marusich <[email-masked]>
Date: Tue, 06 Jul 2021 19:02:54 -0700

Hi,

Efraim Flashner <[email-masked]> writes:

> On Thu, Jun 24, 2021 at 11:15:01PM -0700, Chris Marusich wrote:
>> Hi LuaJIT community,
>> 
>> Is anyone in the LuaJIT community actively working on adding support for
>> the powerpc64le architecture?  Specifically, I am wondering about the
>> powerpc64le-linux-gnu triplet, running on POWER9-based systems like the
>> Talos II and Blackbird sold by Raptor Computing Systems.
>> 
>> I ask because LuaJIT has been packaged for Guix, but it currently fails
>> to build on this platform, as explained in the following Guix bug
>> report:
>> 
>> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49220
>> 
>> Based on the error output, it seems that this platform just isn't
>> supported yet:
>> 
>
> I have successfully built luajit on our ppc64le porter box using the
> patch Debian uses to add powerpc64 support. I have tested it on my
> 32-bit powerpc machine and adding the patch breaks luajit for it, but I
> think we can work something out.
>
> ¹ https://sources.debian.org/src/luajit/2.1.0%7Ebeta3+dfsg-6/debian/patches/0004-Add-ppc64-support-based-on-koriakin-GitHub-patchset.patch/

Thank you for sharing that.  I see that it came from this GitHub pull
request:

"Enable !LJ_GC64 interpreter on PPC64."
https://github.com/LuaJIT/LuaJIT/pull/140

I wonder if the LuaJIT maintainers are aware of that pull request?

It looks like the pull request has been open for about 5 years, and it
hasn't been merged.  Unless the situation changes, this probably means
that if we choose to use this patch in Guix, we (and the Debian folks, I
guess) will be responsible for maintaining it and dealing with any bugs.

Personally, I'm not interested in doing that right now, mainly because
LuaJIT doesn't seem like a necessary dependency.  The only reason this
caught my attention is because Guix's texlive-latex-base package failed
to build on powerpc64le-linux.  It failed to build because the
luajithbtex engine is missing on powerpc64le-linux.  It's missing
because LuaJIT doesn't support the platform.  Issues like that can be
worked around by just using the non-JIT version of Lua (the "luahbtex"
engine in this case).  That's good enough for me.

Of course, if someone else wants to step up and maintain a port for
powerpc64le platforms (ideally upstream in collaboration with the
current LuaJIT maintainer(s)), that would be great.  But it takes time
and effort, and I'm happy enough to just use normal Lua for now.

-- 
Chris