bb2eb6503acebc7b8994de44598ab93e9e863621
[themes.git] / origdiff
1 #!/bin/sh
2
3 RUN_DIR=$(pwd)
4 cd $(dirname "$0")
5 SCRIPT_DIR=$(pwd)
6
7 if [ -n "$1" ]; then
8   SRC_DATE="$1"
9   DST_DATE=`TZ=America/Los_Angeles date +%Y-%m-%d`
10
11   HG_COMM_DIR=/mnt/mozilla/hg/comm-central
12   COMM_DIR=suite/themes/classic/
13   COMM_LOG=$RUN_DIR/themelog-suitedefault.$SRC_DATE.$DST_DATE.log
14
15   HG_MOZ_DIR=/mnt/mozilla/hg/comm-central/mozilla
16   MOZ_DIR=toolkit/themes/winstripe/
17   MOZ_LOG=$RUN_DIR/themelog-tkwinstripe.$SRC_DATE.$DST_DATE.log
18
19   HG_DOMI_DIR=/mnt/mozilla/hg/comm-central/mozilla/extensions/inspector
20   DOMI_DIR=resources/skin/classic/
21   DOMI_LOG=$RUN_DIR/themelog-domiclassic.$SRC_DATE.$DST_DATE.log
22
23   if [ ! -e $COMM_LOG ]; then
24     echo "Getting $COMM_LOG..."
25     cd $HG_COMM_DIR
26     hg log -d ">$SRC_DATE" $COMM_DIR > $COMM_LOG
27   fi
28   if [ ! -e $MOZ_LOG ]; then
29     echo "Getting $MOZ_LOG..."
30     cd $HG_MOZ_DIR
31     hg log -d ">$SRC_DATE" $MOZ_DIR > $MOZ_LOG
32   fi
33   if [ ! -e $DOMI_LOG ]; then
34     echo "Getting $DOMI_LOG..."
35     cd $HG_DOMI_DIR
36     hg log -d ">$SRC_DATE" $DOMI_DIR > $DOMI_LOG
37   fi
38   cd $RUN_DIR
39 else
40   echo "You must specify a start date."
41   exit 1
42 fi
43
44 for repo in "COMM" "MOZ" "DOMI"; do
45   HG_DIR_VAR="HG_${repo}_DIR"
46   LOG_VAR="${repo}_LOG"
47   HG_URL=`awk -F ' *= *' '/default *=/ { print $2 }' ${!HG_DIR_VAR}/.hg/hgrc`
48   REPO_NAME=`basename $HG_URL`
49   LOG_NAME=${!LOG_VAR}
50   HTML_NAME=${LOG_NAME/.log/.html}
51   echo "Writing $HTML_NAME..."
52   echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">' > $HTML_NAME
53   echo "<html>" >> $HTML_NAME
54   echo "  <head>" >> $HTML_NAME
55   echo "    <title>$REPO_NAME Theme Changes</title>" >> $HTML_NAME
56   echo "  </head>" >> $HTML_NAME
57   echo "  <body>" >> $HTML_NAME
58   echo "  <h1>$REPO_NAME Theme Changes</h1>" >> $HTML_NAME
59   echo "  <h2>$SRC_DATE to $DST_DATE</h2>" >> $HTML_NAME
60   echo "    <pre>" >> $HTML_NAME
61   sed -e "s/&/\&amp;/g" -e "s/</\&lt;/g" -e "s/>/\&gt;/g" \
62       -e "s|\(changeset: *[0-9]*\):\([0-9a-f]*\)|\1:<a href=\"$HG_URL/rev/\2\">\2</a>|" \
63       $LOG_NAME >> $HTML_NAME
64   echo "    </pre>" >> $HTML_NAME
65   echo "  </body>" >> $HTML_NAME
66   echo "</html>" >> $HTML_NAME
67 done
68
69 echo "done."