On 12/26 11:38, George Koehler wrote: > On Thu, 26 Dec 2019 21:58:36 +0100 > Jeremie Courreges-Anglas <j...@wxcvbn.org> wrote: > > > On Wed, Dec 25 2019, Jeremy Evans <jer...@openbsd.org> wrote: > > > Tested on amd64, for about 9 months starting with the first preview > > > release. OK to import? > > > > This fails on sparc64, log attached. It *seems* that the configure > > tests are picky because of APIWARN and libgmp. And indeed the build > > fails similarly on amd64 with USE_LLD=No (only ld.bfd warns about unsafe > > functions, ld.lld does not). > > I built ruby-2.7.0 on macppc/powerpc with the diff below. > > The ld.bfd warning from libgmp broke the configure test for __func__, so > RUBY_FUNCTION_NAME_STRING went missing. This test might have been > broken for a long time, but RUBY_FUNCTION_NAME_STRING was optional until > Nov 17 [1], so it didn't break the build before 2.7.0. Some other tests > in my config.log get the same warning from libgmp, but seem to ignore > the warning. For upstream Ruby, I suggest to check if __func__ can > become an allowed C99 feature [2]. If so, Ruby can remove this > configure test and always use __func__. > > I got another error where coroutine/copy/Context.h included <alloca.h>, > so I deleted the include. OpenBSD (except amd64, i386) is the only > system where Ruby enables --with-coroutine=copy by default, so this code > is mostly for OpenBSD, but didn't work on OpenBSD, because we have no > <alloca.h>! I don't check HAVE_ALLOCA_H because the coroutine code > doesn't include the Ruby header for HAVE_ALLOCA_H. > > I have not reported these bugs to https://bugs.ruby-lang.org/ but might > report them tomorrow. --George
Thank you very much to both Jeremie for the report and George for the analysis and patch. Jeremie, does the diff below work for sparc64? If so, is it OK to import? I'll fix both issues upstream and mark them for backporting, so they hopefully will be fixed in Ruby 2.7.1. Thanks, Jeremy