[Pkg-libvirt-maintainers] Bug#905700: libvirt: Please drop build-depends on dwarves - "WARNING: pdwtags appears broken; skipping the ../../../src/lxc_protocol-struct test"

Niels Thykier niels at thykier.net
Wed Aug 8 09:50:48 BST 2018


Source: libvirt
Severity: important

Hi,

Please consider dropping the build dependency on dwarves as dwarves
does not support DWARF4 and is therefore completely useless.  At the
moment, all libvirt tests relying on dwarves appears to be skipped
(see below), so the build-dependency is dead weight and prevents us
from removing dwarves from the archive (libvirt is the only package
with a relation on dwarves and only need it for tests).

The obvious alternative is fixing dwarves, but:

 * Upstream has not made a release since 2012.
 * Upstream's blog has no mention of working on dwarves to support
   DWARF 4
 * The Debian bug (#779809) has not had a maintainer reply at all
   despite being open since 2015.

Therefore, I think removing the dwarves relation from libvirt is the
most reasonable forward if you do not have the time / energy to become
upstream for dwarves.

Thanks,
~Niels

Build log:
"""

if gcc -v 2>&1 | grep -q clang; then echo 'WARNING: skipping pdwtags test with Clang' >&2; exit 0; fi; if (pdwtags --help) > /dev/null 2>&1; then o=`ls -t remote/libvirt_driver_remote_la-remote_protocol.o remote/.libs/libvirt_driver_remote_la-remote_protocol.o 2>/dev/null | sed -n 1p`; test -f "$o" || { echo ".o for remote/libvirt_driver_remote_la-remote_protocol.lo not found" >&2; exit 1; }; pdwtags --verbose $o > remote_protocol-struct-t1 2> remote_protocol-struct-t2; if test ! -s remote_protocol-struct-t1 && test -s remote_protocol-struct-t2; then rm -rf remote_protocol-struct-t?; echo 'WARNING: pdwtags appears broken; skipping the ../../../src/remote_protocol-struct test' >&2; else /usr/bin/perl -0777 -n -e 'foreach my $p (split m!\n*(?:/\* \d+ \*/|/\* <[[:xdigit:]]+> \S+:\d+ \*/)\n!) {' -e '  if ($p =~ /^(struct|enum) (remote_|qemu_|lxc_|admin_|keepalive|vir(Net|LockSpace|LXCMonitor))/ ||' -e '      $p =~ /^enum \{/) {' -e '    $p =~ s!\t*/\*.*?\*/!!sg;' -e '    $p =~ s!\s+\n!\n!sg;' -e '    $p =~ s!\s+$!!;' -e '    $p =~ s!\t!        !g;' -e '    print "$p\n";' -e '    $n++;' -e '  }' -e '}' -e 'BEGIN {' -e '  print "/* -*- c -*- */\n";' -e '}' -e 'END {' -e '  if ($n < 1) {' -e '    warn "WARNING: your pdwtags program is too old\n";' -e '    warn "WARNING: skipping the ../../../src/remote_protocol-struct test\n";' -e '    warn "WARNING: install dwarves-1.3 or newer\n";' -e '    exit 8;' -e '  }' -e '}' < remote_protocol-struct-t1 > remote_protocol-struct-t3; case $? in 8) rm -f remote_protocol-struct-t?; exit 0;; 0) ;; *) exit 1;; esac; diff -u ../../../src/remote_protocol-structs remote_protocol-struct-t3; st=$?; rm -f remote_protocol-struct-t?; exit $st; fi; else echo 'WARNING: you lack pdwtags; skipping the ../../../src/remote_protocol-struct test' >&2; echo 'WARNING: install the dwarves package to get pdwtags' >&2; fi
if gcc -v 2>&1 | grep -q clang; then echo 'WARNING: skipping pdwtags test with Clang' >&2; exit 0; fi; if (pdwtags --help) > /dev/null 2>&1; then o=`ls -t remote/libvirt_driver_remote_la-lxc_protocol.o remote/.libs/libvirt_driver_remote_la-lxc_protocol.o 2>/dev/null | sed -n 1p`; test -f "$o" || { echo ".o for remote/libvirt_driver_remote_la-lxc_protocol.lo not found" >&2; exit 1; }; pdwtags --verbose $o > lxc_protocol-struct-t1 2> lxc_protocol-struct-t2; if test ! -s lxc_protocol-struct-t1 && test -s lxc_protocol-struct-t2; then rm -rf lxc_protocol-struct-t?; echo 'WARNING: pdwtags appears broken; skipping the ../../../src/lxc_protocol-struct test' >&2; else /usr/bin/perl -0777 -n -e 'foreach my $p (split m!\n*(?:/\* \d+ \*/|/\* <[[:xdigit:]]+> \S+:\d+ \*/)\n!) {' -e '  if ($p =~ /^(struct|enum) (remote_|qemu_|lxc_|admin_|keepalive|vir(Net|LockSpace|LXCMonitor))/ ||' -e '      $p =~ /^enum \{/) {' -e '    $p =~ s!\t*/\*.*?\*/!!sg;' -e '    $p =~ s!\s+\n!\n!sg;' -e '    $p =~ s!\s+$!!;' -e '    $p =~ s!\t!        !g;' -e '    print "$p\n";' -e '    $n++;' -e '  }' -e '}' -e 'BEGIN {' -e '  print "/* -*- c -*- */\n";' -e '}' -e 'END {' -e '  if ($n < 1) {' -e '    warn "WARNING: your pdwtags program is too old\n";' -e '    warn "WARNING: skipping the ../../../src/lxc_protocol-struct test\n";' -e '    warn "WARNING: install dwarves-1.3 or newer\n";' -e '    exit 8;' -e '  }' -e '}' < lxc_protocol-struct-t1 > lxc_protocol-struct-t3; case $? in 8) rm -f lxc_protocol-struct-t?; exit 0;; 0) ;; *) exit 1;; esac; diff -u ../../../src/lxc_protocol-structs lxc_protocol-struct-t3; st=$?; rm -f lxc_protocol-struct-t?; exit $st; fi; else echo 'WARNING: you lack pdwtags; skipping the ../../../src/lxc_protocol-struct test' >&2; echo 'WARNING: install the dwarves package to get pdwtags' >&2; fi
if gcc -v 2>&1 | grep -q clang; then echo 'WARNING: skipping pdwtags test with Clang' >&2; exit 0; fi; if (pdwtags --help) > /dev/null 2>&1; then o=`ls -t remote/libvirt_driver_remote_la-qemu_protocol.o remote/.libs/libvirt_driver_remote_la-qemu_protocol.o 2>/dev/null | sed -n 1p`; test -f "$o" || { echo ".o for remote/libvirt_driver_remote_la-qemu_protocol.lo not found" >&2; exit 1; }; pdwtags --verbose $o > qemu_protocol-struct-t1 2> qemu_protocol-struct-t2; if test ! -s qemu_protocol-struct-t1 && test -s qemu_protocol-struct-t2; then rm -rf qemu_protocol-struct-t?; echo 'WARNING: pdwtags appears broken; skipping the ../../../src/qemu_protocol-struct test' >&2; else /usr/bin/perl -0777 -n -e 'foreach my $p (split m!\n*(?:/\* \d+ \*/|/\* <[[:xdigit:]]+> \S+:\d+ \*/)\n!) {' -e '  if ($p =~ /^(struct|enum) (remote_|qemu_|lxc_|admin_|keepalive|vir(Net|LockSpace|LXCMonitor))/ ||' -e '      $p =~ /^enum \{/) {' -e '    $p =~ s!\t*/\*.*?\*/!!sg;' -e '    $p =~ s!\s+\n!\n!sg;' -e '    $p =~ s!\s+$!!;' -e '    $p =~ s!\t!        !g;' -e '    print "$p\n";' -e '    $n++;' -e '  }' -e '}' -e 'BEGIN {' -e '  print "/* -*- c -*- */\n";' -e '}' -e 'END {' -e '  if ($n < 1) {' -e '    warn "WARNING: your pdwtags program is too old\n";' -e '    warn "WARNING: skipping the ../../../src/qemu_protocol-struct test\n";' -e '    warn "WARNING: install dwarves-1.3 or newer\n";' -e '    exit 8;' -e '  }' -e '}' < qemu_protocol-struct-t1 > qemu_protocol-struct-t3; case $? in 8) rm -f qemu_protocol-struct-t?; exit 0;; 0) ;; *) exit 1;; esac; diff -u ../../../src/qemu_protocol-structs qemu_protocol-struct-t3; st=$?; rm -f qemu_protocol-struct-t?; exit $st; fi; else echo 'WARNING: you lack pdwtags; skipping the ../../../src/qemu_protocol-struct test' >&2; echo 'WARNING: install the dwarves package to get pdwtags' >&2; fi
if gcc -v 2>&1 | grep -q clang; then echo 'WARNING: skipping pdwtags test with Clang' >&2; exit 0; fi; if (pdwtags --help) > /dev/null 2>&1; then o=`ls -t rpc/libvirt_net_rpc_la-virnetprotocol.o rpc/.libs/libvirt_net_rpc_la-virnetprotocol.o 2>/dev/null | sed -n 1p`; test -f "$o" || { echo ".o for rpc/libvirt_net_rpc_la-virnetprotocol.lo not found" >&2; exit 1; }; pdwtags --verbose $o > virnetprotocol-struct-t1 2> virnetprotocol-struct-t2; if test ! -s virnetprotocol-struct-t1 && test -s virnetprotocol-struct-t2; then rm -rf virnetprotocol-struct-t?; echo 'WARNING: pdwtags appears broken; skipping the ../../../src/virnetprotocol-struct test' >&2; else /usr/bin/perl -0777 -n -e 'foreach my $p (split m!\n*(?:/\* \d+ \*/|/\* <[[:xdigit:]]+> \S+:\d+ \*/)\n!) {' -e '  if ($p =~ /^(struct|enum) (remote_|qemu_|lxc_|admin_|keepalive|vir(Net|LockSpace|LXCMonitor))/ ||' -e '      $p =~ /^enum \{/) {' -e '    $p =~ s!\t*/\*.*?\*/!!sg;' -e '    $p =~ s!\s+\n!\n!sg;' -e '    $p =~ s!\s+$!!;' -e '    $p =~ s!\t!        !g;' -e '    print "$p\n";' -e '    $n++;' -e '  }' -e '}' -e 'BEGIN {' -e '  print "/* -*- c -*- */\n";' -e '}' -e 'END {' -e '  if ($n < 1) {' -e '    warn "WARNING: your pdwtags program is too old\n";' -e '    warn "WARNING: skipping the ../../../src/virnetprotocol-struct test\n";' -e '    warn "WARNING: install dwarves-1.3 or newer\n";' -e '    exit 8;' -e '  }' -e '}' < virnetprotocol-struct-t1 > virnetprotocol-struct-t3; case $? in 8) rm -f virnetprotocol-struct-t?; exit 0;; 0) ;; *) exit 1;; esac; diff -u ../../../src/virnetprotocol-structs virnetprotocol-struct-t3; st=$?; rm -f virnetprotocol-struct-t?; exit $st; fi; else echo 'WARNING: you lack pdwtags; skipping the ../../../src/virnetprotocol-struct test' >&2; echo 'WARNING: install the dwarves package to get pdwtags' >&2; fi
WARNING: pdwtags appears broken; skipping the ../../../src/lxc_protocol-struct test
if gcc -v 2>&1 | grep -q clang; then echo 'WARNING: skipping pdwtags test with Clang' >&2; exit 0; fi; if (pdwtags --help) > /dev/null 2>&1; then o=`ls -t rpc/libvirt_net_rpc_la-virkeepaliveprotocol.o rpc/.libs/libvirt_net_rpc_la-virkeepaliveprotocol.o 2>/dev/null | sed -n 1p`; test -f "$o" || { echo ".o for rpc/libvirt_net_rpc_la-virkeepaliveprotocol.lo not found" >&2; exit 1; }; pdwtags --verbose $o > virkeepaliveprotocol-struct-t1 2> virkeepaliveprotocol-struct-t2; if test ! -s virkeepaliveprotocol-struct-t1 && test -s virkeepaliveprotocol-struct-t2; then rm -rf virkeepaliveprotocol-struct-t?; echo 'WARNING: pdwtags appears broken; skipping the ../../../src/virkeepaliveprotocol-struct test' >&2; else /usr/bin/perl -0777 -n -e 'foreach my $p (split m!\n*(?:/\* \d+ \*/|/\* <[[:xdigit:]]+> \S+:\d+ \*/)\n!) {' -e '  if ($p =~ /^(struct|enum) (remote_|qemu_|lxc_|admin_|keepalive|vir(Net|LockSpace|LXCMonitor))/ ||' -e '      $p =~ /^enum \{/) {' -e '    $p =~ s!\t*/\*.*?\*/!!sg;' -e '    $p =~ s!\s+\n!\n!sg;' -e '    $p =~ s!\s+$!!;' -e '    $p =~ s!\t!        !g;' -e '    print "$p\n";' -e '    $n++;' -e '  }' -e '}' -e 'BEGIN {' -e '  print "/* -*- c -*- */\n";' -e '}' -e 'END {' -e '  if ($n < 1) {' -e '    warn "WARNING: your pdwtags program is too old\n";' -e '    warn "WARNING: skipping the ../../../src/virkeepaliveprotocol-struct test\n";' -e '    warn "WARNING: install dwarves-1.3 or newer\n";' -e '    exit 8;' -e '  }' -e '}' < virkeepaliveprotocol-struct-t1 > virkeepaliveprotocol-struct-t3; case $? in 8) rm -f virkeepaliveprotocol-struct-t?; exit 0;; 0) ;; *) exit 1;; esac; diff -u ../../../src/virkeepaliveprotocol-structs virkeepaliveprotocol-struct-t3; st=$?; rm -f virkeepaliveprotocol-struct-t?; exit $st; fi; else echo 'WARNING: you lack pdwtags; skipping the ../../../src/virkeepaliveprotocol-struct test' >&2; echo 'WARNING: install the dwarves package to get pdwtags' >&2; fi
WARNING: pdwtags appears broken; skipping the ../../../src/virnetprotocol-struct test
if gcc -v 2>&1 | grep -q clang; then echo 'WARNING: skipping pdwtags test with Clang' >&2; exit 0; fi; if (pdwtags --help) > /dev/null 2>&1; then o=`ls -t lxc/libvirt_driver_lxc_impl_la-lxc_monitor_protocol.o lxc/.libs/libvirt_driver_lxc_impl_la-lxc_monitor_protocol.o 2>/dev/null | sed -n 1p`; test -f "$o" || { echo ".o for lxc/libvirt_driver_lxc_impl_la-lxc_monitor_protocol.lo not found" >&2; exit 1; }; pdwtags --verbose $o > lxc_monitor_protocol-struct-t1 2> lxc_monitor_protocol-struct-t2; if test ! -s lxc_monitor_protocol-struct-t1 && test -s lxc_monitor_protocol-struct-t2; then rm -rf lxc_monitor_protocol-struct-t?; echo 'WARNING: pdwtags appears broken; skipping the ../../../src/lxc_monitor_protocol-struct test' >&2; else /usr/bin/perl -0777 -n -e 'foreach my $p (split m!\n*(?:/\* \d+ \*/|/\* <[[:xdigit:]]+> \S+:\d+ \*/)\n!) {' -e '  if ($p =~ /^(struct|enum) (remote_|qemu_|lxc_|admin_|keepalive|vir(Net|LockSpace|LXCMonitor))/ ||' -e '      $p =~ /^enum \{/) {' -e '    $p =~ s!\t*/\*.*?\*/!!sg;' -e '    $p =~ s!\s+\n!\n!sg;' -e '    $p =~ s!\s+$!!;' -e '    $p =~ s!\t!        !g;' -e '    print "$p\n";' -e '    $n++;' -e '  }' -e '}' -e 'BEGIN {' -e '  print "/* -*- c -*- */\n";' -e '}' -e 'END {' -e '  if ($n < 1) {' -e '    warn "WARNING: your pdwtags program is too old\n";' -e '    warn "WARNING: skipping the ../../../src/lxc_monitor_protocol-struct test\n";' -e '    warn "WARNING: install dwarves-1.3 or newer\n";' -e '    exit 8;' -e '  }' -e '}' < lxc_monitor_protocol-struct-t1 > lxc_monitor_protocol-struct-t3; case $? in 8) rm -f lxc_monitor_protocol-struct-t?; exit 0;; 0) ;; *) exit 1;; esac; diff -u ../../../src/lxc_monitor_protocol-structs lxc_monitor_protocol-struct-t3; st=$?; rm -f lxc_monitor_protocol-struct-t?; exit $st; fi; else echo 'WARNING: you lack pdwtags; skipping the ../../../src/lxc_monitor_protocol-struct test' >&2; echo 'WARNING: install the dwarves package to get pdwtags' >&2; fi
WARNING: pdwtags appears broken; skipping the ../../../src/qemu_protocol-struct test
WARNING: pdwtags appears broken; skipping the ../../../src/remote_protocol-struct test
if gcc -v 2>&1 | grep -q clang; then echo 'WARNING: skipping pdwtags test with Clang' >&2; exit 0; fi; if (pdwtags --help) > /dev/null 2>&1; then o=`ls -t locking/lockd_la-lock_protocol.o locking/.libs/lockd_la-lock_protocol.o 2>/dev/null | sed -n 1p`; test -f "$o" || { echo ".o for locking/lockd_la-lock_protocol.lo not found" >&2; exit 1; }; pdwtags --verbose $o > lock_protocol-struct-t1 2> lock_protocol-struct-t2; if test ! -s lock_protocol-struct-t1 && test -s lock_protocol-struct-t2; then rm -rf lock_protocol-struct-t?; echo 'WARNING: pdwtags appears broken; skipping the ../../../src/lock_protocol-struct test' >&2; else /usr/bin/perl -0777 -n -e 'foreach my $p (split m!\n*(?:/\* \d+ \*/|/\* <[[:xdigit:]]+> \S+:\d+ \*/)\n!) {' -e '  if ($p =~ /^(struct|enum) (remote_|qemu_|lxc_|admin_|keepalive|vir(Net|LockSpace|LXCMonitor))/ ||' -e '      $p =~ /^enum \{/) {' -e '    $p =~ s!\t*/\*.*?\*/!!sg;' -e '    $p =~ s!\s+\n!\n!sg;' -e '    $p =~ s!\s+$!!;' -e '    $p =~ s!\t!        !g;' -e '    print "$p\n";' -e '    $n++;' -e '  }' -e '}' -e 'BEGIN {' -e '  print "/* -*- c -*- */\n";' -e '}' -e 'END {' -e '  if ($n < 1) {' -e '    warn "WARNING: your pdwtags program is too old\n";' -e '    warn "WARNING: skipping the ../../../src/lock_protocol-struct test\n";' -e '    warn "WARNING: install dwarves-1.3 or newer\n";' -e '    exit 8;' -e '  }' -e '}' < lock_protocol-struct-t1 > lock_protocol-struct-t3; case $? in 8) rm -f lock_protocol-struct-t?; exit 0;; 0) ;; *) exit 1;; esac; diff -u ../../../src/lock_protocol-structs lock_protocol-struct-t3; st=$?; rm -f lock_protocol-struct-t?; exit $st; fi; else echo 'WARNING: you lack pdwtags; skipping the ../../../src/lock_protocol-struct test' >&2; echo 'WARNING: install the dwarves package to get pdwtags' >&2; fi
if gcc -v 2>&1 | grep -q clang; then echo 'WARNING: skipping pdwtags test with Clang' >&2; exit 0; fi; if (pdwtags --help) > /dev/null 2>&1; then o=`ls -t admin/libvirt_admin_la-admin_protocol.o admin/.libs/libvirt_admin_la-admin_protocol.o 2>/dev/null | sed -n 1p`; test -f "$o" || { echo ".o for admin/libvirt_admin_la-admin_protocol.lo not found" >&2; exit 1; }; pdwtags --verbose $o > admin_protocol-struct-t1 2> admin_protocol-struct-t2; if test ! -s admin_protocol-struct-t1 && test -s admin_protocol-struct-t2; then rm -rf admin_protocol-struct-t?; echo 'WARNING: pdwtags appears broken; skipping the ../../../src/admin_protocol-struct test' >&2; else /usr/bin/perl -0777 -n -e 'foreach my $p (split m!\n*(?:/\* \d+ \*/|/\* <[[:xdigit:]]+> \S+:\d+ \*/)\n!) {' -e '  if ($p =~ /^(struct|enum) (remote_|qemu_|lxc_|admin_|keepalive|vir(Net|LockSpace|LXCMonitor))/ ||' -e '      $p =~ /^enum \{/) {' -e '    $p =~ s!\t*/\*.*?\*/!!sg;' -e '    $p =~ s!\s+\n!\n!sg;' -e '    $p =~ s!\s+$!!;' -e '    $p =~ s!\t!        !g;' -e '    print "$p\n";' -e '    $n++;' -e '  }' -e '}' -e 'BEGIN {' -e '  print "/* -*- c -*- */\n";' -e '}' -e 'END {' -e '  if ($n < 1) {' -e '    warn "WARNING: your pdwtags program is too old\n";' -e '    warn "WARNING: skipping the ../../../src/admin_protocol-struct test\n";' -e '    warn "WARNING: install dwarves-1.3 or newer\n";' -e '    exit 8;' -e '  }' -e '}' < admin_protocol-struct-t1 > admin_protocol-struct-t3; case $? in 8) rm -f admin_protocol-struct-t?; exit 0;; 0) ;; *) exit 1;; esac; diff -u ../../../src/admin_protocol-structs admin_protocol-struct-t3; st=$?; rm -f admin_protocol-struct-t?; exit $st; fi; else echo 'WARNING: you lack pdwtags; skipping the ../../../src/admin_protocol-struct test' >&2; echo 'WARNING: install the dwarves package to get pdwtags' >&2; fi
WARNING: pdwtags appears broken; skipping the ../../../src/virkeepaliveprotocol-struct test
WARNING: pdwtags appears broken; skipping the ../../../src/lock_protocol-struct test
WARNING: pdwtags appears broken; skipping the ../../../src/admin_protocol-struct test
WARNING: pdwtags appears broken; skipping the ../../../src/lxc_monitor_protocol-struct test
"""



More information about the Pkg-libvirt-maintainers mailing list