--- /dev/null
+#!/bin/sh
+
+# Arguments are REPOS, REV, DOXYFILE, OUTPUT_DIR, in that order. DOXYFILE is
+# the path inside the repository (no leading /).
+
+REPOS="$1"
+REV="$2"
+DOXYFILE="$3"
+OUTPUT_DIR="$4"
+
+TMPDIR=/tmp/doxygen
+EMPTYFILE=$TMPDIR/empty
+
+svn checkout file://$REPOS $TMPDIR
+echo > $EMPTYFILE
+
+cd "`dirname "$TMPDIR/$DOXYFILE"`"
+
+echo -e \
+"CASE_SENSE_NAMES=YES\nOUTPUT_DIRECTORY=$OUTPUT_DIR\nHTML_HEADER=$EMPTYFILE\nHTML_FOOTER=$EMPTYFILE\nPROJECT_NUMBER=r$REV" \
+| cat `basename "$DOXYFILE"` - | doxygen -