[Python-apps-team] Bug#807021: mercurial: FTBFS when built with dpkg-buildpackage -A (No such file or directory)

Santiago Vila sanvila at debian.org
Fri Dec 4 10:19:54 UTC 2015


Package: src:mercurial
Version: 3.6.1-1
User: sanvila at debian.org
Usertags: binary-indep
Severity: important

Dear maintainer:

I tried to build this package with "dpkg-buildpackage -A"
(i.e. only architecture-independent packages), and it failed:

--------------------------------------------------------------------------------
[...]
 debian/rules build-indep
dh build-indep --with python2,bash-completion
   dh_testdir -i
   dh_auto_configure -i
   debian/rules override_dh_auto_build
make[1]: Entering directory '/<<PKGBUILDDIR>>'
/usr/bin/make all
make[2]: Entering directory '/<<PKGBUILDDIR>>'
python setup.py  build 
running build
running build_mo
creating mercurial/locale

[... snipped ...]

fi
if test -d /<<PKGBUILDDIR>>/debian/mercurial-common ; then \
	/usr/bin/make -f debian/rules install-archindep ;\
fi
make[2]: Entering directory '/<<PKGBUILDDIR>>'
# Move templates and help installed by setup.py to their FHS-correct location
mv /<<PKGBUILDDIR>>/debian/mercurial-common/usr/lib/python2.7/dist-packages/mercurial/templates \
   /<<PKGBUILDDIR>>/debian/mercurial-common/usr/lib/python2.7/dist-packages/mercurial/help \
   /<<PKGBUILDDIR>>/debian/mercurial-common/usr/share/mercurial
mv /<<PKGBUILDDIR>>/debian/mercurial-common/usr/lib/python2.7/dist-packages/mercurial/locale \
   /<<PKGBUILDDIR>>/debian/mercurial-common/usr/share
# If more than one Python version is supported, clean up the templates
# and help installed for the other versions
rm -rf /<<PKGBUILDDIR>>/debian/mercurial-common/usr/lib/python*/dist-packages/mercurial/templates \
        /<<PKGBUILDDIR>>/debian/mercurial-common/usr/lib/python*/dist-packages/mercurial/help \
        /<<PKGBUILDDIR>>/debian/mercurial-common/usr/lib/python*/dist-packages/mercurial/locale \
# excanvas.js is provided by libjs-excanvas
rm /<<PKGBUILDDIR>>/debian/mercurial-common/usr/share/mercurial/templates/static/excanvas.js
# remove arch-dependent python stuff
find debian/mercurial-common/usr/lib \
	-name '*.so' ! -type d -delete , \
	-type d -empty -delete
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_installdocs -i
   dh_installchangelogs -i
   dh_installexamples -i
   dh_installman -i
   dh_bash-completion -i
   debian/rules override_dh_python2
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_python2
I: dh_python2 tools:100: replacing shebang in debian/mercurial-common/usr/bin/hg-ssh
find debian/mercurial/usr/share -type d -empty -delete
find: `debian/mercurial/usr/share': No such file or directory
debian/rules:87: recipe for target 'override_dh_python2' failed
make[1]: *** [override_dh_python2] Error 1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
debian/rules:8: recipe for target 'binary-indep' failed
make: *** [binary-indep] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary-indep gave error exit status 2
--------------------------------------------------------------------------------

Sorry not to have a fix, as I am reporting many bugs similar to
this one. The common hints are:

* If the only architecture-independent packages are dummy transitional
ones and they were released with jessie, the easy fix is to drop them
now.

* When using "dh", it is allowed to use (independently)
optional targets override_dh_foo-arch and override_dh_foo-indep
(for several values of "foo").


Once that both "dpkg-buildpackage -A" and "dpkg-buildpackage -B" work
properly, the package would be suitable to be uploaded in source-only
form if you wish.

Thanks.



More information about the Python-apps-team mailing list