• Bug#1104868: alsa-scarlett-gui FTCBFS: rebuilds during make install

    From Helmut Grohne@21:1/5 to All on Wed May 7 18:00:01 2025
    Source: alsa-scarlett-gui
    Version: 0.5.1-1
    Tags: patch upstream
    User: debian-cross@lists.debian.org
    Usertags:ftcbfs

    alsa-scarlett-gui fails to cross build from source. The build actually progresses fine through make install, but then when dh_auto_install
    invokes make install without passing cross toolchains it ends up failing
    as it reperforms some of the earlier steps without using the appropriate
    tools.

    Arguably, make install should not have to reperform build steps. You can actually observe that rebuilding in a native build. The reason is that
    in chains of implicit rules, GNU make treats the files never mentioned
    in the Makefile as intermediate and ends up deleting them at the end of
    the build. This happens to alsa-scarlett-gui-resources.c. By marking it
    as .NOTINTERMEDIATE, the rebuild can be skipped and the cross build
    succeeds as a consequence. I'm attaching a patch for your convenience.
    It happens to slightly reduce native package build time.

    Helmut

    --- alsa-scarlett-gui-0.5.1.orig/src/Makefile
    +++ alsa-scarlett-gui-0.5.1/src/Makefile
    @@ -37,6 +37,7 @@

    XML_SRC := $(wildcard *.xml)
    XML_OBJ := $(patsubst %.xml,%.c,$(XML_SRC))
    +.NOTINTERMEDIATE: $(XML_OBJ)

    %.o: %.c
    %.o: %.c Makefile $(DEPDIR)/%.d | $(DEPDIR)

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