From f39ed7a7a7cc43b0be9cf026fd94eebc0da59191 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Mon, 19 Dec 2016 14:51:48 +0000 Subject: 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 --- absurd/git | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'absurd') diff --git a/absurd/git b/absurd/git index 8300b0b..7d3ff94 100755 --- a/absurd/git +++ b/absurd/git @@ -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 <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 . -- cgit v1.2.3