Bug#1098139: xgalaga: ftbfs with GCC-15

Matthias Klose doko at debian.org
Mon Feb 17 18:01:42 GMT 2025


Package: src:xgalaga
Version: 2.1.1.0-7
Severity: important
Tags: sid forky
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-15

[This bug is NOT targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/xgalaga_2.1.1.0-7_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other Common build failures are new warnings resulting in build failures
with -Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-15/porting_to.html

[...]
buffer.c: In function ‘W_DisplayBuffer’:
buffer.c:50:1: warning: old-style function definition [-Wold-style-definition]
   50 | W_DisplayBuffer(window)
      | ^~~~~~~~~~~~~~~
data.c:83:9: error: conflicting types for ‘strdup’; have ‘char *(void)’
   83 | char   *strdup();
      |         ^~~~~~
In file included from data.c:8:
/usr/include/string.h:187:14: note: previous declaration of ‘strdup’ with type ‘char *(const char *)’
  187 | extern char *strdup (const char *__s)
      |              ^~~~~~
make[2]: *** [<builtin>: data.o] Error 1
make[2]: *** Waiting for unfinished jobs....
x86_64-linux-gnu-gcc -I. -Wall -g -DXF86VIDMODE -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/xgalaga-2.1.1.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -O2 -DHAVE_CONFIG_H  -DXGALAGADIR=\"/usr/share/games/xgalaga/\" -DSOUNDSERVER=\"/usr/lib/games/xgalaga/xgal.sndsrv.oss\" -DORIGINAL_XGALAGA -c highscore.c -o highscore.o
x86_64-linux-gnu-gcc -I. -Wall -g -DXF86VIDMODE -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/xgalaga-2.1.1.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -O2 -DHAVE_CONFIG_H  -DXGALAGADIR=\"/usr/share/games/xgalaga/\" -DSOUNDSERVER=\"/usr/lib/games/xgalaga/xgal.sndsrv.oss\" -DORIGINAL_XGALAGA -c prize.c -o prize.o
score.c: In function ‘draw_score’:
score.c:92:27: warning: ‘%d’ directive writing between 1 and 10 bytes into a region of size 4 [-Wformat-overflow=]
   92 |         sprintf(shipstr, "%d", ships);
      |                           ^~
score.c:92:26: note: directive argument in the range [7, 2147483647]
   92 |         sprintf(shipstr, "%d", ships);
      |                          ^~~~
In file included from /usr/include/stdio.h:970,
                 from score.c:6:
In function ‘sprintf’,
    inlined from ‘draw_score’ at score.c:92:2:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 2 and 11 bytes into a destination of size 4
   30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   31 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   32 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
x86_64-linux-gnu-gcc -I. -Wall -g -DXF86VIDMODE -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/xgalaga-2.1.1.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -O2 -DHAVE_CONFIG_H  -DXGALAGADIR=\"/usr/share/games/xgalaga/\" -DSOUNDSERVER=\"/usr/lib/games/xgalaga/xgal.sndsrv.oss\" -DORIGINAL_XGALAGA -c sound.c -o sound.o
x86_64-linux-gnu-gcc -I. -Wall -g -DXF86VIDMODE -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/xgalaga-2.1.1.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -O2 -DHAVE_CONFIG_H  -DXGALAGADIR=\"/usr/share/games/xgalaga/\" -DSOUNDSERVER=\"/usr/lib/games/xgalaga/xgal.sndsrv.oss\" -DORIGINAL_XGALAGA -c nas_sound.c -o nas_sound.o
x86_64-linux-gnu-gcc -I. -Wall -g -DXF86VIDMODE -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/xgalaga-2.1.1.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -O2 -DHAVE_CONFIG_H  -DXGALAGADIR=\"/usr/share/games/xgalaga/\" -DSOUNDSERVER=\"/usr/lib/games/xgalaga/xgal.sndsrv.oss\" -DORIGINAL_XGALAGA -c frate.c -o frate.o
x86_64-linux-gnu-gcc -I. -Wall -g -DXF86VIDMODE -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/xgalaga-2.1.1.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -O2 -DHAVE_CONFIG_H  -DXGALAGADIR=\"/usr/share/games/xgalaga/\" -DSOUNDSERVER=\"/usr/lib/games/xgalaga/xgal.sndsrv.oss\" -DORIGINAL_XGALAGA -c linux-joystick.c -o linux-joystick.o
sound.c: In function ‘play_sound’:
sound.c:87:6: warning: old-style function definition [-Wold-style-definition]
   87 | void play_sound (k)
      |      ^~~~~~~~~~
sound.c: In function ‘maybe_play_sound’:
sound.c:100:6: warning: old-style function definition [-Wold-style-definition]
  100 | void maybe_play_sound (k)
      |      ^~~~~~~~~~~~~~~~
sound.c: In function ‘sound_completed’:
sound.c:117:6: warning: old-style function definition [-Wold-style-definition]
  117 | void sound_completed (k)
      |      ^~~~~~~~~~~~~~~
make[2]: Leaving directory '/build/reproducible-path/xgalaga-2.1.1.0/libsprite'
make[1]: *** [Makefile:78: subdirs] Error 2
make[1]: *** Waiting for unfinished jobs....
highscore.c: In function ‘show_scores’:
highscore.c:385:30: warning: ‘%-20s’ directive writing between 20 and 399 bytes into a region of size 54 [-Wformat-overflow=]
  385 |         sprintf(buf, "  %2d. %-20s     %7ld %5ld", i+1,
      |                              ^~~~~
In file included from /usr/include/stdio.h:970,
                 from highscore.c:7:
In function ‘sprintf’,
    inlined from ‘show_scores’ at highscore.c:385:2:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 45 and 452 bytes into a destination of size 60
   30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   31 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   32 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/build/reproducible-path/xgalaga-2.1.1.0'
make: *** [debian/rules:29: build-stamp] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-games-devel mailing list