summaryrefslogtreecommitdiffstats
path: root/debian/ensure-patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/ensure-patch')
-rwxr-xr-xdebian/ensure-patch15
1 files changed, 15 insertions, 0 deletions
diff --git a/debian/ensure-patch b/debian/ensure-patch
new file mode 100755
index 000000000..b8562f2d9
--- /dev/null
+++ b/debian/ensure-patch
@@ -0,0 +1,15 @@
+#!/bin/sh
+set -e
+
+case "$1" in
+"-N") fwd=-N; rev=-R; verb="applied";;
+"-R") fwd=-R; rev=-N; verb="reversed";;
+*) echo >&2 "Usage: $0 <-N|-R> <patch-file>"; exit 2;;
+esac
+
+if patch --dry-run -F0 -f $rev -p1 < "$2" >/dev/null; then
+ echo >&2 "patch already $verb: $2"
+ exit 0
+fi
+patch --dry-run -F0 -f $fwd -p1 < "$2"
+patch -F0 -f $fwd -p1 < "$2"