On Thu, Jun 02, 2022 at 09:17:43AM +0200, John Paul Adrian Glaubitz wrote:
> Source: ruby3.1
> Version: 3.1.2-1
> Severity: normal
> Tags: patch
> 
> Hello!
> 
> ruby3.1 FTBFS on x32 because the configure misdetects x32 as amd64:
> 
> checking stack growing direction on x86_64... -1
> checking native coroutine implementation for x86_64-linux-gnux32... 
> configure: error: '' is not supported as coroutine
> make[1]: *** [debian/rules:91: override_dh_auto_configure] Error 1
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
> 
> This can be fixed by building ruby3.1 on x32 with "--with-coroutine=ucontext".
> 
> Can you apply the attached patch?

I could, but ...

> --- old/ruby3.1-3.1.2/debian/rules    2022-04-22 14:43:42.000000000 +0200
> +++ new/ruby3.1-3.1.2/debian/rules    2022-06-02 09:13:18.435655355 +0200
> @@ -40,6 +40,10 @@
>  configure_options += CXX=$(DEB_HOST_GNU_TYPE)-g++
>  configure_options += LD=$(DEB_HOST_GNU_TYPE)-ld
>  
> +ifeq (x32 ,$(DEB_HOST_ARCH))
> +configure_options += --with-coroutine=ucontext
> +endif
> +
>  ifneq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
>  # Cross-building. This is the same logic that debhelper's
>  # lib/Debian/Debhelper/Buildsystem/autoconf.pm uses.

isn't this something that should be done in configure.ac instead (and
submitted upstream)? there's a big switch statement there to select the
type of coroutine.

Attachment: signature.asc
Description: PGP signature

Reply via email to