Source: bind
Version: 1:9.13.1+dfsg-1
Severity: serious
Justification: fails to build from source (but built successfully in the past)

Hi,

bind/experimental fails to build twice in a row.
I didn't check whether bind9/sid has similar problems.

The package seems to use autotools in "creative ways" causing
autoreconf to no longer recognize that it needs to run libtoolize
if libtool.m4/libtool.m4 is gone (because it was deleted by
dh_autoreconf-clean).

It is easily reproducible by the commands

    debian/rules override_dh_autoreconf
    debian/rules clean
    debian/rules override_dh_autoreconf

The failure occurs early in the second build, full build log attached,
notice the different output from the two dh_autoreconf runs:

 debian/rules build
dh build --with python3 --fail-missing --exclude=.la --exclude=lwresd 
--exclude=__pycache__
   dh_update_autotools_config -O--fail-missing -O--exclude=.la 
-O--exclude=lwresd -O--exclude=__pycache__
   debian/rules override_dh_autoreconf
make[1]: Entering directory '/build/bind-9.13.1+dfsg'
if [ ! -f version.bak ]; then \
  mv version version.bak; \
  sed -e 's,^EXTENSIONS=,EXTENSIONS="$(dpkg-parsechangelog 
--file=../debian/changelog | sed -n '/^Version/s/[^-]*//p')-$(dpkg-vendor 
--query Vendor)",' < version.bak > version; \
fi
dh_autoreconf
configure.in:11: warning: prefer named diversions
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'libtool.m4'.
libtoolize: copying file 'libtool.m4/libtool.m4'
libtoolize: copying file 'libtool.m4/ltoptions.m4'
libtoolize: copying file 'libtool.m4/ltsugar.m4'
libtoolize: copying file 'libtool.m4/ltversion.m4'
libtoolize: copying file 'libtool.m4/lt~obsolete.m4'
libtoolize: Consider adding '-I libtool.m4' to ACLOCAL_AMFLAGS in Makefile.am.
configure.in:11: warning: prefer named diversions
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader: 
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows one to define a template 
without
autoheader: WARNING: `acconfig.h':
autoheader: 
autoheader: WARNING:   AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader:             [Define if a function `main' is needed.])
autoheader: 
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
configure.in:11: warning: prefer named diversions
make[1]: Leaving directory '/build/bind-9.13.1+dfsg'
   debian/rules override_dh_auto_configure
...
[snipped the successful first build]
...
 fakeroot debian/rules clean
dh clean --with python3 --fail-missing --exclude=.la --exclude=lwresd 
--exclude=__pycache__
   debian/rules override_dh_auto_clean
make[1]: Entering directory '/build/bind-9.13.1+dfsg'
if [ -f version.bak ]; then \
  mv version.bak version; \
fi
dh_auto_clean -B build
make[1]: Leaving directory '/build/bind-9.13.1+dfsg'
   dh_autoreconf_clean -O--fail-missing -O--exclude=.la -O--exclude=lwresd 
-O--exclude=__pycache__
   dh_clean -O--fail-missing -O--exclude=.la -O--exclude=lwresd 
-O--exclude=__pycache__
 dpkg-source -b bind-9.13.1+dfsg
dpkg-source: info: using source format '3.0 (quilt)'
dpkg-source: info: building bind using existing ./bind_9.13.1+dfsg.orig.tar.xz
dpkg-source: warning: ignoring deletion of file ltmain.sh, 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 config.h.in, use 
--include-removal to override
dpkg-source: warning: ignoring deletion of file libtool.m4/libtool.m4, use 
--include-removal to override
dpkg-source: info: building bind in bind_9.13.1+dfsg-1.debian.tar.xz
dpkg-source: info: building bind in bind_9.13.1+dfsg-1.dsc
 debian/rules build
dh build --with python3 --fail-missing --exclude=.la --exclude=lwresd 
--exclude=__pycache__
   dh_update_autotools_config -O--fail-missing -O--exclude=.la 
-O--exclude=lwresd -O--exclude=__pycache__
   debian/rules override_dh_autoreconf
make[1]: Entering directory '/build/bind-9.13.1+dfsg'
if [ ! -f version.bak ]; then \
  mv version version.bak; \
  sed -e 's,^EXTENSIONS=,EXTENSIONS="$(dpkg-parsechangelog 
--file=../debian/changelog | sed -n '/^Version/s/[^-]*//p')-$(dpkg-vendor 
--query Vendor)",' < version.bak > version; \
fi
dh_autoreconf
configure.in:11: warning: prefer named diversions
configure.in:11: warning: prefer named diversions
configure.in:37: error: possibly undefined macro: AC_PROG_LIBTOOL
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
configure.in:1359: error: possibly undefined macro: AM_PROG_LIBTOOL
autoreconf: /usr/bin/autoconf failed with exit status: 1
dh_autoreconf: autoreconf -f -i returned exit code 1
make[1]: *** [debian/rules:46: override_dh_autoreconf] Error 2
make[1]: Leaving directory '/build/bind-9.13.1+dfsg'
make: *** [debian/rules:32: build] Error 2



Andreas

Attachment: bind_1%9.13.1+dfsg-1_twice.log.gz
Description: application/gzip

Reply via email to