dtc: Add maintainer script for signing and upload to kernel.org

This patch adds scripts/kup-dtc which builds a tarball from a specified git
tag, signs it and uploads to kernel.org with kup.  This is useful only for
dtc maintainers.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
diff --git a/Makefile b/Makefile
index 03644dd..c35f2f1 100644
--- a/Makefile
+++ b/Makefile
@@ -226,6 +226,7 @@
 	rm -f $(STD_CLEANFILES)
 	rm -f $(VERSION_FILE)
 	rm -f $(BIN)
+	rm -f dtc-*.tar dtc-*.tar.sign dtc-*.tar.asc
 
 #
 # Generic compile rules
diff --git a/scripts/kup-dtc b/scripts/kup-dtc
new file mode 100755
index 0000000..e18abbb
--- /dev/null
+++ b/scripts/kup-dtc
@@ -0,0 +1,31 @@
+#! /bin/sh
+
+REMOTE_GIT=/pub/scm/utils/dtc/dtc.git
+REMOTE_PATH=/pub/software/utils/dtc
+
+set -e
+
+kup_one () {
+    VERSION="$1"
+
+    TAG="v$VERSION"
+
+    PREFIX="dtc-$VERSION/"
+    TAR="dtc-$VERSION.tar"
+    SIG="$TAR.sign"
+
+    git archive --format=tar --prefix="$PREFIX" -o "$TAR" "$TAG"
+    gpg --detach-sign --armor -o "$SIG" "$TAR"
+
+    ls -l "$TAR"*
+
+    # Verify the signature as a sanity check
+    gpg --verify "$SIG" "$TAR"
+
+    kup put --tar --prefix="$PREFIX" "$REMOTE_GIT" "$TAG" "$SIG" "$REMOTE_PATH/$TAR.gz" 
+}
+
+for version; do
+    kup_one $version
+done
+