Control: tags -1 +patch Control: forwarded -1 https://bugs.ruby-lang.org/issues/12118
Hi! Andreas Schwab just provided an updated patch which actually fixes the problem, I was now able to build ruby2.3 successfully on m68k. Attaching the patch. Upstream has also implemented some changes to address the issue [1] but I haven't tested the upstream changes yet. Adrian > [1] https://bugs.ruby-lang.org/issues/12118 -- .''`. John Paul Adrian Glaubitz : :' : Debian Developer - glaub...@debian.org `. `' Freie Universitaet Berlin - glaub...@physik.fu-berlin.de `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Index: ruby-2.3.0/localeinit.c =================================================================== --- ruby-2.3.0.orig/localeinit.c +++ ruby-2.3.0/localeinit.c @@ -89,7 +89,7 @@ enc_find_index(const char *name) } int -rb_locale_charmap_index(VALUE klass) +rb_locale_charmap_index(void) { return (int)locale_charmap(enc_find_index); } Index: ruby-2.3.0/thread_pthread.c =================================================================== --- ruby-2.3.0.orig/thread_pthread.c +++ ruby-2.3.0/thread_pthread.c @@ -691,16 +691,15 @@ reserve_stack(volatile char *limit, size limit += size; if (limit > end) { size = limit - end; - limit = alloca(size); + limit = alloca(stack_check_margin+size); limit[stack_check_margin+size-1] = 0; } } else { limit -= size; if (buf > limit) { - limit = alloca(buf - limit); + limit = alloca(buf - limit + stack_check_margin); limit[0] = 0; /* ensure alloca is called */ - limit -= stack_check_margin; } } }