dpkg-source: -I implicitly used for 3.0 quilt format

Bug #1159942 reported by Jason Abernathy
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
dpkg (Debian)
New
Unknown
dpkg (Ubuntu)
Triaged
Low
Unassigned

Bug Description

When building source packages (format 3.0 - quilt) with the dpkg-source command, the -I seems to be implicitly used when it isn't specified on the command line.

I've attached a small debian package named foo-app which demonstrates this behaviour.

I've added three binary files (named extra/bar, extra/bar.so and extra/bar.a) to foo-app
> tar -xzf foo-app-full.tgz
> cd fooapp-1.0

According to the man page for dpkg-source, unexpected binaries will cause the build to fail, "unless the maintainer deliberately decided to include that modified binary file in the debian tarball (by listing it in debian/source/include-binaries)". The files are listed correctly.

> cat debian/source/include-binaries
extra/bar
extra/bar.so
extra/bar.a

Building the source package without specifying any value for the -I parameter will result in the "extra/bar" file being included in ../fooapp_1.0-1.debian.tar.gz, but not the other two binaries.

> dpkg-source -b .
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: info: building fooapp using existing ./fooapp_1.0.orig.tar.gz
dpkg-source: info: building fooapp in fooapp_1.0-1.debian.tar.gz
dpkg-source: info: building fooapp in fooapp_1.0-1.dsc

> tar -ztf ../fooapp_1.0-1.debian.tar.gz | grep bar
extra/bar

When the source package is built with a dummy value for the -I parameter, all three files are included in ../fooapp_1.0-1.debian.tar.gz.

> dpkg-source -b -I*.dat .
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: info: building fooapp using existing ./fooapp_1.0.orig.tar.gz
dpkg-source: info: building fooapp in fooapp_1.0-1.debian.tar.gz
dpkg-source: info: building fooapp in fooapp_1.0-1.dsc

> tar -ztf ../fooapp_1.0-1.debian.tar.gz | grep bar
extra/bar.so
extra/bar.a
extra/bar

This leads me to believe that -I is being used by default. If this is intentional, then the man page for dpkg-source should be updated so that the requirements for including a binary with the 3.0 quilt format include overriding the -I parameter.

Revision history for this message
Jason Abernathy (j-abernathy) wrote :
Logan Rosen (logan)
Changed in dpkg (Ubuntu):
status: New → Triaged
importance: Undecided → Low
Changed in dpkg (Debian):
status: Unknown → New
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.