init
[nethome.git] / bin / changelogget
diff --git a/bin/changelogget b/bin/changelogget
new file mode 100755 (executable)
index 0000000..a80ad7e
--- /dev/null
@@ -0,0 +1,27 @@
+#! /bin/sh
+# $Id$
+
+v=true
+if [ "$1" = "-n" ];then
+       v=false
+       shift
+fi
+for arg in "$@";do
+       # http://sourceware.org/ml/gdb-cvs/2099-99/msg99999.html
+       if [ "$arg" != "${arg#http://sourceware.org/ml/}" -a "$arg" != "${arg%.html}" ];then
+               echo >&2 -n '*'
+               echo "$arg"
+               echo
+               changelogget -n $(wget -q -O - "$arg" | sed -n -e 's/&amp;/\&/g' -e 's#^<a \+href="\(.*\)">\1</a>$#\1#p')
+       elif [ "$arg" != "${arg#http://sourceware.org/cgi-bin/cvsweb.cgi/src/}" ];then
+               echo >&2 -n '.'
+               # --- src/gdb/ChangeLog   2008/04/24 08:46:17     1.9308
+               wget -q -O - "$arg" | diffdecvs | perl -p -e 's{^(?:---|\Q+++\E)(?= \S+/ChangeLog\t)}{###}'
+       else
+               echo >&2 "Invalid URL: $arg"
+               exit 1
+       fi
+done
+if $v;then
+       echo >&2 OK
+fi