Subject: keepalived: Fails to build source after successful build

From: Lucas Nussbaum <[email-masked]>
Date: Sun, 13 Aug 2023 21:20:49 +0200

Source: keepalived
Version: 1:2.2.8-1
Severity: minor
Tags: trixie sid ftbfs
User: [email-masked]
Usertags: ftbfs-sab-20230813 ftbfs-source-after-build
User: [email-masked]
Usertags: qa-doublebuild

Hi,

This package fails to build a source package after a successful build
(dpkg-buildpackage ; dpkg-buildpackage -S).

This is probably a clear violation of Debian Policy section 4.9 (clean target),
but this is filed as severity:minor for now, because a discussion on
debian-devel showed that we might want to revisit the requirement of a working
'clean' target.

More information about this class of issues, included common problems and
solutions, is available at
https://wiki.debian.org/qa.debian.org/FTBFS/SourceAfterBuild

Relevant part of the build log:
> cd /<<PKGBUILDDIR>> && runuser -u user42 -- dpkg-buildpackage --sanitize-env -us -uc -rfakeroot -S
> ---------------------------------------------------------------------------------------------------------------------------
> 
> dpkg-buildpackage: info: source package keepalived
> dpkg-buildpackage: info: source version 1:2.2.8-1
> dpkg-buildpackage: info: source distribution unstable
> dpkg-buildpackage: info: source changed by Vincent Bernat <[email-masked]>
>  dpkg-source --before-build .
>  fakeroot debian/rules clean
> dh  clean
>    dh_auto_clean
> 	make -j8 distclean
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> Making distclean in lib
> make[2]: Entering directory '/<<PKGBUILDDIR>>/lib'
> test -z "git-commit.h" || rm -f git-commit.h
> test -z "liblib.a" || rm -f liblib.a
> rm -f *.o
> rm -f *.tab.c
> test -z "" || rm -f 
> rm -f config.h stamp-h1 config_warnings.h stamp-h2
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> rm -f ./.deps/assert.Po
> rm -f ./.deps/html.Po
> rm -f ./.deps/json_writer.Po
> rm -f ./.deps/list_head.Po
> rm -f ./.deps/logger.Po
> rm -f ./.deps/memory.Po
> rm -f ./.deps/notify.Po
> rm -f ./.deps/parser.Po
> rm -f ./.deps/process.Po
> rm -f ./.deps/rbtree.Po
> rm -f ./.deps/rttables.Po
> rm -f ./.deps/scheduler.Po
> rm -f ./.deps/signals.Po
> rm -f ./.deps/systemd.Po
> rm -f ./.deps/timer.Po
> rm -f ./.deps/utils.Po
> rm -f ./.deps/vector.Po
> rm -f Makefile
> make[2]: Leaving directory '/<<PKGBUILDDIR>>/lib'
> Making distclean in keepalived
> make[2]: Entering directory '/<<PKGBUILDDIR>>/keepalived'
> Making distclean in core
> make[3]: Entering directory '/<<PKGBUILDDIR>>/keepalived/core'
> test -z "libcore.a" || rm -f libcore.a
> rm -f *.o
> rm -f *.tab.c
> test -z "" || rm -f 
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> rm -f ./.deps/config_notify.Po
> rm -f ./.deps/daemon.Po
> rm -f ./.deps/global_data.Po
> rm -f ./.deps/global_parser.Po
> rm -f ./.deps/keepalived_netlink.Po
> rm -f ./.deps/layer4.Po
> rm -f ./.deps/libnl_link.Po
> rm -f ./.deps/main.Po
> rm -f ./.deps/namespaces.Po
> rm -f ./.deps/nftables.Po
> rm -f ./.deps/pidfile.Po
> rm -f ./.deps/reload_monitor.Po
> rm -f ./.deps/smtp.Po
> rm -f ./.deps/snmp.Po
> rm -f ./.deps/track_process.Po
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/core'
> Making distclean in vrrp
> make[3]: Entering directory '/<<PKGBUILDDIR>>/keepalived/vrrp'
> test -z "libvrrp.a" || rm -f libvrrp.a
> rm -f *.o
> rm -f *.tab.c
> test -z "" || rm -f 
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> rm -f ./.deps/vrrp.Po
> rm -f ./.deps/vrrp_arp.Po
> rm -f ./.deps/vrrp_daemon.Po
> rm -f ./.deps/vrrp_data.Po
> rm -f ./.deps/vrrp_dbus.Po
> rm -f ./.deps/vrrp_firewall.Po
> rm -f ./.deps/vrrp_if.Po
> rm -f ./.deps/vrrp_if_config.Po
> rm -f ./.deps/vrrp_ip_rule_route_parser.Po
> rm -f ./.deps/vrrp_ipaddress.Po
> rm -f ./.deps/vrrp_iproute.Po
> rm -f ./.deps/vrrp_iprule.Po
> rm -f ./.deps/vrrp_ipsecah.Po
> rm -f ./.deps/vrrp_ipset.Po
> rm -f ./.deps/vrrp_iptables.Po
> rm -f ./.deps/vrrp_iptables_calls.Po
> rm -f ./.deps/vrrp_json.Po
> rm -f ./.deps/vrrp_ndisc.Po
> rm -f ./.deps/vrrp_nftables.Po
> rm -f ./.deps/vrrp_notify.Po
> rm -f ./.deps/vrrp_parser.Po
> rm -f ./.deps/vrrp_print.Po
> rm -f ./.deps/vrrp_scheduler.Po
> rm -f ./.deps/vrrp_snmp.Po
> rm -f ./.deps/vrrp_static_track.Po
> rm -f ./.deps/vrrp_sync.Po
> rm -f ./.deps/vrrp_track.Po
> rm -f ./.deps/vrrp_vmac.Po
> rm -f ./.deps/vrrp_vmac_nm.Po
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/vrrp'
> Making distclean in check
> make[3]: Entering directory '/<<PKGBUILDDIR>>/keepalived/check'
> test -z "libcheck.a" || rm -f libcheck.a
> rm -f *.o
> rm -f *.tab.c
> test -z "" || rm -f 
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> rm -f ./.deps/check_api.Po
> rm -f ./.deps/check_bfd.Po
> rm -f ./.deps/check_daemon.Po
> rm -f ./.deps/check_data.Po
> rm -f ./.deps/check_dns.Po
> rm -f ./.deps/check_file.Po
> rm -f ./.deps/check_genhash.Po
> rm -f ./.deps/check_http.Po
> rm -f ./.deps/check_misc.Po
> rm -f ./.deps/check_nftables.Po
> rm -f ./.deps/check_parser.Po
> rm -f ./.deps/check_ping.Po
> rm -f ./.deps/check_print.Po
> rm -f ./.deps/check_smtp.Po
> rm -f ./.deps/check_snmp.Po
> rm -f ./.deps/check_ssl.Po
> rm -f ./.deps/check_tcp.Po
> rm -f ./.deps/check_udp.Po
> rm -f ./.deps/ipvswrapper.Po
> rm -f ./.deps/ipwrapper.Po
> rm -f ./.deps/libipvs.Po
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/check'
> Making distclean in dbus
> make[3]: Entering directory '/<<PKGBUILDDIR>>/keepalived/dbus'
> rm -rf org.keepalived.Vrrp1.Vrrp.xml
> test -z "" || rm -f 
> test . = "." || test -z "" || rm -f 
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/dbus'
> Making distclean in bfd
> make[3]: Entering directory '/<<PKGBUILDDIR>>/keepalived/bfd'
> test -z "libbfd.a" || rm -f libbfd.a
> rm -f *.o
> rm -f *.tab.c
> test -z "" || rm -f 
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> rm -f ./.deps/bfd.Po
> rm -f ./.deps/bfd_daemon.Po
> rm -f ./.deps/bfd_data.Po
> rm -f ./.deps/bfd_event.Po
> rm -f ./.deps/bfd_parser.Po
> rm -f ./.deps/bfd_scheduler.Po
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/bfd'
> Making distclean in trackers
> make[3]: Entering directory '/<<PKGBUILDDIR>>/keepalived/trackers'
> test -z "libtracker.a" || rm -f libtracker.a
> rm -f *.o
> rm -f *.tab.c
> test -z "" || rm -f 
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> rm -f ./.deps/track_file.Po
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/trackers'
> Making distclean in etc
> make[3]: Entering directory '/<<PKGBUILDDIR>>/keepalived/etc'
> Making distclean in init
> make[4]: Entering directory '/<<PKGBUILDDIR>>/keepalived/etc/init'
> test -z "keepalived.conf" || rm -f keepalived.conf
> test -z "" || rm -f 
> test . = "." || test -z "" || rm -f 
> rm -f Makefile
> make[4]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/etc/init'
> Making distclean in init.d
> make[4]: Entering directory '/<<PKGBUILDDIR>>/keepalived/etc/init.d'
> test -z "keepalived.suse.init" || rm -f keepalived.suse.init
> test -z "" || rm -f 
> test . = "." || test -z "" || rm -f 
> rm -f Makefile
> make[4]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/etc/init.d'
> Making distclean in keepalived
> make[4]: Entering directory '/<<PKGBUILDDIR>>/keepalived/etc/keepalived'
> test -z "keepalived.conf.sample" || rm -f keepalived.conf.sample
> test -z "" || rm -f 
> test . = "." || test -z "" || rm -f 
> rm -f Makefile
> make[4]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/etc/keepalived'
> Making distclean in sysconfig
> make[4]: Entering directory '/<<PKGBUILDDIR>>/keepalived/etc/sysconfig'
> test -z "keepalived" || rm -f keepalived
> test -z "" || rm -f 
> test . = "." || test -z "" || rm -f 
> rm -f Makefile
> make[4]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/etc/sysconfig'
> make[4]: Entering directory '/<<PKGBUILDDIR>>/keepalived/etc'
> test -z "" || rm -f 
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> make[4]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/etc'
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/keepalived/etc'
> make[3]: Entering directory '/<<PKGBUILDDIR>>/keepalived'
> test -z "keepalived" || rm -f keepalived
> rm -f *.o
> test -z "keepalived.service keeplived-non-root.service" || rm -f keepalived.service keeplived-non-root.service
> rm -f *.tab.c
> test -z "" || rm -f 
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/keepalived'
> rm -f ./.deps/main.Po
> rm -f Makefile
> make[2]: Leaving directory '/<<PKGBUILDDIR>>/keepalived'
> Making distclean in doc
> make[2]: Entering directory '/<<PKGBUILDDIR>>/doc'
> Making distclean in man/man8
> make[3]: Entering directory '/<<PKGBUILDDIR>>/doc/man/man8'
> test -z "keepalived.8" || rm -f keepalived.8
> test -z "" || rm -f 
> test . = "." || test -z "" || rm -f 
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/doc/man/man8'
> Making distclean in man/man5
> make[3]: Entering directory '/<<PKGBUILDDIR>>/doc/man/man5'
> test -z "keepalived.conf.5" || rm -f keepalived.conf.5
> test -z "" || rm -f 
> test . = "." || test -z "" || rm -f 
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/doc/man/man5'
> Making distclean in man/man1
> make[3]: Entering directory '/<<PKGBUILDDIR>>/doc/man/man1'
> test -z "genhash.1" || rm -f genhash.1
> test -z "" || rm -f 
> test . = "." || test -z "" || rm -f 
> rm -f Makefile
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/doc/man/man1'
> make[3]: Entering directory '/<<PKGBUILDDIR>>/doc'
> test -z "" || rm -f 
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/doc'
> rm -f Makefile
> make[2]: Leaving directory '/<<PKGBUILDDIR>>/doc'
> Making distclean in bin_install
> make[2]: Entering directory '/<<PKGBUILDDIR>>/bin_install'
> rm -f ../bin/genhash
> test -z "" || rm -f 
> test . = "." || test -z "" || rm -f 
> rm -f ../bin/keepalived
> rm -f Makefile
> make[2]: Leaving directory '/<<PKGBUILDDIR>>/bin_install'
> make[2]: Entering directory '/<<PKGBUILDDIR>>'
> rm -rf parts/ prime/ stage/ keepalived_*.snap
> test -z "README" || rm -f README
> test -z "keepalived.spec Dockerfile" || rm -f keepalived.spec Dockerfile
> rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
> test . = "." || test -z "" || rm -f 
> rm -f cscope.out cscope.in.out cscope.po.out cscope.files
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> rm -f config.status config.cache config.log configure.lineno config.status.lineno
> rm -f Makefile
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
>    dh_autoreconf_clean
>    dh_clean
>  dpkg-source -b .
> dpkg-source: info: using source format '3.0 (quilt)'
> dpkg-source: info: building keepalived using existing ./keepalived_2.2.8.orig.tar.gz
> dpkg-source: info: using patch list from debian/patches/series
> dpkg-source: warning: ignoring deletion of file aclocal.m4, use --include-removal to override
> dpkg-source: warning: ignoring deletion of file configure, use --include-removal to override
> dpkg-source: warning: ignoring deletion of file keepalived/etc/sysconfig/Makefile, use --include-removal to override
> dpkg-source: warning: ignoring deletion of file lib/git-commit.h, use --include-removal to override
> dpkg-source: warning: ignoring deletion of file doc/man/man8/keepalived.8, use --include-removal to override
> dpkg-source: warning: ignoring deletion of file doc/man/man1/genhash.1, use --include-removal to override
> dpkg-source: warning: ignoring deletion of file doc/man/man5/keepalived.conf.5, use --include-removal to override
> dpkg-source: info: local changes detected, the modified files are:
>  keepalived-2.2.8/keepalived/keepalived-non-root.service
> dpkg-source: error: aborting due to unexpected upstream changes, see /tmp/keepalived_2.2.8-1.diff.QVIusa
> dpkg-source: info: Hint: make sure the version in debian/changelog matches the unpacked source tree
> dpkg-source: info: you can integrate the local changes with dpkg-source --commit
> dpkg-buildpackage: error: dpkg-source -b . subprocess returned exit status 2
> 
> E: Command 'cd /<<PKGBUILDDIR>> && runuser -u user42 -- dpkg-buildpackage --sanitize-env -us -uc -rfakeroot -S' failed to run.

The full build log is available from:
http://qa-logs.debian.net/2023/08/13/keepalived_2.2.8-1_unstable.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

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.