Source: phalanx
Version: 25-1.1
Severity: minor
Tags: trixie sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-shuffle

Hi,

GNU Make now has a --shuffle option that simulates non-deterministic ordering
of target prerequisites. See
https://trofi.github.io/posts/238-new-make-shuffle-mode.html and also previous
work in Debian by Santiago Vila:
https://people.debian.org/~sanvila/make-shuffle/

This package fails to build with make --shuffle=reverse.
This is likely to be caused by a missing dependency in
debian/rules or an upstream Makefile.

More information about this mass bug filing is available at
https://wiki.debian.org/qa.debian.org/FTBFS/Shuffle

Relevant part (hopefully):
> make[1]: Entering directory '/build/reproducible-path/phalanx-25'
> makefile:45: update target '.o/easy.o' due to: target does not exist
> cc -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 
> -Werror=implicit-function-declaration 
> -ffile-prefix-map=/build/reproducible-path/phalanx-25=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -DGNUFUN 
> -DPBOOK_DIR=\"/usr/share/phalanx\" -DSBOOK_DIR=\"/usr/share/phalanx\" 
> -DLEARN_DIR=\"/var/games\" -DLEARN_FILE=\"phalanx.learn\" -c easy.c -o 
> .o/easy.o
> makefile:45: update target '.o/learn.o' due to: target does not exist
> cc -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 
> -Werror=implicit-function-declaration 
> -ffile-prefix-map=/build/reproducible-path/phalanx-25=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -DGNUFUN 
> -DPBOOK_DIR=\"/usr/share/phalanx\" -DSBOOK_DIR=\"/usr/share/phalanx\" 
> -DLEARN_DIR=\"/var/games\" -DLEARN_FILE=\"phalanx.learn\" -c learn.c -o 
> .o/learn.o
> makefile:45: update target '.o/endgame.o' due to: target does not exist
> cc -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 
> -Werror=implicit-function-declaration 
> -ffile-prefix-map=/build/reproducible-path/phalanx-25=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -DGNUFUN 
> -DPBOOK_DIR=\"/usr/share/phalanx\" -DSBOOK_DIR=\"/usr/share/phalanx\" 
> -DLEARN_DIR=\"/var/games\" -DLEARN_FILE=\"phalanx.learn\" -c endgame.c -o 
> .o/endgame.o
> makefile:45: update target '.o/killers.o' due to: target does not exist
> cc -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 
> -Werror=implicit-function-declaration 
> -ffile-prefix-map=/build/reproducible-path/phalanx-25=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -DGNUFUN 
> -DPBOOK_DIR=\"/usr/share/phalanx\" -DSBOOK_DIR=\"/usr/share/phalanx\" 
> -DLEARN_DIR=\"/var/games\" -DLEARN_FILE=\"phalanx.learn\" -c killers.c -o 
> .o/killers.o
> makefile:45: update target '.o/book.o' due to: target does not exist
> cc -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 
> -Werror=implicit-function-declaration 
> -ffile-prefix-map=/build/reproducible-path/phalanx-25=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -DGNUFUN 
> -DPBOOK_DIR=\"/usr/share/phalanx\" -DSBOOK_DIR=\"/usr/share/phalanx\" 
> -DLEARN_DIR=\"/var/games\" -DLEARN_FILE=\"phalanx.learn\" -c book.c -o 
> .o/book.o
> makefile:45: update target '.o/levels.o' due to: target does not exist
> cc -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 
> -Werror=implicit-function-declaration 
> -ffile-prefix-map=/build/reproducible-path/phalanx-25=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -DGNUFUN 
> -DPBOOK_DIR=\"/usr/share/phalanx\" -DSBOOK_DIR=\"/usr/share/phalanx\" 
> -DLEARN_DIR=\"/var/games\" -DLEARN_FILE=\"phalanx.learn\" -c levels.c -o 
> .o/levels.o
> makefile:45: update target '.o/static.o' due to: target does not exist
> cc -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 
> -Werror=implicit-function-declaration 
> -ffile-prefix-map=/build/reproducible-path/phalanx-25=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -DGNUFUN 
> -DPBOOK_DIR=\"/usr/share/phalanx\" -DSBOOK_DIR=\"/usr/share/phalanx\" 
> -DLEARN_DIR=\"/var/games\" -DLEARN_FILE=\"phalanx.learn\" -c static.c -o 
> .o/static.o
> makefile:45: update target '.o/hash.o' due to: target does not exist
> cc -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 
> -Werror=implicit-function-declaration 
> -ffile-prefix-map=/build/reproducible-path/phalanx-25=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -DGNUFUN 
> -DPBOOK_DIR=\"/usr/share/phalanx\" -DSBOOK_DIR=\"/usr/share/phalanx\" 
> -DLEARN_DIR=\"/var/games\" -DLEARN_FILE=\"phalanx.learn\" -c hash.c -o 
> .o/hash.o
> book.c: In function ‘myfread’:
> book.c:29:35: warning: ignoring return value of ‘fread’ declared with 
> attribute ‘warn_unused_result’ [-Wunused-result]
>    29 |         { for( j=0; j!=ISI; j++ ) fread( (char*)ptr+i+j, 1, 1, stream 
> ); }
>       |                                   
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> book.c:30:35: warning: ignoring return value of ‘fread’ declared with 
> attribute ‘warn_unused_result’ [-Wunused-result]
>    30 |         for( j=0; i+j<size; j++ ) fread( (char*)ptr+i+j, 1, 1, stream 
> );
>       |                                   
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> book.c: In function ‘linSB’:
> book.c:99:22: warning: ignoring return value of ‘fgets’ declared with 
> attribute ‘warn_unused_result’ [-Wunused-result]
>    99 |         if(!feof(f)) fgets(s,80,f);     /* skip to the first \n */
>       |                      ^~~~~~~~~~~~~
> book.c:103:17: warning: ignoring return value of ‘fgets’ declared with 
> attribute ‘warn_unused_result’ [-Wunused-result]
>   103 |                 fgets(s,100,f);
>       |                 ^~~~~~~~~~~~~~
> book.c: In function ‘binSB’:
> book.c:123:22: warning: ignoring return value of ‘fgets’ declared with 
> attribute ‘warn_unused_result’ [-Wunused-result]
>   123 |         if(!feof(f)) fgets(s,80,f);     /* skip to the first \n */
>       |                      ^~~~~~~~~~~~~
> book.c:125:22: warning: ignoring return value of ‘fgets’ declared with 
> attribute ‘warn_unused_result’ [-Wunused-result]
>   125 |         if(!feof(f)) fgets(s,100,f);
>       |                      ^~~~~~~~~~~~~~
> book.c: In function ‘bk’:
> book.c:474:19: warning: ignoring return value of ‘fgets’ declared with 
> attribute ‘warn_unused_result’ [-Wunused-result]
>   474 |                   fgets(t,126,Eco);
>       |                   ^~~~~~~~~~~~~~~~
> Assembler messages:
> Fatal error: can't create .o/learn.o: No such file or directory
> make[1]: *** [makefile:45: .o/learn.o] Error 1 shuffle=reverse


The full build log is available from:
http://qa-logs.debian.net/2025/05/05/shuffle/reverse/phalanx_25-1.1_unstable_reverse.log

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

Reply via email to