--- /dev/null
+#!/usr/bin/perl -W
+#
+# convert git commit id to a pretty patch we can apply to the stable tree
+#
+# Written in perl because the bash version is broken, it doesn't pass
+# through the patch correctly :(
+#
+
+my $base_id = "";
+my $line;
+my $firstline = "true";
+my $git_id;
+my $header_complete = "false";
+my $tmpfile;
+
+$base_id = shift;
+
+if ($base_id eq "") {
+ print "must provide git id\n";
+ die;
+}
+
+#print "handing commit id $base_id\n";
+
+$tmpfile = `mktemp patch.XXXXX` || die "Failed to run mktemp";
+chomp($tmpfile);
+$from = `git show --pretty=email $base_id | head -n 2 | grep "From: "` || die "Failed to run git";
+
+open FILE, ">$tmpfile" || die "Failed to create $tmpfile";
+open GIT, "git show --pretty=email $base_id |" || die "Failed to run git";
+
+while ($line = <GIT>) {
+ $line =~ s/^Subject: \[PATCH\]/Subject:/;
+# if (($line =~ m/^diff --git/) {
+ print FILE $line;
+# }
+ if ($firstline eq "true") {
+ my @from = split(/ /, $line);
+ $git_id = $from[1];
+ #print "git_id = $git_id\n";
+ $firstline = "false";
+ }
+ if ($header_complete eq "false") {
+ if ($line eq "\n") {
+ print FILE "$from\n";
+ print FILE "commit $git_id upstream.\n\n";
+ $header_complete = "true";
+ }
+ }
+}
+close GIT;
+close FILE;
+
+#print "$tmpfile\n";
+
+system "vim $tmpfile";
+$new_file = `rename-patch $tmpfile`;
+chomp($new_file);
+system "mv $new_file ~/linux/stable/";
+print "moved $new_file to ~/linux/stable/\n"
+
+#TMPFILE1=`mktemp patch.XXXXXX` || exit 1
+#TMPFILE2=`mktemp patch.XXXXXX` || exit 1
+#
+#GIT_ID=`git show $COMMIT_ID | head -n 1 | cut -f 2 -d ' '`
+#FROM=`git show --pretty=email $COMMIT_ID | head -n 2 | grep "From: "`
+#
+#git show --pretty=email $COMMIT_ID > $TMPFILE1
+#
+#HEADER_COMPLETE=false
+#while read line
+#do
+# # Strip out the [PATCH] portion of the subject line, it's annoying.
+# new=`echo "$line" | sed -e 's/^Subject: \[PATCH\]/Subject:/g'`
+#
+# # copy the line out to the new file
+# echo "$new" >> $TMPFILE2
+#
+# # add our special text (author and git id) right before
+# # the changelog text happens.
+# if [ "$line" == "" ] ; then
+# if [ $HEADER_COMPLETE == false ] ; then
+# echo "$FROM" >> $TMPFILE2
+# echo "" >> $TMPFILE2
+# echo "commit $GIT_ID upstream." >> $TMPFILE2
+# echo "" >> $TMPFILE2
+# HEADER_COMPLETE=true
+# fi
+# fi
+#done < $TMPFILE1
+#rm $TMPFILE1
+#vim $TMPFILE2
+#PATCH=`rename-patch $TMPFILE2`
+#mv $PATCH ~/linux/stable/
+#
+#echo "moved $PATCH to ~/linux/stable/"
+#