Bug#984422: xwelltris: ftbfs with GCC-11

Matthias Klose doko at debian.org
Wed Mar 3 16:18:56 GMT 2021


Package: src:xwelltris
Version: 1.0.1-17
Severity: normal
Tags: sid bookworm
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-11

[This bug is not targeted to the upcoming bullseye 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-11/g++-11, but succeeds to build with gcc-10/g++-10. The
severity of this report will be raised before the bookworm release,
so nothing has to be done for the bullseye release.

The full build log can be found at:
http://people.debian.org/~doko/logs/20210228/filtered/gcc11/xwelltris_1.0.1-17_unstable_gcc11.log
The last lines of the build log are at the end of this report.

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

  apt-get -t=experimental install g++ 

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-11/porting_to.html

GCC 11 defaults to the GNU++17 standard.  If your package installs
header files in /usr/include, please don't work around C++17 issues
by choosing a lower C++ standard for the package build, but fix these
issues to build with the C++17 standard.

[...]
./include/welltris.h:30:25: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   30 | #define SCOREFILE       "welltris.scores"
      |                         ^~~~~~~~~~~~~~~~~
welltopnine.cxx:336:27: note: in expansion of macro ‘SCOREFILE’
  336 |   find_full_path_for_file(SCOREFILE,fname,ReadWrite);
      |                           ^~~~~~~~~
g++ -c `sdl-config --cflags` -I./sdl  -DHAVE_CONFIG_H -I. -I./.. -I./image -I./include -I../include -DHAVE_CONFIG_H  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security  wellintro.cxx -o wellintro.o
wellintro.cxx: In constructor ‘WellIntro::WellIntro()’:
wellintro.cxx:41:46: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   41 |   key_exit=default_well_engine->new_well_key("intro_key_exit");
      |                                              ^~~~~~~~~~~~~~~~
wellintro.cxx:42:50: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   42 |   key_new_game=default_well_engine->new_well_key("intro_key_new_game");
      |                                                  ^~~~~~~~~~~~~~~~~~~~
wellintro.cxx:43:50: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   43 |   key_top_nine=default_well_engine->new_well_key("intro_key_top_nine");
      |                                                  ^~~~~~~~~~~~~~~~~~~~
wellintro.cxx:44:46: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   44 |   key_plus=default_well_engine->new_well_key("intro_key_plus");
      |                                              ^~~~~~~~~~~~~~~~
wellintro.cxx:45:47: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   45 |   key_minus=default_well_engine->new_well_key("intro_key_minus");
      |                                               ^~~~~~~~~~~~~~~~~
wellintro.cxx:53:52: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   53 |   sw_rotation=default_well_engine->new_well_switch("intro_sw_rotation");
      |                                                    ^~~~~~~~~~~~~~~~~~~
wellintro.cxx:56:54: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   56 |   sw_next_piece=default_well_engine->new_well_switch("intro_sw_next");
      |                                                      ^~~~~~~~~~~~~~~
wellintro.cxx:59:49: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   59 |   sw_mixed=default_well_engine->new_well_switch("intro_sw_mixed");
      |                                                 ^~~~~~~~~~~~~~~~
wellintro.cxx:71:50: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   71 |   inp_player=default_well_engine->new_well_input("intro_inp_player");
      |                                                  ^~~~~~~~~~~~~~~~~~
g++ -c `sdl-config --cflags` -I./sdl  -DHAVE_CONFIG_H -I. -I./.. -I./image -I./include -I../include -DHAVE_CONFIG_H  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security  wellkey.cxx -o wellkey.o
g++ -c `sdl-config --cflags` -I./sdl  -DHAVE_CONFIG_H -I. -I./.. -I./image -I./include -I../include -DHAVE_CONFIG_H  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security  wellswitch.cxx -o wellswitch.o
g++ -c `sdl-config --cflags` -I./sdl  -DHAVE_CONFIG_H -I. -I./.. -I./image -I./include -I../include -DHAVE_CONFIG_H  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security  wellinput.cxx -o wellinput.o
gcc -c `sdl-config --cflags` -I./sdl  -DHAVE_CONFIG_H -I. -I./.. -I./image -I./include -I../include -DHAVE_CONFIG_H  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security  sdl/sdl_gfxprimitives.c -o sdl/sdl_gfxprimitives.o
g++ -c `sdl-config --cflags` -I./sdl  -DHAVE_CONFIG_H -I. -I./.. -I./image -I./include -I../include -DHAVE_CONFIG_H  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security  sdl/sdlwellengine.cxx -o sdl/sdlwellengine.o
g++ -c `sdl-config --cflags` -I./sdl  -DHAVE_CONFIG_H -I. -I./.. -I./image -I./include -I../include -DHAVE_CONFIG_H  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security  sdl/sdlwellimagefont.cxx -o sdl/sdlwellimagefont.o
g++ -c `sdl-config --cflags` -I./sdl  -DHAVE_CONFIG_H -I. -I./.. -I./image -I./include -I../include -DHAVE_CONFIG_H  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security  sdl/sdlwellinput.cxx -o sdl/sdlwellinput.o
g++ -c `sdl-config --cflags` -I./sdl  -DHAVE_CONFIG_H -I. -I./.. -I./image -I./include -I../include -DHAVE_CONFIG_H  -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security  sdl/sdlwelldrawing.cxx -o sdl/sdlwelldrawing.o
sdl/sdlwelldrawing.cxx: In member function ‘virtual void SDLWellDrawingEngine::init(int, int, int, unsigned int, unsigned int)’:
sdl/sdlwelldrawing.cxx:75:21: error: ordered comparison of pointer with integer zero (‘SDL_Surface*’ and ‘int’)
   75 |         if(fields[i]>0)
      |            ~~~~~~~~~^~
make[2]: *** [makefile:77: sdl/sdlwelldrawing.o] Error 1
make[2]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[1]: [Makefile:98: xwelltris] Error 2 (ignored)
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_auto_test
   create-stamp debian/debhelper-build-stamp
   dh_prep
   dh_installdirs
   debian/rules override_dh_auto_install
make[1]: Entering directory '/<<PKGBUILDDIR>>'
/usr/bin/make INSTDIR=/<<PKGBUILDDIR>>/debian/xwelltris/usr/games INSTLIB=/<<PKGBUILDDIR>>/debian/xwelltris/usr/share/games/xwelltris install
make[2]: Entering directory '/<<PKGBUILDDIR>>'
/usr/bin/install -c -d -m 755 /<<PKGBUILDDIR>>/debian/xwelltris/usr/share/games/xwelltris
/usr/bin/install -c -m 644 data/polyomino.dat data/board2.gif data/font2.gif data/topnine.gif data/wellcuts.gif data/wellintro.gif /<<PKGBUILDDIR>>/debian/xwelltris/usr/share/games/xwelltris
/usr/bin/install -c -m 666 data/welltris.scores /<<PKGBUILDDIR>>/debian/xwelltris/usr/share/games/xwelltris
/usr/bin/install -c -s -m 755 xwelltris /<<PKGBUILDDIR>>/debian/xwelltris/usr/games
/usr/bin/install: cannot stat 'xwelltris': No such file or directory
make[2]: *** [Makefile:104: install] Error 1
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: *** [debian/rules:11: override_dh_auto_install] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:4: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-games-devel mailing list