On Wed, 10 Jan 2018 21:05:51 -0800 Daniel Schepler <dschep...@gmail.com> wrote: > Source: base-files > Version: 10 > Severity: serious > > From my pbuilder build log: > > ... > debian/rules build > dh build > dh_update_autotools_config > debian/rules override_dh_auto_build > make[1]: Entering directory '/build/base-files-10' > sh debian/check-md5sum-etc profile > sed -e "s&#OSNAME#&"GNU/`uname | sed -e 's/GNU\///'`"&g" > debian/copyright.in > debian/copyright > sed -e "s/#VENDORFILE#/debian/g" debian/postinst.in > debian/postinst > make[1]: Leaving directory '/build/base-files-10' > fakeroot debian/rules binary > dh binary > debian/rules install > make[1]: Entering directory '/build/base-files-10' > install -p -m 644 etc/* /etc > install: cannot remove '/etc/debian_version': Permission denied > install: cannot remove '/etc/host.conf': Permission denied > install: cannot remove '/etc/issue': Permission denied > install: cannot remove '/etc/issue.net': Permission denied > install: cannot remove '/etc/os-release': Permission denied > debian/rules:39: recipe for target 'install' failed > make[1]: *** [install] Error 1 > make[1]: Leaving directory '/build/base-files-10' > debian/rules:14: recipe for target 'binary' failed > make: *** [binary] Error 2 > dpkg-buildpackage: error: fakeroot debian/rules binary subprocess > returned exit status 2 > -- > Daniel Schepler > >
Hi, This seems like a legitimate bug. What happens is that debhelper notices that base-files explicitly defines an install target and recurses into that (dh, unlike policy, also defines an "install(-arch|-indep)" sequences as a part of the "binary" target). However, being a "sequence" target, dh does not define "DESTDIR" for that call (it assumes the install target will eventually trigger the upstream build system plus run dh_install*). This case would only trigger if you do a "debian/rules binary". So this would probably build fine as a source-only or source + all upload (as dh concludes it should only care about the "install-indep" sequence in the arch:all build and "install-arch" on the rest of the builds). The simple solution is probably to just rename the "install" target to something other than "install", "install-arch" and "install-indep". Thanks, ~Niels