summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>1998-01-27 21:48:42 +0100
committerWerner Koch <wk@gnupg.org>1998-01-27 21:48:42 +0100
commit129dbca300d3e417734b8366e2ddb90ac3e23afd (patch)
treeb5a8e4447e94d3964addbee9d8bc8e4ab280ea07
parentRewritten (diff)
downloadgnupg2-129dbca300d3e417734b8366e2ddb90ac3e23afd.tar.xz
gnupg2-129dbca300d3e417734b8366e2ddb90ac3e23afd.zip
Utility to make a pacth file
-rwxr-xr-xscripts/mkdiff74
1 files changed, 74 insertions, 0 deletions
diff --git a/scripts/mkdiff b/scripts/mkdiff
new file mode 100755
index 000000000..9db701916
--- /dev/null
+++ b/scripts/mkdiff
@@ -0,0 +1,74 @@
+#!/bin/sh
+
+set -e
+
+curr_ver=$(ls g10-*.tar.gz | sort -r -t '.' -n +0.4 -1 +1 -2 +2 \
+ | head -1 | sed -e 's/g10-\(.*\).tar.gz/\1/' )
+prev_ver=$(ls g10-*.tar.gz | sort -r -t '.' -n +0.4 -1 +1 -2 +2 \
+ | head -2 | tail -1 | sed -e 's/g10-\(.*\).tar.gz/\1/' )
+
+echo "Current is: $curr_ver"
+echo "Previous is: $prev_ver"
+
+echo "Removing old directories"
+[ -d "g10-$curr_ver" ] && rm -rf "g10-$curr_ver"
+[ -d "g10-$prev_ver" ] && rm -rf "g10-$prev_ver"
+
+echo "Unpacking previous and current tar"
+tar xzf "g10-$curr_ver.tar.gz"
+tar xzf "g10-$prev_ver.tar.gz"
+
+echo "Diffing"
+tmp_name="g10-$curr_ver.diff.tmp"
+diff_name="g10-$curr_ver.diff"
+
+diff -urN "g10-$prev_ver/" "g10-$curr_ver/" > $tmp_name || true
+
+echo "Making patch file"
+
+cat <<EOF > $diff_name
+
+This is a patch file against $prev_ver.
+
+Change to directory g10-$prev_ver (or however you renamed it)
+and give this command:
+
+ zcat somepath/g10-$curr_ver.diff.gz | patch -p1
+
+It is a good idea to rename your current directory to g10-$curr_ver now.
+
+
+
+Prereq: $prev_ver
+
+EOF
+
+sed -ne '/^diff.*VERSION/,/^+[0-9][0-9]*/ p' $tmp_name >> $diff_name
+sed -e '/^diff.*VERSION/,/^+[0-9][0-9]*/ d' $tmp_name >> $diff_name
+
+rm $tmp_name
+
+echo "Compressing patch file"
+gzip -9 $diff_name
+
+echo "Checking patch file"
+cd g10-$prev_ver
+zcat ../$diff_name.gz | patch -s -p1
+rm $(find . -name "*.orig")
+cd ..
+
+if ! diff -urN "g10-$prev_ver/" "g10-$curr_ver/" >/dev/null ; then
+ echo "compare failed"
+ exit 1
+fi
+
+
+echo "cleaning up"
+
+rm -rf "g10-$curr_ver"
+rm -rf "g10-$prev_ver"
+
+echo "Patch file $diff_name.gz is good."
+
+
+