Source: toppler
Version: 1.3-3
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[2]: Entering directory '/build/reproducible-path/toppler-1.3'
> Makefile:476: update target '_build/tools/cremission' due to: target does not 
> exist
> mkdir -p _build/tools/
> g++ -Wall -Wextra -g -O2 -std=c++17 -g -Isrc -o _build/tools/cremission 
> datafile/levels/cremission.cc $(pkg-config --cflags zlib sdl2 libpng 
> SDL2_image) $(pkg-config --libs zlib sdl2 libpng SDL2_image)
> In file included from datafile/levels/cremission.cc:9:
> src/archi.cc:26:17: warning: ‘uint32_t byteswap(uint32_t)’ defined but not 
> used [-Wunused-function]
>    26 | static uint32_t byteswap(uint32_t v)
>       |                 ^~~~~~~~
> Makefile:401: update target '_build/nms_david2.txt' due to: target does not 
> exist
> ( cd _build && tools/cremission "Challenge 2" david2 12 nms_david2.txt \
>       ../datafile/levels/david2/l1 \
>       ../datafile/levels/david2/l2 \
>       ../datafile/levels/david2/l3 \
>       ../datafile/levels/david2/l4 )
> create Challenge 2
> add ../datafile/levels/david2/l1
> add ../datafile/levels/david2/l2
> add ../datafile/levels/david2/l3
> add ../datafile/levels/david2/l4
> finish
> Makefile:386: update target '_build/nms_david1.txt' due to: target does not 
> exist
> ( cd _build && tools/cremission "Challenge 1" david1 12 nms_david1.txt \
>       ../datafile/levels/david1/lev1 \
>       ../datafile/levels/david1/lev2 \
>       ../datafile/levels/david1/lev3 \
>       ../datafile/levels/david1/lev4 \
>       ../datafile/levels/david1/lev5 \
>       ../datafile/levels/david1/lev6 \
>       ../datafile/levels/david1/lev7 \
>       ../datafile/levels/david1/lev8 )
> create Challenge 1
> add ../datafile/levels/david1/lev1
> add ../datafile/levels/david1/lev2
> add ../datafile/levels/david1/lev3
> add ../datafile/levels/david1/lev4
> add ../datafile/levels/david1/lev5
> add ../datafile/levels/david1/lev6
> add ../datafile/levels/david1/lev7
> add ../datafile/levels/david1/lev8
> finish
> Makefile:377: update target '_build/nms_pasi2.txt' due to: target does not 
> exist
> ( cd _build && tools/cremission "Pasis 2 Towers" pasi2 12 nms_pasi2.txt \
>       ../datafile/levels/kallinen2/t1 \
>       ../datafile/levels/kallinen2/t2 )
> create Pasis 2 Towers
> add ../datafile/levels/kallinen2/t1
> add ../datafile/levels/kallinen2/t2
> finish
> Makefile:361: update target '_build/nms_abc.txt' due to: target does not exist
> ( cd _build && tools/cremission "ABC Towers" abc 12 nms_abc.txt \
>       ../datafile/levels/kallinen1/t1 \
>       ../datafile/levels/kallinen1/t2 \
>       ../datafile/levels/kallinen1/t3 \
>       ../datafile/levels/kallinen1/t4 \
>       ../datafile/levels/kallinen1/t5 \
>       ../datafile/levels/kallinen1/t6 \
>       ../datafile/levels/kallinen1/t7 \
>       ../datafile/levels/kallinen1/t8 )
> create ABC Towers
> add ../datafile/levels/kallinen1/t1
> add ../datafile/levels/kallinen1/t2
> add ../datafile/levels/kallinen1/t3
> add ../datafile/levels/kallinen1/t4
> add ../datafile/levels/kallinen1/t5
> add ../datafile/levels/kallinen1/t6
> add ../datafile/levels/kallinen1/t7
> add ../datafile/levels/kallinen1/t8
> finish
> Makefile:345: update target '_build/nms_ball3.txt' due to: target does not 
> exist
> ( cd _build && tools/cremission "Ball 3" ball3 15 nms_ball3.txt \
>       ../datafile/levels/ball3/lev1 \
>       ../datafile/levels/ball3/lev2 \
>       ../datafile/levels/ball3/lev3 \
>       ../datafile/levels/ball3/lev4 \
>       ../datafile/levels/ball3/lev5 \
>       ../datafile/levels/ball3/lev6 \
>       ../datafile/levels/ball3/lev7 \
>       ../datafile/levels/ball3/lev8 )
> create Ball 3
> add ../datafile/levels/ball3/lev1
> add ../datafile/levels/ball3/lev2
> add ../datafile/levels/ball3/lev3
> add ../datafile/levels/ball3/lev4
> add ../datafile/levels/ball3/lev5
> add ../datafile/levels/ball3/lev6
> add ../datafile/levels/ball3/lev7
> add ../datafile/levels/ball3/lev8
> finish
> Makefile:329: update target '_build/nms_ball2.txt' due to: target does not 
> exist
> ( cd _build && tools/cremission "Ball 2" ball2 14 nms_ball2.txt \
>       ../datafile/levels/ball2/lev1 \
>       ../datafile/levels/ball2/lev2 \
>       ../datafile/levels/ball2/lev3 \
>       ../datafile/levels/ball2/lev4 \
>       ../datafile/levels/ball2/lev5 \
>       ../datafile/levels/ball2/lev6 \
>       ../datafile/levels/ball2/lev7 \
>       ../datafile/levels/ball2/lev8 )
> create Ball 2
> add ../datafile/levels/ball2/lev1
> add ../datafile/levels/ball2/lev2
> add ../datafile/levels/ball2/lev3
> add ../datafile/levels/ball2/lev4
> add ../datafile/levels/ball2/lev5
> add ../datafile/levels/ball2/lev6
> add ../datafile/levels/ball2/lev7
> add ../datafile/levels/ball2/lev8
> finish
> Makefile:313: update target '_build/nms_ball1.txt' due to: target does not 
> exist
> ( cd _build && tools/cremission "Ball 1" ball1 13 nms_ball1.txt \
>       ../datafile/levels/ball1/lev1 \
>       ../datafile/levels/ball1/lev2 \
>       ../datafile/levels/ball1/lev3 \
>       ../datafile/levels/ball1/lev4 \
>       ../datafile/levels/ball1/lev5 \
>       ../datafile/levels/ball1/lev6 \
>       ../datafile/levels/ball1/lev7 \
>       ../datafile/levels/ball1/lev8 )
> create Ball 1
> add ../datafile/levels/ball1/lev1
> add ../datafile/levels/ball1/lev2
> add ../datafile/levels/ball1/lev3
> add ../datafile/levels/ball1/lev4
> add ../datafile/levels/ball1/lev5
> add ../datafile/levels/ball1/lev6
> add ../datafile/levels/ball1/lev7
> add ../datafile/levels/ball1/lev8
> finish
> Makefile:297: update target '_build/nms_m2.txt' due to: target does not exist
> ( cd _build && tools/cremission "Mission 2" m2 11 nms_m2.txt \
>       ../datafile/levels/mission2/m2t1 \
>       ../datafile/levels/mission2/m2t2 \
>       ../datafile/levels/mission2/m2t3 \
>       ../datafile/levels/mission2/m2t4 \
>       ../datafile/levels/mission2/m2t5 \
>       ../datafile/levels/mission2/m2t6 \
>       ../datafile/levels/mission2/m2t7 \
>       ../datafile/levels/mission2/m2t8 )
> create Mission 2
> add ../datafile/levels/mission2/m2t1
> add ../datafile/levels/mission2/m2t2
> add ../datafile/levels/mission2/m2t3
> add ../datafile/levels/mission2/m2t4
> add ../datafile/levels/mission2/m2t5
> add ../datafile/levels/mission2/m2t6
> add ../datafile/levels/mission2/m2t7
> add ../datafile/levels/mission2/m2t8
> finish
> Makefile:281: update target '_build/nms_m1.txt' due to: target does not exist
> ( cd _build && tools/cremission "Mission 1" m1 10 nms_m1.txt \
>       ../datafile/levels/mission1/m1t1 \
>       ../datafile/levels/mission1/m1t2 \
>       ../datafile/levels/mission1/m1t3 \
>       ../datafile/levels/mission1/m1t4 \
>       ../datafile/levels/mission1/m1t5 \
>       ../datafile/levels/mission1/m1t6 \
>       ../datafile/levels/mission1/m1t7 \
>       ../datafile/levels/mission1/m1t8 )
> create Mission 1
> add ../datafile/levels/mission1/m1t1
> add ../datafile/levels/mission1/m1t2
> add ../datafile/levels/mission1/m1t3
> add ../datafile/levels/mission1/m1t4
> add ../datafile/levels/mission1/m1t5
> add ../datafile/levels/mission1/m1t6
> add ../datafile/levels/mission1/m1t7
> add ../datafile/levels/mission1/m1t8
> finish
> Makefile:508: update target '_build/toppler.pot' due to: target does not exist
> xgettext --c++ -o - -k_ -kN_ src/archi.cc src/bonus.cc src/configuration.cc 
> src/decl.cc src/elevators.cc src/game.cc src/highscore.cc src/keyb.cc 
> src/level.cc src/leveledit.cc src/main.cc src/menu.cc src/menusys.cc 
> src/points.cc src/robots.cc src/screen.cc src/snowball.cc src/sound.cc 
> src/soundsys.cc src/sprites.cc src/stars.cc src/toppler.cc src/txtsys.cc 
> _build/nms_m1.txt _build/nms_m2.txt _build/nms_ball1.txt _build/nms_ball2.txt 
> _build/nms_ball3.txt _build/nms_abc.txt _build/nms_pasi2.txt 
> _build/nms_david1.txt _build/nms_david2.txt > _build/toppler.pot
> Makefile:511: update target 'src/po/sv.po' due to: _build/toppler.pot
> msgmerge -U src/po/sv.po _build/toppler.pot
> ................................ done.
> Makefile:105: update target 'locale/sv/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> mkdir -p locale/sv/LC_MESSAGES/
> msgfmt src/po/sv.po -o locale/sv/LC_MESSAGES/toppler.mo
> Makefile:109: update target 
> 'debian/toppler/usr/share/locale/sv/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> install -m755 -d debian/toppler/usr/share/locale/sv/LC_MESSAGES/
> install -m644 locale/sv/LC_MESSAGES/toppler.mo 
> debian/toppler/usr/share/locale/sv/LC_MESSAGES/toppler.mo
> Makefile:511: update target 'src/po/ro.po' due to: _build/toppler.pot
> msgmerge -U src/po/ro.po _build/toppler.pot
> ................................ done.
> Makefile:105: update target 'locale/ro/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> mkdir -p locale/ro/LC_MESSAGES/
> msgfmt src/po/ro.po -o locale/ro/LC_MESSAGES/toppler.mo
> Makefile:109: update target 
> 'debian/toppler/usr/share/locale/ro/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> install -m755 -d debian/toppler/usr/share/locale/ro/LC_MESSAGES/
> install -m644 locale/ro/LC_MESSAGES/toppler.mo 
> debian/toppler/usr/share/locale/ro/LC_MESSAGES/toppler.mo
> Makefile:511: update target 'src/po/pt.po' due to: _build/toppler.pot
> msgmerge -U src/po/pt.po _build/toppler.pot
> ..................................... done.
> Makefile:105: update target 'locale/pt/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> mkdir -p locale/pt/LC_MESSAGES/
> msgfmt src/po/pt.po -o locale/pt/LC_MESSAGES/toppler.mo
> Makefile:109: update target 
> 'debian/toppler/usr/share/locale/pt/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> install -m755 -d debian/toppler/usr/share/locale/pt/LC_MESSAGES/
> install -m644 locale/pt/LC_MESSAGES/toppler.mo 
> debian/toppler/usr/share/locale/pt/LC_MESSAGES/toppler.mo
> Makefile:511: update target 'src/po/fr.po' due to: _build/toppler.pot
> msgmerge -U src/po/fr.po _build/toppler.pot
> .................................. done.
> Makefile:105: update target 'locale/fr/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> mkdir -p locale/fr/LC_MESSAGES/
> msgfmt src/po/fr.po -o locale/fr/LC_MESSAGES/toppler.mo
> Makefile:109: update target 
> 'debian/toppler/usr/share/locale/fr/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> install -m755 -d debian/toppler/usr/share/locale/fr/LC_MESSAGES/
> install -m644 locale/fr/LC_MESSAGES/toppler.mo 
> debian/toppler/usr/share/locale/fr/LC_MESSAGES/toppler.mo
> Makefile:511: update target 'src/po/fi.po' due to: _build/toppler.pot
> msgmerge -U src/po/fi.po _build/toppler.pot
> ................................... done.
> Makefile:105: update target 'locale/fi/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> mkdir -p locale/fi/LC_MESSAGES/
> msgfmt src/po/fi.po -o locale/fi/LC_MESSAGES/toppler.mo
> Makefile:109: update target 
> 'debian/toppler/usr/share/locale/fi/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> install -m755 -d debian/toppler/usr/share/locale/fi/LC_MESSAGES/
> install -m644 locale/fi/LC_MESSAGES/toppler.mo 
> debian/toppler/usr/share/locale/fi/LC_MESSAGES/toppler.mo
> Makefile:511: update target 'src/po/eu.po' due to: _build/toppler.pot
> msgmerge -U src/po/eu.po _build/toppler.pot
> .................................... done.
> Makefile:105: update target 'locale/eu/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> mkdir -p locale/eu/LC_MESSAGES/
> msgfmt src/po/eu.po -o locale/eu/LC_MESSAGES/toppler.mo
> Makefile:109: update target 
> 'debian/toppler/usr/share/locale/eu/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> install -m755 -d debian/toppler/usr/share/locale/eu/LC_MESSAGES/
> install -m644 locale/eu/LC_MESSAGES/toppler.mo 
> debian/toppler/usr/share/locale/eu/LC_MESSAGES/toppler.mo
> Makefile:511: update target 'src/po/de.po' due to: _build/toppler.pot
> msgmerge -U src/po/de.po _build/toppler.pot
> .............................. done.
> Makefile:105: update target 'locale/de/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> mkdir -p locale/de/LC_MESSAGES/
> msgfmt src/po/de.po -o locale/de/LC_MESSAGES/toppler.mo
> Makefile:109: update target 
> 'debian/toppler/usr/share/locale/de/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> install -m755 -d debian/toppler/usr/share/locale/de/LC_MESSAGES/
> install -m644 locale/de/LC_MESSAGES/toppler.mo 
> debian/toppler/usr/share/locale/de/LC_MESSAGES/toppler.mo
> Makefile:511: update target 'src/po/cs.po' due to: _build/toppler.pot
> msgmerge -U src/po/cs.po _build/toppler.pot
> ............................... done.
> Makefile:105: update target 'locale/cs/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> mkdir -p locale/cs/LC_MESSAGES/
> msgfmt src/po/cs.po -o locale/cs/LC_MESSAGES/toppler.mo
> Makefile:109: update target 
> 'debian/toppler/usr/share/locale/cs/LC_MESSAGES/toppler.mo' due to: target 
> does not exist
> install -m755 -d debian/toppler/usr/share/locale/cs/LC_MESSAGES/
> install -m644 locale/cs/LC_MESSAGES/toppler.mo 
> debian/toppler/usr/share/locale/cs/LC_MESSAGES/toppler.mo
> Makefile:431: update target '_build/tools/dude' due to: target does not exist
> mkdir -p _build/tools/
> g++ -Wall -Wextra -g -O2 -std=c++17 -o _build/tools/dude datafile/dude.c 
> $(pkg-config --cflags zlib sdl2 libpng SDL2_image) $(pkg-config --libs zlib 
> sdl2 libpng SDL2_image)
> Makefile:265: update target '_build/dude.dat' due to: target does not exist
> ( cd _build && gimp -i -b "(let* ((image (car(gimp-xcf-load 1 
> \"../datafile/dude.xcf\" \"ttt\")))(layers (cadr(gimp-image-get-layers 
> image))))(file-png-save-defaults 1 image (aref layers 1) 
> \"dude_colors_rgb.png\" \"ttt\")(gimp-quit 1))" )
> /bin/sh: 1: gimp: not found
> make[2]: *** [Makefile:265: _build/dude.dat] Error 127 shuffle=reverse


The full build log is available from:
http://qa-logs.debian.net/2025/05/05/shuffle/reverse/toppler_1.3-3_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