• Bug#1105547: vile: FTBFS with make --shuffle=reverse: install: cannot c

    From Thomas Dickey@21:1/5 to Lucas Nussbaum on Wed May 14 02:00:01 2025
    --1q4RA+LLYrcklt/+
    Content-Type: text/plain; charset=us-ascii
    Content-Disposition: inline
    Content-Transfer-Encoding: quoted-printable

    On Tue, May 13, 2025 at 09:18:03PM +0200, Lucas Nussbaum wrote:
    Source: vile
    Version: 9.8za-1
    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

    It took a few tries, but I was able to reproduce it with the attached
    script abstracted from your log, on an 8-CPU machine.

    --
    Thomas E. Dickey <dickey@invisible-island.net>
    https://invisible-island.net

    --1q4RA+LLYrcklt/+
    Content-Type: text/plain; charset=us-ascii
    Content-Disposition: attachment; filename=doit

    #!/bin/sh
    OUT=/tmp/FOO
    rm -rf $OUT
    mkdir -p $OUT
    rm -rf t
    export MAKE="make --trace --shuffle=reverse"
    mkdir -p t/vile
    cd t/vile && ../../configure --build=x86_64-linux-gnu --prefix=$OUT --includedir=\${prefix}/include --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-option-checking --disable-silent-rules --
    libdir=\${prefix}/lib/x86_64-linux-gnu --runstatedir=/run --disable-maintainer-mode --disable-dependency-tracking --with-locale --with-perl --with-loadable-filters=all --disable-rpath-hack --disable-stripping
    cd ../..
    $MAKE -C t/vile all vile-perl-api.doc
    mkdir -p t/xvile
    cd t/xvile && ../../configure --build=x86_64-linux-gnu --prefix=$OUT --includedir=\${prefix}/include --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info --sys