On Sat, Dec 4, 2021 at 10:24 AM Solene Rapenne <[email protected]> wrote:

> On Tue, 30 Nov 2021 12:04:10 -0700 (MST)
> Jeremy Evans <[email protected]>:
>
> > CVSROOT:      /cvs
> > Module name:  ports
> > Changes by:   [email protected]  2021/11/30 12:04:10
> >
> > Modified files:
> >       lang/ruby/2.6  : Tag: OPENBSD_7_0 Makefile distinfo
> >       lang/ruby/2.6/pkg: Tag: OPENBSD_7_0 PLIST-main
> >       lang/ruby/2.7  : Tag: OPENBSD_7_0 Makefile distinfo
> >       lang/ruby/2.7/pkg: Tag: OPENBSD_7_0 PLIST-main
> >       lang/ruby/3.0  : Tag: OPENBSD_7_0 Makefile distinfo
> >       lang/ruby/3.0/pkg: Tag: OPENBSD_7_0 PLIST-main PLIST-ri_docs
> >
> > Log message:
> > Update to Ruby 2.6.9, 2.7.5, and 3.0.3
> >
>
>
> ruby 2.6.9 doesn't compile on sparc64 -stable
>
> ===>  Building for ruby-2.6.9
> cc -O2 -pipe -fPIC  -D_FORTIFY_SOURCE=2 -fstack-protector-strong
> -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT
> -DCANONICALIZATION_FOR_MATHN -DOPENSSL_NO_STATIC_ENGINE
> -I/usr/local/include   -I. -I.ext/include/sparc64-openbsd -I./include -I.
> -I./enc/unicode/12.1.0  -o hash.o -c hash.c
> hash.c: In function 'keylist_delete':
> hash.c:5661: error: 'for' loop initial declaration used outside C99 mode
> *** Error 1 in /build/tmp/pobj/ruby-2.6.9/ruby-2.6.9 (Makefile:419
> 'hash.o')
> *** Error 2 in . (/home/ports//infrastructure/mk/bsd.port.mk:2956
> '/build/tmp/pobj//ruby-2.6.9/.build_done': @cd
> /build/tmp/pobj//ruby-2.6.9...)
> *** Error 2 in /home/ports/lang/ruby/2.6 (/home/ports//infrastructure/mk/
> bsd.port.mk:2602 'all': @lock=ruby-2.6.9;  export _LOCKS_HELD=" rub...)
>
>
Looks like we need a -std=c99 in there.  Does adding CFLAGS="${CFLAGS}
-std=c99" to CONFIGURE_ENV fix the issue?

I believe this is an upstream bug.  IIRC, Ruby didn't require C99 until
Ruby 2.7.  So basically a bug fix must have been backported to Ruby 2.6
without checking for C99 issues.  I'll raise the issue upstream.

Thanks,
Jeremy

Reply via email to