diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2016-12-19 14:51:48 +0000 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2016-12-19 16:58:57 +0000 |
commit | f39ed7a7a7cc43b0be9cf026fd94eebc0da59191 (patch) | |
tree | 279749f66948c9bb5aa5584336fbea61a79395de | |
parent | 83f9c7600efd098a5c4a5d4b1938f4df8acfd54a (diff) |
absurd/git Do not fail to import certain weird .dscs
A .dsc containing patches which patch files multiple times would be
rejected by dpkg-source due to #848611.
Work around this by arranging for the patch of interest to never be
the first patch, by introducing (and then evaporating) a dummy patch.
Yuk.
Closes:#848391.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
-rwxr-xr-x | absurd/git | 18 | ||||
-rw-r--r-- | debian/changelog | 2 |
2 files changed, 19 insertions, 1 deletions
@@ -79,10 +79,26 @@ fi pwd=`pwd` patch=${patch#$pwd/debian/patches/} rm -f debian/patches/series -printf "%s\n" "$patch" >debian/patches/series + +# Work around #848611. +# We need a stunt filename which the source package must not +# contain. A trick is to use the commit hash of HEAD, whose +# hash value cannot appear in any file in its own tree. +omgwtf="dgit-omg-wtf-$(git rev-parse HEAD)" +cat <<END >debian/patches/$omgwtf +--- +--- a/$omgwtf 2016-10-31 23:28:47.314155919 +0000 ++++ b/$omgwtf 2016-12-18 22:40:01.870058270 +0000 +@@ -0,0 +1 @@ ++: +END +printf "%s\n" "$omgwtf" >debian/patches/series +printf "%s\n" "$patch" >>debian/patches/series dpkg-source --before-build . +rm -f $omgwtf debian/patches/$omgwtf + rm -rf .pc git checkout debian/patches/series git add -Af . diff --git a/debian/changelog b/debian/changelog index cdd7f25..e26c4de 100644 --- a/debian/changelog +++ b/debian/changelog @@ -21,6 +21,8 @@ dgit (2.12~) unstable; urgency=medium Closes:#848512. * Produce better error reporting when absurd git wrapper fails on a patch during .dsc import. Apropos of #848391. + * Do not fail to import a .dsc containing patches which patch files + multiple times, due to #848611. Closes:#848391. Test suite: * Provide and use stunt lintian and debuild, to avoid lintian |