Package: debian-policy Severity: important I was recently hit by this bug [1] which stems from inconsistent assumptions that various build tools have about the state of the build tree. I filed [2] to devscripts to suggest a fix.
However, policy wording could be better in this area, and it is especially not helpful for Section 4.14 [3] to effectively give free reign to the maintainer to make arbitrary instructions on how to take the source tree from an unpacked state to a build-ready state. (How does this even work with buildd??? Did you guys solve NLP???) I would suggest policy make explicit definitions for the terms "unpacked" state vs "build-ready" state, and force build tools to detect and reject performing `debian/rules` actions on source trees that are not "build-ready". It just doesn't make sense for this to happen, no good result can come out of it. Or probably better, the build-tool can simply make the source tree build-ready by running `dpkg-source --before-build` or `debian/rules patch` before running other debian/rules actions. (This also requires "patch" to be idempotent.) To keep consistency with how "clean" interacts with 3.0 (quilt) patches and `dpkg-source --before-build`, we would also need to specify that "clean" does not undo "patch". [1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=728097 [2] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=728198 [3] http://www.debian.org/doc/debian-policy/ch-source.html#s-readmesource -- System Information: Debian Release: jessie/sid APT prefers testing APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.10-3-amd64 (SMP w/4 CPU cores) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash -- To UNSUBSCRIBE, email to debian-policy-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20131029124145.24280.27365.reportbug@localhost.localdomain