• Bug#1105582: toppler: FTBFS with make --shuffle=reverse: /bin/sh: 1: gi

    From Lucas Nussbaum@21:1/5 to All on Tue May 13 21:30:25 2025
    Source: toppler
    Version: 1.3-3
    Severity: minor
    Tags: trixie sid ftbfs
    User: lucas@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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)