Bug#1066703: rxtx: FTBFS: SerialImp.c:5453:23: error: implicit declaration of function ‘major’ [-Werror=implicit-function-declaration]

Lucas Nussbaum lucas at debian.org
Wed Mar 13 11:56:29 GMT 2024


Source: rxtx
Version: 2.2.0+dfsg-2
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lucas at debian.org
Usertags: ftbfs-20240313 ftbfs-trixie ftbfs-impfuncdef

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.

This is most likely caused by a change in dpkg 1.22.6, that enabled
-Werror=implicit-function-declaration. For more information, see
https://wiki.debian.org/qa.debian.org/FTBFS#A2024-03-13_-Werror.3Dimplicit-function-declaration

Relevant part (hopefully):
> 	/bin/bash /<<PKGBUILDDIR>>/libtool --mode=link gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -D_POSIX_SOURCE -D_BSD_SOURCE -D__need_timespec -Wl,-z,relro -lpthread -release 2.1-7 -o librxtxSerial.la -rpath /usr/lib/jni /<<PKGBUILDDIR>>/x86_64-pc-linux-gnu/SerialImp.lo; 	\
> fi;								\
> )
> libtool: compile:  gcc -I/<<PKGBUILDDIR>> -Ix86_64-pc-linux-gnu -I. -I/usr/lib/jvm/java-17-openjdk-amd64/include -I/usr/lib/jvm/java-17-openjdk-amd64/include/./linux/ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -D_POSIX_SOURCE -D_BSD_SOURCE -D__need_timespec -c /<<PKGBUILDDIR>>/./src/SerialImp.c  -fPIC -DPIC -o /<<PKGBUILDDIR>>/x86_64-pc-linux-gnu/.libs/SerialImp.o
> In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
>                  from /usr/include/stdio.h:27,
>                  from /usr/lib/jvm/java-17-openjdk-amd64/include/jni.h:39,
>                  from ./gnu_io_RXTXPort.h:2,
>                  from /<<PKGBUILDDIR>>/./src/SerialImp.c:64:
> /usr/include/features.h:195:3: warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp]
>   195 | # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
>       |   ^~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘uucp_lock’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5453:23: error: implicit declaration of function ‘major’ [-Werror=implicit-function-declaration]
>  5453 |                 (int) major( buf.st_dev ),
>       |                       ^~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5455:23: error: implicit declaration of function ‘minor’ [-Werror=implicit-function-declaration]
>  5455 |                 (int) minor( buf.st_rdev )
>       |                       ^~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘is_device_locked’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5863:33: error: implicit declaration of function ‘asprintf’; did you mean ‘vsprintf’? [-Werror=implicit-function-declaration]
>  5863 |                                 asprintf( &file, "%s/%s%s", lockdirs[i],
>       |                                 ^~~~~~~~
>       |                                 vsprintf
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘fhs_lock’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5377:9: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
>  5377 |         write( fd, lockinfo, 11 );
>       |         ^~~~~~~~~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘uucp_lock’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5475:9: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
>  5475 |         write( fd, lockinfo,11 );
>       |         ^~~~~~~~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘is_device_locked’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5940:17: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
>  5940 |                 read( fd, pid_buffer, 11 );
>       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘Java_gnu_io_RXTXCommDriver_registerKnownPorts’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:4676:43: warning: ‘ handed to 				native RXTXCo...’ directive writing 71 bytes into a region of size between 52 and 62 [-Wformat-overflow=]
>  4676 |                         sprintf( message, "unknown portType %d handed to \
>       |                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>  4677 |                                 native RXTXCommDriver.registerKnownPorts() \
>       |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>  4678 |                                  method.\n",
>       |                                  ~~~~~~~~~~
> In file included from /usr/include/stdio.h:906:
> In function ‘sprintf’,
>     inlined from ‘Java_gnu_io_RXTXCommDriver_registerKnownPorts’ at /<<PKGBUILDDIR>>/./src/SerialImp.c:4676:4:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 90 and 100 bytes into a destination of size 80
>    30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    31 |                                   __glibc_objsize (__s), __fmt,
>       |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    32 |                                   __va_arg_pack ());
>       |                                   ~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘uucp_unlock’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5595:66: warning: ‘%s’ directive writing up to 79 bytes into a region of size 50 [-Wformat-overflow=]
>  5595 |                 sprintf( message, "uucp_unlock: unlinking failed %s\n", file );
>       |                                                                  ^~     ~~~~
> In function ‘sprintf’,
>     inlined from ‘uucp_unlock’ at /<<PKGBUILDDIR>>/./src/SerialImp.c:5595:3:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 32 and 111 bytes into a destination of size 80
>    30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    31 |                                   __glibc_objsize (__s), __fmt,
>       |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    32 |                                   __va_arg_pack ());
>       |                                   ~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘uucp_unlock’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5589:59: warning: ‘%s’ directive writing up to 79 bytes into a region of size 57 [-Wformat-overflow=]
>  5589 |                 sprintf( message, "uucp_unlock: unlinking %s\n", file );
>       |                                                           ^~     ~~~~
> In function ‘sprintf’,
>     inlined from ‘uucp_unlock’ at /<<PKGBUILDDIR>>/./src/SerialImp.c:5589:3:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 25 and 104 bytes into a destination of size 80
>    30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    31 |                                   __glibc_objsize (__s), __fmt,
>       |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    32 |                                   __va_arg_pack ());
>       |                                   ~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘fhs_lock’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5369:69: warning: ‘%s’ directive output may be truncated writing up to 79 bytes into a region of size 36 [-Wformat-truncation=]
>  5369 |                         "RXTX fhs_lock() Error: creating lock file: %s: %s\n",
>       |                                                                     ^~
>  5370 |                         file, strerror(errno) );
>       |                         ~~~~                                         
> In function ‘snprintf’,
>     inlined from ‘fhs_lock’ at /<<PKGBUILDDIR>>/./src/SerialImp.c:5368:3:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:54:10: note: ‘__builtin___snprintf_chk’ output 47 or more bytes (assuming 126) into a destination of size 79
>    54 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    55 |                                    __glibc_objsize (__s), __fmt,
>       |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    56 |                                    __va_arg_pack ());
>       |                                    ~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘uucp_lock’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5470:70: warning: ‘%s’ directive writing up to 79 bytes into a region of size 36 [-Wformat-overflow=]
>  5470 |                         "RXTX uucp_lock() Error: creating lock file: %s\n",
>       |                                                                      ^~
>  5471 |                         lockfilename );
>       |                         ~~~~~~~~~~~~                                  
> In function ‘sprintf’,
>     inlined from ‘uucp_lock’ at /<<PKGBUILDDIR>>/./src/SerialImp.c:5469:3:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 46 and 125 bytes into a destination of size 80
>    30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    31 |                                   __glibc_objsize (__s), __fmt,
>       |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    32 |                                   __va_arg_pack ());
>       |                                   ~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘uucp_lock’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5460:53: warning: ‘%s’ directive writing up to 79 bytes into a region of size 63 [-Wformat-overflow=]
>  5460 |                 sprintf( message, "RXTX uucp_lock() %s is there\n",
>       |                                                     ^~
>  5461 |                         lockfilename );
>       |                         ~~~~~~~~~~~~                 
> In function ‘sprintf’,
>     inlined from ‘uucp_lock’ at /<<PKGBUILDDIR>>/./src/SerialImp.c:5460:3:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 28 and 107 bytes into a destination of size 80
>    30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    31 |                                   __glibc_objsize (__s), __fmt,
>       |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    32 |                                   __va_arg_pack ());
>       |                                   ~~~~~~~~~~~~~~~~~
> /<<PKGBUILDDIR>>/./src/SerialImp.c: In function ‘uucp_lock’:
> /<<PKGBUILDDIR>>/./src/SerialImp.c:5447:58: warning: ‘%s’ directive writing up to 79 bytes into a region of size 58 [-Wformat-overflow=]
>  5447 |                 sprintf( message, "uucp_lock: device was %s\n", name );
>       |                                                          ^~     ~~~~
> In function ‘sprintf’,
>     inlined from ‘uucp_lock’ at /<<PKGBUILDDIR>>/./src/SerialImp.c:5447:3:
> /usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 24 and 103 bytes into a destination of size 80
>    30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    31 |                                   __glibc_objsize (__s), __fmt,
>       |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    32 |                                   __va_arg_pack ());
>       |                                   ~~~~~~~~~~~~~~~~~
> cc1: some warnings being treated as errors
> libtool: compile:  gcc -I/<<PKGBUILDDIR>> -Ix86_64-pc-linux-gnu -I. -I/usr/lib/jvm/java-17-openjdk-amd64/include -I/usr/lib/jvm/java-17-openjdk-amd64/include/./linux/ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -D_POSIX_SOURCE -D_BSD_SOURCE -D__need_timespec -c /<<PKGBUILDDIR>>/./src/fuserImp.c  -fPIC -DPIC -o /<<PKGBUILDDIR>>/x86_64-pc-linux-gnu/.libs/fuserImp.o
> In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
>                  from /usr/include/stdio.h:27,
>                  from /usr/lib/jvm/java-17-openjdk-amd64/include/jni.h:39,
>                  from ./gnu_io_CommPortIdentifier.h:2,
>                  from /<<PKGBUILDDIR>>/./src/fuserImp.c:4:
> /usr/include/features.h:195:3: warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp]
>   195 | # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
>       |   ^~~~~~~
> /<<PKGBUILDDIR>>/./src/fuserImp.c: In function ‘show_user’:
> /<<PKGBUILDDIR>>/./src/fuserImp.c:206:16: warning: ignoring return value of ‘fscanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
>   206 |         (void) fscanf(f,"%d (%[^)]",&dummy,comm);
>       |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> libtool:   error: '/<<PKGBUILDDIR>>/x86_64-pc-linux-gnu/SerialImp.lo' is not a valid libtool object
> make[2]: *** [Makefile:825: x86_64-pc-linux-gnu/librxtxSerial.la] Error 1


The full build log is available from:
http://qa-logs.debian.net/2024/03/13/rxtx_2.2.0+dfsg-2_unstable.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240313;users=lucas@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240313&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.



More information about the pkg-java-maintainers mailing list