Control: tag -1 patch On Wed, Jul 03, 2024 at 12:41:30PM +0000, Matthias Klose wrote: > Package: src:qdbm > Version: 1.8.78-12.1 > Severity: important > Tags: sid trixie > User: debian-...@lists.debian.org > Usertags: ftbfs-gcc-14
The actual error here is make[1]: Entering directory '/<<PKGBUILDDIR>>/ruby/curia' gcc -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=. -I. -I/usr/include/x86_64-linux-gnu/ruby-3.1.0 -I/usr/include/ruby-3.1.0/ruby/backward -I/usr/include/ruby-3.1.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I. -I../.. -I/nonexistent/include -I/usr/local/include -o mod_curia.o -c mod_curia.c mod_curia.c:92:1: error: return type defaults to ‘int’ [-Wimplicit-int] 92 | Init_mod_curia(){ | ^~~~~~~~~~~~~~ make[1]: *** [Makefile:253: mod_curia.o] Error 1 make[1]: Leaving directory '/<<PKGBUILDDIR>>/ruby/curia' and it is fixed by declaring the Ruby extension Init_* functions as void. Patch attached. The build succeeds for me with this on current sid. I have not tested the resulting binaries in any way (but it looked like the build includes a test suite of some kind.) Hope this helps, -- Niko Tyni nt...@debian.org
From: Niko Tyni <nt...@debian.org> Date: Fri, 2 Aug 2024 18:58:34 +0100 X-Dgit-Generated: 1.8.78-12.1 107c05d8cdc8a28b0d0abd837c0abe4bef8c9f48 Subject: Mark Ruby init functions as void This fixes building with GCC 14. mod_curia.c:92:1: error: return type defaults to ‘int’ [-Wimplicit-int] 92 | Init_mod_curia(){ | ^~~~~~~~~~~~~~ make[1]: *** [Makefile:253: mod_curia.o] Error 1 Bug-Debian: https://bugs.debian.org/1075427 --- diff --git a/ruby/curia/mod_curia.c b/ruby/curia/mod_curia.c index 5774ef5..de681eb 100644 --- a/ruby/curia/mod_curia.c +++ b/ruby/curia/mod_curia.c @@ -89,7 +89,7 @@ static VALUE rbcrfatalerror(VALUE vself, VALUE vindex); *************************************************************************************************/ -Init_mod_curia(){ +void Init_mod_curia(){ crinit(); ccuriaerror = rb_define_class("CuriaError", rb_eStandardError); ccuriaerror_ENOERR = rb_define_class("CuriaError_ENOERR", ccuriaerror); diff --git a/ruby/depot/mod_depot.c b/ruby/depot/mod_depot.c index b9f46d6..7438e62 100644 --- a/ruby/depot/mod_depot.c +++ b/ruby/depot/mod_depot.c @@ -88,7 +88,7 @@ static VALUE rbdpfatalerror(VALUE vself, VALUE vindex); *************************************************************************************************/ -Init_mod_depot(){ +void Init_mod_depot(){ dpinit(); cdepoterror = rb_define_class("DepotError", rb_eStandardError); cdepoterror_ENOERR = rb_define_class("DepotError_ENOERR", cdepoterror); diff --git a/ruby/villa/mod_villa.c b/ruby/villa/mod_villa.c index 80b83a0..5695b36 100644 --- a/ruby/villa/mod_villa.c +++ b/ruby/villa/mod_villa.c @@ -102,7 +102,7 @@ static VALUE rbvltranabort(VALUE vself, VALUE vindex); *************************************************************************************************/ -Init_mod_villa(){ +void Init_mod_villa(){ vlinit(); cvillaerror = rb_define_class("VillaError", rb_eStandardError); cvillaerror_ENOERR = rb_define_class("VillaError_ENOERR", cvillaerror);