[Debian-med-packaging] Bug#816988: seqan: FTBFS when built with dpkg-buildpackage -A (No such file or directory)

Santiago Vila sanvila at debian.org
Sun Mar 6 23:27:26 UTC 2016


Package: src:seqan
Version: 1.4.1+dfsg-2
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
   dh_testdir -i
   dh_update_autotools_config -i
   dh_auto_configure -i
	mkdir -p obj-x86_64-linux-gnu
	cd obj-x86_64-linux-gnu
	cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var
-- The C compiler identification is GNU 5.3.1
-- The CXX compiler identification is GNU 5.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works

[... snipped ...]

	cp --reflink=auto -a ./docs/main.py debian/seqan-dev/usr/share/doc/seqan-dev/html/
	cp --reflink=auto -a ./docs/main_tex.py debian/seqan-dev/usr/share/doc/seqan-dev/html/
	cp --reflink=auto -a ./docs/make.bat debian/seqan-dev/usr/share/doc/seqan-dev/html/
	cp --reflink=auto -a ./docs/make.sh debian/seqan-dev/usr/share/doc/seqan-dev/html/
	cp --reflink=auto -a ./docs/make2.bat debian/seqan-dev/usr/share/doc/seqan-dev/html/
	cp --reflink=auto -a ./docs/old_pages debian/seqan-dev/usr/share/doc/seqan-dev/html/
	cp --reflink=auto -a ./docs/pages debian/seqan-dev/usr/share/doc/seqan-dev/html/
	cp --reflink=auto -a ./docs/seqan_logo.gif debian/seqan-dev/usr/share/doc/seqan-dev/html/
	cp --reflink=auto -a ./docs/test_dddoc.py debian/seqan-dev/usr/share/doc/seqan-dev/html/
	install -d debian/seqan-dev/usr/include
	cp --reflink=auto -a ./core/include/seqan debian/seqan-dev/usr/include/
# /usr/bin/join is part of coreutils package: Avoid name conflict by renaming it to seqan-join
# This solution is withdrawn in favour of just providing a set of binaries according to upstream
# in /usr/bin (via symlink) while others go to /usr/lib/seqan/bin (see README.Debian)
# mv /<<BUILDDIR>>/seqan-1.4.1+dfsg/debian/seqan-apps/usr/bin/join /<<BUILDDIR>>/seqan-1.4.1+dfsg/debian/seqan-apps/usr/bin/seqan-join
#
# Formerly binaries were installed into usr/lib/seqan/bin/
# and only some of them were made available in /usr/bin via dh_link
# Since there is no obvious reason for this neither is there any
# documentation that explains the motivation this is commented here.
#for APP in `find /<<BUILDDIR>>/seqan-1.4.1+dfsg/obj*/apps -mindepth 1 -maxdepth 1 -executable -type f` ; do \
#  cp -a $APP /<<BUILDDIR>>/seqan-1.4.1+dfsg/debian/seqan-apps/usr/lib/seqan/bin/ ; done
# ------------------------------------------------------------------
# Formerly readmes were named README.app.  It seems more consistent
# to keep upstream documentation layout which in addition contains
# some example files.  So the old code is commented here.
#for APP in `find apps -name README` ; do \
#  app=`echo $APP | sed 's?.*apps/\(.\+\)/README?\1?'` ; \
#  echo $app ; \
#  cp -a $APP /<<BUILDDIR>>/seqan-1.4.1+dfsg/debian/seqan-apps/usr/share/doc/seqan-apps/README.$app ; \
#done
# ------------------------------------------------------------------
# Delete additional LICENSE files
find /<<BUILDDIR>>/seqan-1.4.1+dfsg/debian/seqan-apps -type f -name LICENSE -delete
find: '/<<BUILDDIR>>/seqan-1.4.1+dfsg/debian/seqan-apps': No such file or directory
debian/rules:26: recipe for target 'override_dh_install' failed
make[1]: *** [override_dh_install] Error 1
make[1]: Leaving directory '/<<BUILDDIR>>/seqan-1.4.1+dfsg'
debian/rules:19: 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 Debian-med-packaging mailing list