On Tue, Apr 21 2020, Charlene Wendling <[email protected]> wrote: > Hi, > > greenlet is broken in the current macppc bulk, and neovim won't be built > without it. > >> cc -fno-strict-aliasing -O2 -pipe -DNDEBUG -O2 -pipe -fPIC -O2 -pipe -fPIC >> -I/usr/local/include/python2.7 -c greenlet.c -o >> /usr/obj/ports/py-greenlet-0.4.15/greenlet-0.4.15/temp.openbsd-6.7-macppc-2.7/greenlet.o >> In file included from greenlet.c:343: >> In file included from ./slp_platformselect.h:24: >> ./platform/switch_ppc_unix.h:53:14: error: invalid operand for instruction >> __asm__ ("mr %0, 1" : "=g" (stackref) : ); >> ^ >> <inline asm>:1:11: note: instantiated into assembly here >> mr 0(4), 1 >> ^ >> In file included from greenlet.c:343: >> In file included from ./slp_platformselect.h:24: >> ./platform/switch_ppc_unix.h:57:13: error: invalid operand for instruction >> "mr 11, %0\n" >> ^ >> <inline asm>:1:11: note: instantiated into assembly here > > Using the linux code [0] allows greenlet to build, but tests segfault.
I'd suggest you use the Linux code path like FreeBSD does. People who truly need a working py-greenlet on powerpc can take care of fixing it. Maybe you could nudge gkoehler to look at it. :) > The build can also be fixed by applying a related change in > switch-ppc_aix.h [1], but tests segfault as well. > > Charlène. > > [0] > https://github.com/freebsd/freebsd-ports/blob/master/devel/py-greenlet/files/patch-slp_platformselect.h > [1] > https://github.com/python-greenlet/greenlet/commit/829b44f62b024a3f9b79453b1c0c6a2eb766c336 -- jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE
