#1075681 xserver-xorg-input-mutouch: ftbfs with GCC-14

#1075681#5
Date:
2024-07-03 12:49:18 UTC
From:
To:
[This bug is 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-14/g++-14, but succeeds to build with gcc-13/g++-13. The
severity of this report will be raised before the trixie release.

The full build log can be found at:
http://qa-logs.debian.net/2024/07/01/xserver-xorg-input-mutouch_1.3.0-3_unstable_gccexp.log
The last lines of the build log are at the end of this report.

To build with GCC 14, either set CC=gcc-14 CXX=g++-14 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-14/porting_to.html

[...]
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for gcc... (cached) gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to enable C11 features... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) none
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking if RANDR is defined... yes
checking if XINPUT is defined... yes
checking for xorg-server >= 1.10.0 xproto  randrproto inputproto... yes
checking for egrep... (cached) /usr/bin/grep -E
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating man/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
   dh_auto_build -O--builddirectory=build/
dh_auto_build: warning: Compatibility levels before 10 are deprecated (level 8 in use)
	cd build && make -j1
make[1]: Entering directory '/<<PKGBUILDDIR>>/build'
make  all-recursive
make[2]: Entering directory '/<<PKGBUILDDIR>>/build'
Making all in src
make[3]: Entering directory '/<<PKGBUILDDIR>>/build/src'
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../src -I..    -I/usr/include/xorg -fvisibility=hidden -I/usr/include/pixman-1 -I/usr/include/X11/dri -I/usr/include/libdrm  -g -O2 -c -o xf86MuTouch.lo ../../src/xf86MuTouch.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../src -I.. -I/usr/include/xorg -fvisibility=hidden -I/usr/include/pixman-1 -I/usr/include/X11/dri -I/usr/include/libdrm -g -O2 -c ../../src/xf86MuTouch.c  -fPIC -DPIC -o .libs/xf86MuTouch.o
../../src/xf86MuTouch.c: In function ‘xf86MuTReadInput’:
../../src/xf86MuTouch.c:270:5: error: implicit declaration of function ‘Error’; did you mean ‘ErrorF’? [-Wimplicit-function-declaration]
  270 |     Error("System error while reading from MuTouch touchscreen.");
      |     ^~~~~
      |     ErrorF
../../src/xf86MuTouch.c: In function ‘xf86MuTControl’:
../../src/xf86MuTouch.c:848:9: error: implicit declaration of function ‘AddEnabledDevice’; did you mean ‘xf86AddEnabledDevice’? [-Wimplicit-function-declaration]
  848 |         AddEnabledDevice(pInfo->fd);
      |         ^~~~~~~~~~~~~~~~
      |         xf86AddEnabledDevice
../../src/xf86MuTouch.c: In function ‘xf86MuTInit’:
../../src/xf86MuTouch.c:1077:7: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
 1077 |   str = xf86FindOptionValue(pInfo->options, "Type");
      |       ^
../../src/xf86MuTouch.c:1094:7: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
 1094 |   str = xf86FindOptionValue(pInfo->options, "Device");
      |       ^
../../src/xf86MuTouch.c:1138:7: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
 1138 |   str = xf86FindOptionValue(pInfo->options, "DeviceName");
      |       ^
../../src/xf86MuTouch.c: At top level:
../../src/xf86MuTouch.c:1242:5: error: initialization of ‘const char **’ from incompatible pointer type ‘char **’ [-Wincompatible-pointer-types]
 1242 |     default_options,
      |     ^~~~~~~~~~~~~~~
../../src/xf86MuTouch.c:1242:5: note: (near initialization for ‘MUTOUCH.default_options’)
make[3]: *** [Makefile:463: xf86MuTouch.lo] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build/src'
make[2]: *** [Makefile:436: all-recursive] Error 1
make[2]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[1]: *** [Makefile:368: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>/build'
dh_auto_build: error: cd build && make -j1 returned exit code 2
make: *** [debian/rules:17: build] Error 255
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2